diff --git a/editor/js/comms.js b/editor/js/comms.js index 8af17ced6..126264d06 100644 --- a/editor/js/comms.js +++ b/editor/js/comms.js @@ -81,7 +81,7 @@ RED.comms = (function() { }; ws.onclose = function() { if (errornotification == null) { - errornotification = RED.notify("Error: Lost connection to server","error",true); + errornotification = RED.notify(RED._("notification.lostConnectionError"),"error",true); } else if (clearErrorTimer) { clearTimeout(clearErrorTimer); clearErrorTimer = null; diff --git a/editor/js/nodes.js b/editor/js/nodes.js index 27f7d0fe8..afa24b6aa 100644 --- a/editor/js/nodes.js +++ b/editor/js/nodes.js @@ -118,7 +118,7 @@ RED.nodes = (function() { }, removeNodeType: function(nt) { if (nt.substring(0,8) != "subflow:") { - throw new Error("this api is subflow only. called with:",nt); + throw new Error(RED._("error.apiSubflowOnly"),nt); } delete nodeDefinitions[nt]; RED.palette.remove(nt); @@ -543,7 +543,7 @@ RED.nodes = (function() { try { newNodes = JSON.parse(newNodesObj); } catch(err) { - var e = new Error("Invalid flow: "+err.message); + var e = new Error(RED._("error.invalidFlow")+err.message); e.code = "NODE_RED"; throw e; } @@ -571,7 +571,7 @@ RED.nodes = (function() { if (unknownTypes.length > 0) { var typeList = ""; var type = "type"+(unknownTypes.length > 1?"s":""); - RED.notify("Imported unrecognised "+type+":"+typeList,"error",false,10000); + RED.notify(""+RED._("notification.importUnrecognised")+type+":"+typeList,"error",false,10000); //"DO NOT DEPLOY while in this state.
Either, add missing types to Node-RED, restart and then reload page,
or delete unknown "+n.name+", rewire as required, and then deploy.","error"); } @@ -584,10 +584,10 @@ RED.nodes = (function() { var subflowId = m[1]; var err; if (subflowId === activeSubflow.id) { - err = new Error("Cannot add subflow to itself"); + err = new Error(RED._("error.cannotAddSubflowToItself")); } if (subflowContains(m[1],activeSubflow.id)) { - err = new Error("Cannot add subflow - circular reference detected"); + err = new Error(RED._("error.cannotAddCircularReference")); } if (err) { // TODO: standardise error codes diff --git a/editor/js/user.js b/editor/js/user.js index d105ce190..298594a84 100644 --- a/editor/js/user.js +++ b/editor/js/user.js @@ -72,9 +72,9 @@ RED.user = (function() { } row.appendTo("#node-dialog-login-fields"); } - $('
Login failed'+ - (opts.cancelable?'Cancel':'')+ - '
').appendTo("#node-dialog-login-fields"); + $('
'+RED._("dialog.loginFailed")+''+ + (opts.cancelable?''+RED._("dialog.cancel")+'':'')+ + '
').appendTo("#node-dialog-login-fields"); $("#node-dialog-login-submit").button(); @@ -137,11 +137,11 @@ RED.user = (function() { if (RED.settings.user.anonymous) { RED.menu.addItem("btn-usermenu",{ id:"usermenu-item-login", - label:"Login", + label:RED._("menu.label.login"), onselect: function() { RED.user.login({cancelable:true},function() { RED.settings.load(function() { - RED.notify("Logged in as "+RED.settings.user.username,"success"); + RED.notify(RED._("notification.loggedInAs")+RED.settings.user.username,"success"); updateUserMenu(); }); }); @@ -154,7 +154,7 @@ RED.user = (function() { }); RED.menu.addItem("btn-usermenu",{ id:"usermenu-item-logout", - label:"Logout", + label:RED._("menu.label.logout"), onselect: function() { RED.user.logout(); } diff --git a/locales/en-US/editor.json b/locales/en-US/editor.json index 775c5e706..1ac40030b 100644 --- a/locales/en-US/editor.json +++ b/locales/en-US/editor.json @@ -20,7 +20,9 @@ "add": "Add", "rename": "Rename", "delete": "Delete", - "keyboardShortcuts": "Keyboard Shortcuts" + "keyboardShortcuts": "Keyboard Shortcuts", + "login": "Login", + "logout": "Logout" } }, "notification": { @@ -31,6 +33,20 @@ "nodeEnabled": "Node enabled:", "nodeEnabled_plural": "Nodes enabled:", "nodeDisabled": "Node disabled:", - "nodeDisabled_plural": "Nodes disabled:" + "nodeDisabled_plural": "Nodes disabled:", + "lostConnectionError": "Error: Lost connection to server", + "importUnrecognised": "Imported unrecognised ", + "loggedInAs": "Logged in as " + }, + "error": { + "apiSubflowOnly": "this api is subflow only. called with:", + "invalidFlow": "Invalid flow: ", + "cannotAddSubflowToItself": "Cannot add subflow to itself", + "cannotAddCircularReference": "Cannot add subflow - circular reference detected" + }, + "dialog": { + "cancel": "Cancel", + "login": "Login", + "loginFailed": "Login failed" } }