summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorelijahe <elijahe@ca.ibm.com>2014-04-15 17:16:20 -0400
committerelijahe <elijahe@ca.ibm.com>2014-04-15 17:16:20 -0400
commitc4795584609136b92d545fa4a43df980e10594f9 (patch)
tree5a32669e7024a23b93d285eb3f75fc0e6a9ecf16
parente5f2fa59062f8ae6d37a1d7b55b6f2bf8edc56e0 (diff)
downloadorg.eclipse.orion.client-origin/bug419022.zip
org.eclipse.orion.client-origin/bug419022.tar.gz
org.eclipse.orion.client-origin/bug419022.tar.bz2
Bug 419022 - "Create Readme" should only be shown if the project does not have one.origin/bug419022
-rw-r--r--bundles/org.eclipse.orion.client.ui/web/orion/projectCommands.js30
1 files changed, 17 insertions, 13 deletions
diff --git a/bundles/org.eclipse.orion.client.ui/web/orion/projectCommands.js b/bundles/org.eclipse.orion.client.ui/web/orion/projectCommands.js
index 5c7f732..879eb51 100644
--- a/bundles/org.eclipse.orion.client.ui/web/orion/projectCommands.js
+++ b/bundles/org.eclipse.orion.client.ui/web/orion/projectCommands.js
@@ -968,40 +968,44 @@ define(['require', 'i18n!orion/navigate/nls/messages', 'orion/webui/littlelib',
allContributedCommandsDeferreds.push(createInitProjectCommand(dependencyType));
}
+ var readmeFilename = "README.md"; //$NON-NLS-0$
var addReadmeCommand = new mCommands.Command({
- name: "Readme File",
- tooltip: "Create a README.md file in this project",
- id: "orion.project.create.readme",
+ name: "Readme File", //$NON-NLS-0$
+ tooltip: "Create a README.md file in this project", //$NON-NLS-0$
+ id: "orion.project.create.readme", //$NON-NLS-0$
callback: function(data){
var item = forceSingleItem(data.items);
- progress.progress(fileClient.createFile(item.Project.ContentLocation, "README.md"), "Creating README.md").then(function(readmeMeta){
+ progress.progress(fileClient.createFile(item.Project.ContentLocation, readmeFilename), i18nUtil.formatMessage("Creating ${0}", readmeFilename)).then(function(readmeMeta){ //$NON-NLS-0$
function dispatch() {
var dispatcher = FileCommands.getModelEventDispatcher();
- dispatcher.dispatchEvent({ type: "create", parent: item, newValue: readmeMeta });
+ dispatcher.dispatchEvent({ type: "create", parent: item.Project.fileMetadata, newValue: readmeMeta }); //$NON-NLS-0$
}
if(item.Project){
- progress.progress(fileClient.write(readmeMeta.Location, "# " + item.Project.Name), "Writing sample readme").then(function(){
+ progress.progress(fileClient.write(readmeMeta.Location, "# " + item.Project.Name), "Writing sample readme").then(function(){ //$NON-NLS-1$ //$NON-NLS-0$
dispatch();
});
} else {
dispatch();
}
- });
+ }, errorHandler);
},
visibleWhen: function(item) {
if (!explorer || !explorer.isCommandsVisible()) {
return false;
}
item = forceSingleItem(item);
- if(!item.Project || !item.Project.children || !item.Project.ContentLocation){
+ if(!item.Project || !item.Project.fileMetadata || !item.Project.fileMetadata.children || !item.Project.ContentLocation){
return false;
}
- for(var i=0; i<item.Project.children.length; i++){
- if(item.Project.children[i].Name && item.Project.children[i].Name.toLowerCase() === "readme.md"){
- return false;
+ var children = item.Project.fileMetadata.children;
+ var hasReadMe = children.some(function(child){
+ if(child.Name && (child.Name.toLowerCase() === readmeFilename.toLowerCase()) ){
+ return true;
}
- }
- return true;
+ return false;
+ });
+
+ return !hasReadMe;
}
});