diff --git a/controllers/scriptStorage.js b/controllers/scriptStorage.js index 0c6cebd09..2044be3ee 100644 --- a/controllers/scriptStorage.js +++ b/controllers/scriptStorage.js @@ -74,6 +74,8 @@ exports.sendScript = function (aReq, aRes, aNext) { // Update the install count ++aScript.installs; + ++aScript.installsSinceUpdate; + aScript.save(function (aErr, aScript) { }); }); }; @@ -298,6 +300,7 @@ exports.storeScript = function (aUser, aMeta, aBuf, aCallback, aUpdate) { if (aRemoved || (!aScript && (aUpdate || collaborators))) { return aCallback(null); } else if (!aScript) { + // New script aScript = new Script({ name: isLibrary ? aMeta : aMeta.name, author: aUser.name, @@ -315,6 +318,7 @@ exports.storeScript = function (aUser, aMeta, aBuf, aCallback, aUpdate) { _authorId: aUser._id }); } else { + // Script already exists. if (!aScript.isLib) { if (collaborators && (aScript.meta.oujs && aScript.meta.oujs.author != aMeta.oujs.author || (aScript.meta.oujs && JSON.stringify(aScript.meta.oujs.collaborator) != @@ -325,6 +329,7 @@ exports.storeScript = function (aUser, aMeta, aBuf, aCallback, aUpdate) { aScript.uses = libraries; } aScript.updated = new Date(); + aScript.installsSinceUpdate = 0; } aScript.save(function (aErr, aScript) { diff --git a/models/script.js b/models/script.js index d1ad8c3b7..afc988c3a 100644 --- a/models/script.js +++ b/models/script.js @@ -7,7 +7,8 @@ var scriptSchema = new Schema({ // Visible name: String, author: String, - installs: Number, + installs: { type: Number, default: 0 }, + installsSinceUpdate: { type: Number, default: 0 }, rating: Number, about: String, updated: Date, diff --git a/views/includes/scriptAuthorToolsPanel.html b/views/includes/scriptAuthorToolsPanel.html index 41dd52444..aff27e67c 100644 --- a/views/includes/scriptAuthorToolsPanel.html +++ b/views/includes/scriptAuthorToolsPanel.html @@ -8,6 +8,12 @@
  • Edit Script Info
  • Edit Script
  • + +
    + +

    Installs per Version since

    + +

    {{script.meta.version}}{{^script.meta.version}}Current{{/script.meta.version}} {{script.installsSinceUpdate}} installs