From 100ab5643ad2f8ae780fb67d0430f48052b94a26 Mon Sep 17 00:00:00 2001 From: perploug Date: Wed, 16 Oct 2013 20:37:12 +0200 Subject: [PATCH 1/8] Localizing cotnent and media editors main grid --- .../editors/umbcontentname.directive.js | 10 ++++-- .../common/directives/localize.directive.js | 31 +++++++------------ .../common/services/localization.service.js | 12 +++++-- .../src/views/common/dashboard.controller.js | 8 +++-- .../src/views/common/dialogs/user.html | 4 ++- .../src/views/content/edit.html | 2 +- .../src/views/directives/umb-navigation.html | 5 +-- .../src/views/directives/umb-sections.html | 2 +- .../src/views/media/edit.html | 8 +++-- .../contentpicker/contentpicker.html | 2 +- .../listview/listview.controller.js | 2 +- .../propertyeditors/listview/listview.html | 31 +++++++++++++------ .../memberpicker/memberpicker.html | 2 +- .../templatepicker/templatepicker.html | 1 - src/Umbraco.Web.UI/umbraco/config/lang/en.xml | 28 +++++++++++++++-- .../umbraco/config/lang/en_us.xml | 22 ++++++++++++- src/Umbraco.Web/Umbraco.Web.csproj | 4 ++- .../umbraco/js/language.aspx.cs | 14 +++++---- 18 files changed, 130 insertions(+), 58 deletions(-) diff --git a/src/Umbraco.Web.UI.Client/src/common/directives/editors/umbcontentname.directive.js b/src/Umbraco.Web.UI.Client/src/common/directives/editors/umbcontentname.directive.js index 9f9d0b521f..59392de6b9 100644 --- a/src/Umbraco.Web.UI.Client/src/common/directives/editors/umbcontentname.directive.js +++ b/src/Umbraco.Web.UI.Client/src/common/directives/editors/umbcontentname.directive.js @@ -7,7 +7,7 @@ * Used by editors that require naming an entity. Shows a textbox/headline with a required validator within it's own form. **/ angular.module("umbraco.directives") - .directive('umbContentName', function ($timeout) { + .directive('umbContentName', function ($timeout, localizationService) { return { require: "ngModel", restrict: 'E', @@ -19,7 +19,13 @@ angular.module("umbraco.directives") }, link: function(scope, element, attrs, ngModel) { - var inputElement = element.find("input"); + var inputElement = element.find("input"); + if(scope.placeholder && scope.placeholder[0] === "@"){ + localizationService.localize(scope.placeholder.substring(1)) + .then(function(value){ + scope.placeholder = value; + }); + } ngModel.$render = function(){ $timeout(function(){ diff --git a/src/Umbraco.Web.UI.Client/src/common/directives/localize.directive.js b/src/Umbraco.Web.UI.Client/src/common/directives/localize.directive.js index 578258a13b..113f24ad5f 100644 --- a/src/Umbraco.Web.UI.Client/src/common/directives/localize.directive.js +++ b/src/Umbraco.Web.UI.Client/src/common/directives/localize.directive.js @@ -8,8 +8,9 @@ angular.module("umbraco.directives") replace: true, link: function (scope, element, attrs) { var key = scope.key; - var value = localizationService.localize(key); - element.html(value); + localizationService.localize(key).then(function(value){ + element.html(value); + }); } }; }) @@ -19,26 +20,18 @@ angular.module("umbraco.directives") link: function (scope, element, attrs) { var keys = attrs.localize.split(','); - for (var i = keys.length - 1; i >= 0; i--) { - var attr = element.attr(keys[i]); - + angular.forEach(keys, function(value, key){ + var attr = element.attr(value); if(attr){ - var localizer = attr.split(':'); - var tokens; - var key = localizer[0]; - - if(localizer.length > 0){ - tokens = localizer[1].split(','); - for (var x = 0; x < tokens.length; x++) { - tokens[x] = scope.$eval(tokens[x]); - } - } - - if(key[0] === '@'){ - element.attr(keys[i], localizationService.localize(key.substring(1), tokens)); + if(attr[0] === '@'){ + var t = localizationService.tokenize(attr.substring(1), scope); + localizationService.localize(t.key, t.tokens).then(function(val){ + element.attr(value, val); + }); } } - } + }); + } }; }); \ No newline at end of file diff --git a/src/Umbraco.Web.UI.Client/src/common/services/localization.service.js b/src/Umbraco.Web.UI.Client/src/common/services/localization.service.js index 4f09611ef5..886a8b8488 100644 --- a/src/Umbraco.Web.UI.Client/src/common/services/localization.service.js +++ b/src/Umbraco.Web.UI.Client/src/common/services/localization.service.js @@ -52,7 +52,7 @@ angular.module('umbraco.services') if(value){ var localizer = value.split(':'); var retval = {tokens: undefined, key: localizer[0].substring(0)}; - if(localizer.length > 0){ + if(localizer.length > 1){ retval.tokens = localizer[1].split(','); for (var x = 0; x < retval.tokens.length; x++) { retval.tokens[x] = scope.$eval(retval.tokens[x]); @@ -65,13 +65,19 @@ angular.module('umbraco.services') // checks the dictionary for a localized resource string localize: function(value,tokens) { + var deferred = $q.defer(); + if(service.resourceFileLoaded){ - return service._lookup(value,tokens); + var val = service._lookup(value,tokens); + deferred.resolve(val); }else{ service.initLocalizedResources().then(function(dic){ - return service._lookup(value,tokens); + var val = service._lookup(value,tokens); + deferred.resolve(val); }); } + + return deferred.promise; }, _lookup: function(value,tokens){ var entry = service.dictionary[value]; diff --git a/src/Umbraco.Web.UI.Client/src/views/common/dashboard.controller.js b/src/Umbraco.Web.UI.Client/src/views/common/dashboard.controller.js index b3de721ec8..64dba7ffd5 100644 --- a/src/Umbraco.Web.UI.Client/src/views/common/dashboard.controller.js +++ b/src/Umbraco.Web.UI.Client/src/views/common/dashboard.controller.js @@ -8,9 +8,11 @@ * */ -function DashboardController($scope, $routeParams, dashboardResource) { +function DashboardController($scope, $routeParams, dashboardResource, localizationService) { $scope.dashboard = {}; - $scope.dashboard.name = $routeParams.section; + localizationService.localize("sections_" + $routeParams.section).then(function(name){ + $scope.dashboard.name = name; + }); dashboardResource.getDashboard($scope.dashboard.name).then(function(tabs){ $scope.dashboard.tabs = tabs; @@ -19,4 +21,4 @@ function DashboardController($scope, $routeParams, dashboardResource) { //register it -angular.module('umbraco').controller("Umbraco.DashboardController", DashboardController); +angular.module('umbraco').controller("Umbraco.DashboardController", DashboardController); \ No newline at end of file diff --git a/src/Umbraco.Web.UI.Client/src/views/common/dialogs/user.html b/src/Umbraco.Web.UI.Client/src/views/common/dialogs/user.html index 41b0fd5306..897215592c 100644 --- a/src/Umbraco.Web.UI.Client/src/views/common/dialogs/user.html +++ b/src/Umbraco.Web.UI.Client/src/views/common/dialogs/user.html @@ -2,7 +2,9 @@
- +
diff --git a/src/Umbraco.Web.UI.Client/src/views/content/edit.html b/src/Umbraco.Web.UI.Client/src/views/content/edit.html index 18b1398610..e04e442748 100644 --- a/src/Umbraco.Web.UI.Client/src/views/content/edit.html +++ b/src/Umbraco.Web.UI.Client/src/views/content/edit.html @@ -8,7 +8,7 @@
diff --git a/src/Umbraco.Web.UI.Client/src/views/directives/umb-navigation.html b/src/Umbraco.Web.UI.Client/src/views/directives/umb-navigation.html index 454f8cb82c..0c8287bed0 100644 --- a/src/Umbraco.Web.UI.Client/src/views/directives/umb-navigation.html +++ b/src/Umbraco.Web.UI.Client/src/views/directives/umb-navigation.html @@ -17,7 +17,8 @@ id="search-field" ng-model="nav.ui.searchTerm" class="umb-search-field search-query" - placeholder="Type to search..." + localize="placeholder" + placeholder="@placeholders_search" on-blur="deActivateSearch()" on-keyup="performSearch(nav.ui.searchTerm)"> @@ -31,7 +32,7 @@
- +
diff --git a/src/Umbraco.Web.UI.Client/src/views/propertyeditors/contentpicker/contentpicker.html b/src/Umbraco.Web.UI.Client/src/views/propertyeditors/contentpicker/contentpicker.html index 6bf89d233f..a0a5438e85 100644 --- a/src/Umbraco.Web.UI.Client/src/views/propertyeditors/contentpicker/contentpicker.html +++ b/src/Umbraco.Web.UI.Client/src/views/propertyeditors/contentpicker/contentpicker.html @@ -13,7 +13,7 @@ diff --git a/src/Umbraco.Web.UI.Client/src/views/propertyeditors/listview/listview.controller.js b/src/Umbraco.Web.UI.Client/src/views/propertyeditors/listview/listview.controller.js index 80cb6c9270..bb70bd2a15 100644 --- a/src/Umbraco.Web.UI.Client/src/views/propertyeditors/listview/listview.controller.js +++ b/src/Umbraco.Web.UI.Client/src/views/propertyeditors/listview/listview.controller.js @@ -202,7 +202,7 @@ angular.module("umbraco") }; if ($routeParams.id) { - $scope.pagination = new Array(100); + $scope.pagination = new Array(10); $scope.listViewAllowedTypes = contentTypeResource.getAllowedTypes($routeParams.id); $scope.reloadView($routeParams.id); diff --git a/src/Umbraco.Web.UI.Client/src/views/propertyeditors/listview/listview.html b/src/Umbraco.Web.UI.Client/src/views/propertyeditors/listview/listview.html index e689071c03..23feb61dc3 100644 --- a/src/Umbraco.Web.UI.Client/src/views/propertyeditors/listview/listview.html +++ b/src/Umbraco.Web.UI.Client/src/views/propertyeditors/listview/listview.html @@ -5,7 +5,7 @@
- Create + Create
@@ -36,9 +41,15 @@ - Name - Last updated - Editor + + Name + + + Last edited + + + Updated by +
@@ -72,14 +83,16 @@ diff --git a/src/Umbraco.Web.UI.Client/src/views/propertyeditors/memberpicker/memberpicker.html b/src/Umbraco.Web.UI.Client/src/views/propertyeditors/memberpicker/memberpicker.html index 8cc1f82e4a..ab7937493b 100644 --- a/src/Umbraco.Web.UI.Client/src/views/propertyeditors/memberpicker/memberpicker.html +++ b/src/Umbraco.Web.UI.Client/src/views/propertyeditors/memberpicker/memberpicker.html @@ -14,7 +14,7 @@ diff --git a/src/Umbraco.Web.UI.Client/src/views/propertyeditors/templatepicker/templatepicker.html b/src/Umbraco.Web.UI.Client/src/views/propertyeditors/templatepicker/templatepicker.html index 76c0e11ff1..5540786856 100644 --- a/src/Umbraco.Web.UI.Client/src/views/propertyeditors/templatepicker/templatepicker.html +++ b/src/Umbraco.Web.UI.Client/src/views/propertyeditors/templatepicker/templatepicker.html @@ -1,4 +1,3 @@
-
TODO: Implement this picker
{{model.value | json}}
\ No newline at end of file diff --git a/src/Umbraco.Web.UI/umbraco/config/lang/en.xml b/src/Umbraco.Web.UI/umbraco/config/lang/en.xml index fe352931e1..916ceb1649 100644 --- a/src/Umbraco.Web.UI/umbraco/config/lang/en.xml +++ b/src/Umbraco.Web.UI/umbraco/config/lang/en.xml @@ -67,6 +67,16 @@ Viewing for + + + Enter your username + Enter your password + + Enter a name... + Type to search... + Type to filter... + + Select Do something else @@ -124,6 +134,7 @@ Alternative Links Click to edit this item Created by + Updated by Created Document Type Editing @@ -372,6 +383,8 @@ Width Yes Folder + + Search results Background color @@ -511,8 +524,17 @@ To manage your website, simply open the umbraco back office and start adding con Renew now to save your work + Happy super sunday + Happy manic monday + Happy tremendous tuesday + Happy wonderfull wednesday + Happy thunder thursday + Happy friendly friday + Happy shiny saturday + log in below: + © 2001 - %0%
umbraco.org

]]>
- Welcome to umbraco, type your username and password in the boxes below: + Dashboard @@ -696,6 +718,8 @@ To manage your website, simply open the umbraco back office and start adding con Translation Users Umbraco Contour + + Help Default template @@ -944,4 +968,4 @@ To manage your website, simply open the umbraco back office and start adding con User types Writer - + diff --git a/src/Umbraco.Web.UI/umbraco/config/lang/en_us.xml b/src/Umbraco.Web.UI/umbraco/config/lang/en_us.xml index 1a21b2f596..a611a8f85a 100644 --- a/src/Umbraco.Web.UI/umbraco/config/lang/en_us.xml +++ b/src/Umbraco.Web.UI/umbraco/config/lang/en_us.xml @@ -53,6 +53,14 @@ Viewing for + + + Enter your username + Enter your password + Type to search + Type to filter + + Bold Cancel Paragraph Indent @@ -536,9 +544,21 @@ To manage your website, simply open the umbraco back office and start adding con You've been idle and logout will automatically occur in Renew now to save your work + + + Happy super sunday + Happy manic monday + Happy tremendous tuesday + Happy wonderfull wednesday + Happy thunder thursday + Happy friendly friday + Happy shiny saturday + log in below: + + © 2001 - %0%
umbraco.org

]]>
- Welcome to umbraco, type your username and password in the boxes below: + Dashboard diff --git a/src/Umbraco.Web/Umbraco.Web.csproj b/src/Umbraco.Web/Umbraco.Web.csproj index 46d36a78b8..ce2e8ff117 100644 --- a/src/Umbraco.Web/Umbraco.Web.csproj +++ b/src/Umbraco.Web/Umbraco.Web.csproj @@ -1935,7 +1935,9 @@ - + + ASPXCodeBehind + ASPXCodeBehind diff --git a/src/Umbraco.Web/umbraco.presentation/umbraco/js/language.aspx.cs b/src/Umbraco.Web/umbraco.presentation/umbraco/js/language.aspx.cs index 173aab594e..f6fd2f200b 100644 --- a/src/Umbraco.Web/umbraco.presentation/umbraco/js/language.aspx.cs +++ b/src/Umbraco.Web/umbraco.presentation/umbraco/js/language.aspx.cs @@ -6,16 +6,18 @@ using umbraco.BusinessLogic; namespace umbraco.js { - public partial class language : UmbracoEnsuredPage + public partial class language : BasePage { protected void Page_Load(object sender, EventArgs e) { Response.ContentType = "application/json"; - User u = base.getUser(); - if(u == null) - return; - string lang = u.Language; - XmlDocument all = ui.getLanguageFile(lang); + string lang = "en"; + if(ValidateCurrentUser()){ + lang = UmbracoUser.Language; + } + + XmlDocument all = ui.getLanguageFile(lang); + if(all == null) return; From 3f76a130f130704a9870034985bc7251bb3a2820 Mon Sep 17 00:00:00 2001 From: perploug Date: Thu, 17 Oct 2013 01:08:39 +0200 Subject: [PATCH 2/8] hotkeys osx compat --- .../src/common/directives/hotkey.directive.js | 2 ++ .../src/common/services/keyboard.service.js | 9 +++++++++ 2 files changed, 11 insertions(+) diff --git a/src/Umbraco.Web.UI.Client/src/common/directives/hotkey.directive.js b/src/Umbraco.Web.UI.Client/src/common/directives/hotkey.directive.js index 8a992a9538..2f66acc36c 100644 --- a/src/Umbraco.Web.UI.Client/src/common/directives/hotkey.directive.js +++ b/src/Umbraco.Web.UI.Client/src/common/directives/hotkey.directive.js @@ -4,8 +4,10 @@ **/ angular.module("umbraco.directives") .directive('hotkey', function ($window, keyboardService, $log) { + return function (scope, el, attrs) { var keyCombo = attrs["hotkey"]; + keyboardService.bind(keyCombo, function() { var element = $(el); if(element.is("a,button,input[type='button'],input[type='submit']")){ diff --git a/src/Umbraco.Web.UI.Client/src/common/services/keyboard.service.js b/src/Umbraco.Web.UI.Client/src/common/services/keyboard.service.js index 53b677aabb..a0306e11c6 100644 --- a/src/Umbraco.Web.UI.Client/src/common/services/keyboard.service.js +++ b/src/Umbraco.Web.UI.Client/src/common/services/keyboard.service.js @@ -11,11 +11,20 @@ angular.module('umbraco.services') 'keyCode': false }; + var isMac = navigator.platform.toUpperCase().indexOf('MAC')>=0; + // Store all keyboard combination shortcuts keyboardManagerService.keyboardEvent = {}; + // Add a new keyboard combination shortcut keyboardManagerService.bind = function (label, callback, opt) { + + //replace ctrl key with meta key + if(isMac){ + label = label.replace("ctrl","meta"); + } + var fct, elt, code, k; // Initialize opt object opt = angular.extend({}, defaultOpt, opt); From ff40de7c29d835068a9e11a8b1a7920f86431276 Mon Sep 17 00:00:00 2001 From: perploug Date: Thu, 17 Oct 2013 01:08:58 +0200 Subject: [PATCH 3/8] tree menu clicks adjustment --- .../src/common/directives/umbtree.directive.js | 7 +++++-- .../src/common/directives/umbtreeitem.directive.js | 12 +++++++++++- .../src/common/directives/utill.directive.js | 13 +++++++++++++ 3 files changed, 29 insertions(+), 3 deletions(-) diff --git a/src/Umbraco.Web.UI.Client/src/common/directives/umbtree.directive.js b/src/Umbraco.Web.UI.Client/src/common/directives/umbtree.directive.js index d638d4fcf1..5e31e10a5e 100644 --- a/src/Umbraco.Web.UI.Client/src/common/directives/umbtree.directive.js +++ b/src/Umbraco.Web.UI.Client/src/common/directives/umbtree.directive.js @@ -32,7 +32,7 @@ angular.module("umbraco.directives") if(!hideheader){ template +='
' + - '
{{tree.name}}
' + + '
{{tree.name}}
' + '' + '
'; } @@ -126,7 +126,10 @@ angular.module("umbraco.directives") emitEvent("treeNodeSelect", { element: e, node: n, event: ev }); }; - + scope.altSelect = function(e,n,ev){ + emitEvent("treeNodeAltSelect", { element: e, tree: scope.tree, node: n, event: ev }); + }; + //watch for section changes scope.$watch("section", function (newVal, oldVal) { diff --git a/src/Umbraco.Web.UI.Client/src/common/directives/umbtreeitem.directive.js b/src/Umbraco.Web.UI.Client/src/common/directives/umbtreeitem.directive.js index b7c1bdda8b..dc63e7e7be 100644 --- a/src/Umbraco.Web.UI.Client/src/common/directives/umbtreeitem.directive.js +++ b/src/Umbraco.Web.UI.Client/src/common/directives/umbtreeitem.directive.js @@ -37,7 +37,7 @@ angular.module("umbraco.directives") '' + '' + '' + - '{{node.name}}' + + '{{node.name}}' + '' + '
' + '' + @@ -75,6 +75,16 @@ angular.module("umbraco.directives") emitEvent("treeNodeSelect", { element: e, tree: scope.tree, node: n, event: ev }); }; + /** + Method called when an item is right-clicked in the tree, this passes the + DOM element, the tree node object and the original click + and emits it as a treeNodeSelect element if there is a callback object + defined on the tree + */ + scope.altSelect = function(e,n,ev){ + emitEvent("treeNodeAltSelect", { element: e, tree: scope.tree, node: n, event: ev }); + }; + /** method to set the current animation for the node. * This changes dynamically based on if we are changing sections or just loading normal tree data. * When changing sections we don't want all of the tree-ndoes to do their 'leave' animations. diff --git a/src/Umbraco.Web.UI.Client/src/common/directives/utill.directive.js b/src/Umbraco.Web.UI.Client/src/common/directives/utill.directive.js index f9a4f94737..2bca517e10 100644 --- a/src/Umbraco.Web.UI.Client/src/common/directives/utill.directive.js +++ b/src/Umbraco.Web.UI.Client/src/common/directives/utill.directive.js @@ -33,4 +33,17 @@ angular.module('umbraco.directives') scope.$apply(attrs.onFocus); }); }; +}) + +.directive('onRightClick',function(){ + document.oncontextmenu = function (e) { + if(e.target.hasAttribute('on-right-click')) { + return false; + } + }; + return function(scope,el,attrs){ + el.bind('contextmenu',function(e){ + scope.$apply(attrs.onRightClick); + }) ; + }; }); \ No newline at end of file From b3830067caa9b8130d1c7bdd24521fca45ef23b2 Mon Sep 17 00:00:00 2001 From: perploug Date: Thu, 17 Oct 2013 01:09:22 +0200 Subject: [PATCH 4/8] on touch, make the dialog sticky to avoid instant collapse --- .../src/common/services/navigation.service.js | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/src/Umbraco.Web.UI.Client/src/common/services/navigation.service.js b/src/Umbraco.Web.UI.Client/src/common/services/navigation.service.js index 03c2598c79..053cfabca5 100644 --- a/src/Umbraco.Web.UI.Client/src/common/services/navigation.service.js +++ b/src/Umbraco.Web.UI.Client/src/common/services/navigation.service.js @@ -230,13 +230,14 @@ angular.module('umbraco.services') return; } - service.active = false; - - $timeout(function(){ - if(!service.active){ - service.hideTree(); - } - }, 300); + if(!service.touchDevice){ + service.active = false; + $timeout(function(){ + if(!service.active){ + service.hideTree(); + } + }, 300); + } }, /** From 87cacaf92c0a5e1054edbbe8834b5b09cba4ef46 Mon Sep 17 00:00:00 2001 From: perploug Date: Thu, 17 Oct 2013 01:09:32 +0200 Subject: [PATCH 5/8] touch padding --- src/Umbraco.Web.UI.Client/src/less/tree.less | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/src/Umbraco.Web.UI.Client/src/less/tree.less b/src/Umbraco.Web.UI.Client/src/less/tree.less index 2aa2256860..6e3d534e2a 100644 --- a/src/Umbraco.Web.UI.Client/src/less/tree.less +++ b/src/Umbraco.Web.UI.Client/src/less/tree.less @@ -154,6 +154,7 @@ a.umb-options { position: absolute; right: 0px; top: 0px; + background: @grayLighter; } a.umb-options i { @@ -162,8 +163,7 @@ a.umb-options i { border-radius: 20px; background: #333; display: inline-block; - border: 3px solid @grayLighter; - margin: 10px -2px 0 0; + margin: 10px 2px 0 0; } li.root > div > a.umb-options { @@ -174,8 +174,6 @@ li.root > div > a.umb-options { .hide-header h5{display: none !important} - - .umb-icon-item { padding: 2px; padding-left: 55px; @@ -474,4 +472,10 @@ body.touch .umb-tree li div { font-size: 110%; } +body.touch .umb-actions a{ + padding: 14px 25px 14px 20px; + font-size: 110%; +} + +body.touch a.umb-options i {margin-top: 20px;} From 1f65f02f49339ba0ddb1e3a141444a844096784e Mon Sep 17 00:00:00 2001 From: perploug Date: Thu, 17 Oct 2013 01:09:46 +0200 Subject: [PATCH 6/8] dashboards localization --- .../src/views/common/dashboard.controller.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Umbraco.Web.UI.Client/src/views/common/dashboard.controller.js b/src/Umbraco.Web.UI.Client/src/views/common/dashboard.controller.js index 64dba7ffd5..006146095a 100644 --- a/src/Umbraco.Web.UI.Client/src/views/common/dashboard.controller.js +++ b/src/Umbraco.Web.UI.Client/src/views/common/dashboard.controller.js @@ -14,7 +14,7 @@ function DashboardController($scope, $routeParams, dashboardResource, localizati $scope.dashboard.name = name; }); - dashboardResource.getDashboard($scope.dashboard.name).then(function(tabs){ + dashboardResource.getDashboard($routeParams.section).then(function(tabs){ $scope.dashboard.tabs = tabs; }); } From eef44e97c56b794b55b0d6fd02582a114f428b8d Mon Sep 17 00:00:00 2001 From: perploug Date: Thu, 17 Oct 2013 01:09:55 +0200 Subject: [PATCH 7/8] user localization --- .../src/views/common/dialogs/user.html | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/src/Umbraco.Web.UI.Client/src/views/common/dialogs/user.html b/src/Umbraco.Web.UI.Client/src/views/common/dialogs/user.html index 897215592c..8c6d8bb569 100644 --- a/src/Umbraco.Web.UI.Client/src/views/common/dialogs/user.html +++ b/src/Umbraco.Web.UI.Client/src/views/common/dialogs/user.html @@ -11,7 +11,8 @@

{{user.name}}

- Session expires in {{user.remainingAuthSeconds | number:0}} seconds + + : {{user.remainingAuthSeconds | timespan}}

@@ -20,15 +21,17 @@
-
Your profile
+

- Edit your profile + + Edit +

-
Your recent history
+