diff --git a/app/assets/javascripts/app/frontend/controllers/editor.js b/app/assets/javascripts/app/frontend/controllers/editor.js index 43fa67afb..c0c8e2909 100644 --- a/app/assets/javascripts/app/frontend/controllers/editor.js +++ b/app/assets/javascripts/app/frontend/controllers/editor.js @@ -236,8 +236,10 @@ angular.module('app.frontend') } this.deleteNote = function() { - this.remove()(this.note); - this.showMenu = false; + if(confirm("Are you sure you want to delete this note?")) { + this.remove()(this.note); + this.showMenu = false; + } } this.clickedEditNote = function() { diff --git a/app/assets/javascripts/app/frontend/models/app/extension.js b/app/assets/javascripts/app/frontend/models/app/extension.js index acd42b4e2..d6a46aad2 100644 --- a/app/assets/javascripts/app/frontend/models/app/extension.js +++ b/app/assets/javascripts/app/frontend/models/app/extension.js @@ -1,18 +1,20 @@ class Action { constructor(json) { - _.merge(this, json); - this.running = false; // in case running=true was synced with server since model is uploaded nondiscriminatory - this.error = false; - if(this.lastExecuted) { - // is string - this.lastExecuted = new Date(this.lastExecuted); - } + _.merge(this, json); + this.running = false; // in case running=true was synced with server since model is uploaded nondiscriminatory + this.error = false; + if(this.lastExecuted) { + // is string + this.lastExecuted = new Date(this.lastExecuted); + } } - get permissionsString() { + permissionsString() { + console.log("permissions", this.permissions); if(!this.permissions) { return ""; } + var permission = this.permissions.charAt(0).toUpperCase() + this.permissions.slice(1); // capitalize first letter permission += ": "; for(var contentType of this.content_types) { @@ -28,7 +30,7 @@ class Action { return permission; } - get encryptionModeString() { + encryptionModeString() { if(this.verb != "post") { return null; } @@ -54,6 +56,12 @@ class Extension extends Item { this.encrypted = true; this.content_type = "Extension"; + + if(json.actions) { + this.actions = json.actions.map(function(action){ + return new Action(action); + }) + } } actionsInGlobalContext() { diff --git a/app/assets/javascripts/app/services/authManager.js b/app/assets/javascripts/app/services/authManager.js index f0976e1ee..cd936b929 100644 --- a/app/assets/javascripts/app/services/authManager.js +++ b/app/assets/javascripts/app/services/authManager.js @@ -39,8 +39,8 @@ angular.module('app.frontend') callback(response.plain()); }) .catch(function(response){ - console.log("Error getting current user", response); - callback(response.data); + console.log("Error getting auth params", response); + callback(null); }) } @@ -59,7 +59,7 @@ angular.module('app.frontend') this.login = function(url, email, password, callback) { this.getAuthParamsForEmail(url, email, function(authParams){ if(!authParams) { - callback({error: "Unable to get authentication parameters."}); + callback({error : {message: "Unable to get authentication parameters."}}); return; } @@ -72,6 +72,8 @@ angular.module('app.frontend') return; } + console.log("compute encryption keys", password, authParams); + Neeto.crypto.computeEncryptionKeysForUser(_.merge({password: password}, authParams), function(keys){ var mk = keys.mk; var requestUrl = url + "/auth/sign_in"; @@ -112,7 +114,7 @@ angular.module('app.frontend') }.bind(this)) .catch(function(response){ console.log("Registration error", response); - callback(response.data); + callback(null); }) }.bind(this)); } diff --git a/app/assets/javascripts/app/services/dbManager.js b/app/assets/javascripts/app/services/dbManager.js index 5c33bc5de..d7e3edabb 100644 --- a/app/assets/javascripts/app/services/dbManager.js +++ b/app/assets/javascripts/app/services/dbManager.js @@ -103,7 +103,9 @@ class DBManager { var request = db.transaction("items", "readwrite").objectStore("items").delete(item.uuid); request.onsuccess = function(event) { console.log("Successfully deleted item", item.uuid); - callback(true); + if(callback) { + callback(true); + } }; }, null) } diff --git a/app/assets/javascripts/app/services/syncManager.js b/app/assets/javascripts/app/services/syncManager.js index fadb6977e..66344b15a 100644 --- a/app/assets/javascripts/app/services/syncManager.js +++ b/app/assets/javascripts/app/services/syncManager.js @@ -10,7 +10,7 @@ class SyncManager { } get serverURL() { - return localStorage.getItem("server") || "http://localhost:3000"; + return localStorage.getItem("server") || "https://n3.standardnotes.org"; } get masterKey() { diff --git a/app/assets/stylesheets/app/_notes.scss b/app/assets/stylesheets/app/_notes.scss index 6cb3adcce..d71413110 100644 --- a/app/assets/stylesheets/app/_notes.scss +++ b/app/assets/stylesheets/app/_notes.scss @@ -41,12 +41,11 @@ .note { width: 100%; - // max-width: 100%; padding: 15px; - // height: 70px; border-bottom: 1px solid $bg-color; cursor: pointer; background-color: white; + > .name { font-weight: 600; overflow: hidden; diff --git a/app/assets/templates/frontend/directives/global-extensions-menu.html.haml b/app/assets/templates/frontend/directives/global-extensions-menu.html.haml index 2c33eac60..2dd5df9d1 100644 --- a/app/assets/templates/frontend/directives/global-extensions-menu.html.haml +++ b/app/assets/templates/frontend/directives/global-extensions-menu.html.haml @@ -25,8 +25,8 @@ %div %a{"ng-click" => "action.showPermissions = !action.showPermissions"} {{action.showPermissions ? "Hide permissions" : "Show permissions"}} %div{"ng-if" => "action.showPermissions"} - {{action.permissionsString}} - %label.block.normal {{action.encryptionModeString}} + {{action.permissionsString()}} + %label.block.normal {{action.encryptionModeString()}} %div .mt-5{"ng-if" => "action.repeat_mode"} diff --git a/app/assets/templates/frontend/home.html.haml b/app/assets/templates/frontend/home.html.haml index f2f40d0bf..f7057c955 100644 --- a/app/assets/templates/frontend/home.html.haml +++ b/app/assets/templates/frontend/home.html.haml @@ -8,4 +8,5 @@ "tag" => "selectedTag", "remove" => "deleteNote"} %editor-section{"ng-if" => "selectedNote", "note" => "selectedNote", "remove" => "deleteNote", "save" => "saveNote", "update-tags" => "updateTagsForNote"} - %header{"user" => "defaultUser"} + + %header