diff --git a/src/Umbraco.Web.UI.Client/src/less/panel.less b/src/Umbraco.Web.UI.Client/src/less/panel.less index a502001975..dccd6f3428 100644 --- a/src/Umbraco.Web.UI.Client/src/less/panel.less +++ b/src/Umbraco.Web.UI.Client/src/less/panel.less @@ -33,6 +33,10 @@ bottom: 90px; } +.umb-panel.editor-breadcrumb .umb-panel-body, .umb-panel.editor-breadcrumb .umb-bottom-bar,{ + bottom: 40px !Important; +} + .umb-panel-header .umb-headline, .umb-panel-header h1 { font-size: 18px; border: none; @@ -155,7 +159,7 @@ bottom: 0px; left: 100px; right: 20px; - }; +}; @media (min-width: 1101px) { .umb-bottom-bar {left: 460px;} @@ -166,6 +170,63 @@ .tab-content{overflow: visible; } +.umb-panel-footer-nav{ + position: absolute; + bottom: 0px; + height: 30px; + left: 0px; + right: 0px; + background: @grayLighter; + border-top: @grayLight 1px solid; + display: block; + margin: 0; +} + +.umb-panel-footer-nav li a { + border-radius: 0; + display: block; + float: left; + height: 30px; + background: @grayLighter; + text-align: center; + padding: 8px 0px 8px 30px; + position: relative; + margin: 0 1px 0 0; + text-decoration: none; + color: @gray; + font-size: 11px; +} + +.umb-panel-footer-nav li a:after { + content: ""; + border-top: 16px solid transparent; + border-bottom: 16px solid transparent; + border-left: 16px solid @grayLighter; + position: absolute; right: -16px; top: 0; + z-index: 1; +} + +.umb-panel-footer-nav li a:before { + content: ""; + border-top: 16px solid transparent; + border-bottom: 16px solid transparent; + border-left: 16px solid @grayLight; + position: absolute; left: 0; top: 0; +} + +.umb-panel-footer-nav li:first-child a{ + padding-left: 20px; +} + +.umb-panel-footer-nav li:first-child a:before { + display: none; +} + +.umb-panel-footer-nav li:last-child a:after { + display: none; +} + + // Utility classes diff --git a/src/Umbraco.Web.UI.Client/src/views/content/content.edit.controller.js b/src/Umbraco.Web.UI.Client/src/views/content/content.edit.controller.js index fa7c7bcb5c..10276ccfde 100644 --- a/src/Umbraco.Web.UI.Client/src/views/content/content.edit.controller.js +++ b/src/Umbraco.Web.UI.Client/src/views/content/content.edit.controller.js @@ -6,7 +6,7 @@ * @description * The controller for the content editor */ -function ContentEditController($scope, $routeParams, $q, $timeout, $window, appState, contentResource, navigationService, notificationsService, angularHelper, serverValidationManager, contentEditingHelper, treeService, fileManager, formHelper, umbRequestHelper, keyboardService, umbModelMapper, editorState, $http) { +function ContentEditController($scope, $routeParams, $q, $timeout, $window, appState, contentResource, entityResource, navigationService, notificationsService, angularHelper, serverValidationManager, contentEditingHelper, treeService, fileManager, formHelper, umbRequestHelper, keyboardService, umbModelMapper, editorState, $http) { //setup scope vars $scope.defaultButton = null; @@ -15,6 +15,7 @@ function ContentEditController($scope, $routeParams, $q, $timeout, $window, appS $scope.currentSection = appState.getSectionState("currentSection"); $scope.currentNode = null; //the editors affiliated node + //This sets up the action buttons based on what permissions the user has. //The allowedActions parameter contains a list of chars, each represents a button by permission so //here we'll build the buttons according to the chars of the user. @@ -52,6 +53,7 @@ function ContentEditController($scope, $routeParams, $q, $timeout, $window, appS } } + //if we are not creating, then we should add unpublish too, // so long as it's already published and if the user has access to publish if (!$routeParams.create) { @@ -60,6 +62,15 @@ function ContentEditController($scope, $routeParams, $q, $timeout, $window, appS } } } + + //We fetch all ancestors of the node to generate the footer breadcrump navigation + if (!$routeParams.create) { + entityResource.getAncestors(content.id, "document") + .then(function(anc) { + anc.pop(); + $scope.ancestors = anc; + }); + } } function createButtonDefinition(ch) { 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 61a04755a2..3b61a9c54e 100644 --- a/src/Umbraco.Web.UI.Client/src/views/content/edit.html +++ b/src/Umbraco.Web.UI.Client/src/views/content/edit.html @@ -4,7 +4,7 @@ ng-submit="save()" val-form-manager> - +
@@ -71,5 +71,14 @@
+ + + +