mirror of
https://github.com/ansible/awx.git
synced 2026-05-08 01:47:35 -02:30
add breadcrumb, fix up main-menu ng-class statements to use $state.current instead of $location strings, #939 #940
This commit is contained in:
@@ -1,36 +1,14 @@
|
|||||||
/* jshint unused: vars */
|
/* jshint unused: vars */
|
||||||
|
|
||||||
export default
|
export default
|
||||||
[ '$location', 'templateUrl', '$rootScope', function($location, templateUrl, $rootScope) {
|
[ '$state', 'templateUrl', '$rootScope', function($state, templateUrl, $rootScope) {
|
||||||
return {
|
return {
|
||||||
restrict: 'E',
|
restrict: 'E',
|
||||||
templateUrl: templateUrl('main-menu/main-menu'),
|
templateUrl: templateUrl('main-menu/main-menu'),
|
||||||
link: function(scope, element, attrs) {
|
link: function(scope, element, attrs) {
|
||||||
// check to see if this is the current route
|
|
||||||
scope.isCurrentRoute = function(route) {
|
|
||||||
if ($location.url().split('/')[1] === route) {
|
|
||||||
return true;
|
|
||||||
} else {
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
// check to see if the current route is the currently
|
scope.isCurrentState = function(name){
|
||||||
// logged in user
|
return $state.current.name == name
|
||||||
scope.isCurrentRouteUser = function() {
|
|
||||||
if ($rootScope && $rootScope.current_user) {
|
|
||||||
if ($location.url().split('/')[1] === 'users') {
|
|
||||||
if ($location.url().split('/')[2] === ($rootScope.current_user.id + "")) {
|
|
||||||
return true;
|
|
||||||
} else {
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
};
|
};
|
||||||
|
|
||||||
// set up the user tooltip
|
// set up the user tooltip
|
||||||
|
|||||||
@@ -13,7 +13,7 @@
|
|||||||
<a class="MainMenu-item"
|
<a class="MainMenu-item"
|
||||||
id="main_menu_projects_mobile_link"
|
id="main_menu_projects_mobile_link"
|
||||||
href="/#/projects"
|
href="/#/projects"
|
||||||
ng-class="{'is-currentRoute' : isCurrentRoute('projects')}">
|
ng-class="{'is-currentRoute' : isCurrentState('projects')}">
|
||||||
<span class="MainMenu-itemText">
|
<span class="MainMenu-itemText">
|
||||||
PROJECTS
|
PROJECTS
|
||||||
</span>
|
</span>
|
||||||
@@ -21,7 +21,7 @@
|
|||||||
<a class="MainMenu-item"
|
<a class="MainMenu-item"
|
||||||
id="main_menu_inventories_mobile_link"
|
id="main_menu_inventories_mobile_link"
|
||||||
href="/#/inventories"
|
href="/#/inventories"
|
||||||
ng-class="{'is-currentRoute' : isCurrentRoute('inventories')}">
|
ng-class="{'is-currentRoute' : isCurrentState('inventories')}">
|
||||||
<span class="MainMenu-itemText">
|
<span class="MainMenu-itemText">
|
||||||
INVENTORIES
|
INVENTORIES
|
||||||
</span>
|
</span>
|
||||||
@@ -29,7 +29,7 @@
|
|||||||
<a class="MainMenu-item"
|
<a class="MainMenu-item"
|
||||||
id="main_menu_job_templates_mobile_link"
|
id="main_menu_job_templates_mobile_link"
|
||||||
href="/#/job_templates"
|
href="/#/job_templates"
|
||||||
ng-class="{'is-currentRoute' : isCurrentRoute('job_templates')}">
|
ng-class="{'is-currentRoute' : isCurrentState('jobTemplates')}">
|
||||||
<span class="MainMenu-itemText">
|
<span class="MainMenu-itemText">
|
||||||
JOB TEMPLATES
|
JOB TEMPLATES
|
||||||
</span>
|
</span>
|
||||||
@@ -37,7 +37,7 @@
|
|||||||
<a class="MainMenu-item"
|
<a class="MainMenu-item"
|
||||||
id="main_menu_jobs_mobile_link"
|
id="main_menu_jobs_mobile_link"
|
||||||
href="/#/jobs"
|
href="/#/jobs"
|
||||||
ng-class="{'is-currentRoute' : isCurrentRoute('jobs')}">
|
ng-class="{'is-currentRoute' : isCurrentState('jobs')}">
|
||||||
<span class="MainMenu-itemText">
|
<span class="MainMenu-itemText">
|
||||||
JOBS
|
JOBS
|
||||||
</span>
|
</span>
|
||||||
@@ -45,7 +45,7 @@
|
|||||||
<a class="MainMenu-item"
|
<a class="MainMenu-item"
|
||||||
id="main_menu_current_user_mobile_link"
|
id="main_menu_current_user_mobile_link"
|
||||||
ng-href="/#/users/{{ $root.current_user.id }}"
|
ng-href="/#/users/{{ $root.current_user.id }}"
|
||||||
ng-class="{'is-currentRoute' : isCurrentRouteUser()}">
|
ng-class="{'is-currentRoute' : isCurrentState('users.edit')}">
|
||||||
<span class="MainMenu-itemText">
|
<span class="MainMenu-itemText">
|
||||||
VIEW USER PAGE FOR {{ $root.current_user.username | uppercase }}
|
VIEW USER PAGE FOR {{ $root.current_user.username | uppercase }}
|
||||||
</span>
|
</span>
|
||||||
@@ -53,7 +53,7 @@
|
|||||||
<a class="MainMenu-item"
|
<a class="MainMenu-item"
|
||||||
id="main_menu_setup_mobile_link"
|
id="main_menu_setup_mobile_link"
|
||||||
ng-href="/#/setup"
|
ng-href="/#/setup"
|
||||||
ng-class="{'is-currentRoute' : isCurrentRoute('setup')}">
|
ng-class="{'is-currentRoute' : isCurrentState('setup')}">
|
||||||
<span class="MainMenu-itemText">
|
<span class="MainMenu-itemText">
|
||||||
SETTINGS
|
SETTINGS
|
||||||
</span>
|
</span>
|
||||||
@@ -61,7 +61,7 @@
|
|||||||
<a class="MainMenu-item"
|
<a class="MainMenu-item"
|
||||||
id="main_menu_setup_mobile_link"
|
id="main_menu_setup_mobile_link"
|
||||||
ui-sref="portalMode"
|
ui-sref="portalMode"
|
||||||
ng-class="{'is-currentRoute' : isCurrentRoute('portalMode')}">
|
ng-class="{'is-currentRoute' : isCurrentState('portalMode')}">
|
||||||
<span class="MainMenu-itemText">
|
<span class="MainMenu-itemText">
|
||||||
PORTAL MODE
|
PORTAL MODE
|
||||||
</span>
|
</span>
|
||||||
@@ -77,7 +77,7 @@
|
|||||||
<a class="MainMenu-item"
|
<a class="MainMenu-item"
|
||||||
id="main_menu_logout_mobile_link"
|
id="main_menu_logout_mobile_link"
|
||||||
ng-href="/#/logout"
|
ng-href="/#/logout"
|
||||||
ng-class="{'is-currentRoute' : isCurrentRoute('logout')}">
|
ng-class="{'is-currentRoute' : isCurrentState('logout')}">
|
||||||
<span class="MainMenu-itemText">
|
<span class="MainMenu-itemText">
|
||||||
LOG OUT
|
LOG OUT
|
||||||
</span>
|
</span>
|
||||||
@@ -88,7 +88,7 @@
|
|||||||
<a class="MainMenu-item MainMenu-item--notMobile MainMenu-item--left"
|
<a class="MainMenu-item MainMenu-item--notMobile MainMenu-item--left"
|
||||||
id="main_menu_projects_link"
|
id="main_menu_projects_link"
|
||||||
href="/#/projects"
|
href="/#/projects"
|
||||||
ng-class="{'is-currentRoute' : isCurrentRoute('projects'), 'is-loggedOut' : !$root.current_user.username}">
|
ng-class="{'is-currentRoute' : isCurrentState('projects'), 'is-loggedOut' : !$root.current_user.username}">
|
||||||
<span class="MainMenu-itemText">
|
<span class="MainMenu-itemText">
|
||||||
PROJECTS
|
PROJECTS
|
||||||
</span>
|
</span>
|
||||||
@@ -96,7 +96,7 @@
|
|||||||
<a class="MainMenu-item MainMenu-item--notMobile MainMenu-item--left"
|
<a class="MainMenu-item MainMenu-item--notMobile MainMenu-item--left"
|
||||||
id="main_menu_inventories_link"
|
id="main_menu_inventories_link"
|
||||||
href="/#/inventories"
|
href="/#/inventories"
|
||||||
ng-class="{'is-currentRoute' : isCurrentRoute('inventories'), 'is-loggedOut' : !$root.current_user.username}">
|
ng-class="{'is-currentRoute' : isCurrentState('inventories'), 'is-loggedOut' : !$root.current_user.username}">
|
||||||
<span class="MainMenu-itemText">
|
<span class="MainMenu-itemText">
|
||||||
INVENTORIES
|
INVENTORIES
|
||||||
</span>
|
</span>
|
||||||
@@ -104,7 +104,7 @@
|
|||||||
<a class="MainMenu-item MainMenu-item--notMobile MainMenu-item--left"
|
<a class="MainMenu-item MainMenu-item--notMobile MainMenu-item--left"
|
||||||
id="main_menu_job_templates_link"
|
id="main_menu_job_templates_link"
|
||||||
href="/#/job_templates"
|
href="/#/job_templates"
|
||||||
ng-class="{'is-currentRoute' : isCurrentRoute('job_templates'), 'is-loggedOut' : !$root.current_user.username}">
|
ng-class="{'is-currentRoute' : isCurrentState('jobTemplates'), 'is-loggedOut' : !$root.current_user.username}">
|
||||||
<span class="MainMenu-itemText">
|
<span class="MainMenu-itemText">
|
||||||
JOB TEMPLATES
|
JOB TEMPLATES
|
||||||
</span>
|
</span>
|
||||||
@@ -112,7 +112,7 @@
|
|||||||
<a class="MainMenu-item MainMenu-item--notMobile MainMenu-item--left MainMenu-item--lastLeft"
|
<a class="MainMenu-item MainMenu-item--notMobile MainMenu-item--left MainMenu-item--lastLeft"
|
||||||
id="main_menu_jobs_link"
|
id="main_menu_jobs_link"
|
||||||
href="/#/jobs"
|
href="/#/jobs"
|
||||||
ng-class="{'is-currentRoute' : isCurrentRoute('jobs'), 'is-loggedOut' : !$root.current_user.username}">
|
ng-class="{'is-currentRoute' : isCurrentState('jobs'), 'is-loggedOut' : !$root.current_user.username}">
|
||||||
<span class="MainMenu-itemText">
|
<span class="MainMenu-itemText">
|
||||||
JOBS
|
JOBS
|
||||||
</span>
|
</span>
|
||||||
@@ -120,7 +120,7 @@
|
|||||||
<a class="MainMenu-item MainMenu-item--notMobile MainMenu-item--user MainMenu-item--right"
|
<a class="MainMenu-item MainMenu-item--notMobile MainMenu-item--user MainMenu-item--right"
|
||||||
id="main_menu_current_user_link"
|
id="main_menu_current_user_link"
|
||||||
ng-href="/#/users/{{ $root.current_user.id }}"
|
ng-href="/#/users/{{ $root.current_user.id }}"
|
||||||
ng-class="{'is-currentRoute' : isCurrentRouteUser(), 'is-loggedOut' : !$root.current_user.username}"
|
ng-class="{'is-currentRoute' : isCurrentState('users.edit'), 'is-loggedOut' : !$root.current_user.username}"
|
||||||
aw-tool-tip="{{currentUserTip}}"
|
aw-tool-tip="{{currentUserTip}}"
|
||||||
aw-tip-watch="currentUserTip"
|
aw-tip-watch="currentUserTip"
|
||||||
data-placement="bottom"
|
data-placement="bottom"
|
||||||
@@ -136,7 +136,7 @@
|
|||||||
<a class="MainMenu-item MainMenu-item--notMobile MainMenu-item--right"
|
<a class="MainMenu-item MainMenu-item--notMobile MainMenu-item--right"
|
||||||
id="main_menu_setup_link"
|
id="main_menu_setup_link"
|
||||||
ng-href="/#/setup"
|
ng-href="/#/setup"
|
||||||
ng-class="{'is-currentRoute' : isCurrentRoute('setup'), 'is-loggedOut' : !$root.current_user.username}"
|
ng-class="{'is-currentRoute' : isCurrentState('setup'), 'is-loggedOut' : !$root.current_user.username}"
|
||||||
aw-tool-tip="Settings"
|
aw-tool-tip="Settings"
|
||||||
data-placement="bottom"
|
data-placement="bottom"
|
||||||
data-trigger="hover"
|
data-trigger="hover"
|
||||||
@@ -148,7 +148,7 @@
|
|||||||
<a class="MainMenu-item MainMenu-item--notMobile MainMenu-item--right"
|
<a class="MainMenu-item MainMenu-item--notMobile MainMenu-item--right"
|
||||||
id="main_menu_portal_link"
|
id="main_menu_portal_link"
|
||||||
ng-href="/#/portal"
|
ng-href="/#/portal"
|
||||||
ng-class="{'is-currentRoute' : isCurrentRoute('portalMode'), 'is-loggedOut' : !$root.current_user.username}"
|
ng-class="{'is-currentRoute' : isCurrentState('portalMode'), 'is-loggedOut' : !$root.current_user.username}"
|
||||||
aw-tool-tip="Portal Mode"
|
aw-tool-tip="Portal Mode"
|
||||||
data-placement="bottom"
|
data-placement="bottom"
|
||||||
data-trigger="hover"
|
data-trigger="hover"
|
||||||
@@ -173,7 +173,7 @@
|
|||||||
<a class="MainMenu-item MainMenu-item--notMobile MainMenu-item--right"
|
<a class="MainMenu-item MainMenu-item--notMobile MainMenu-item--right"
|
||||||
id="main_menu_logout_link"
|
id="main_menu_logout_link"
|
||||||
ng-href="/#/logout"
|
ng-href="/#/logout"
|
||||||
ng-class="{'is-currentRoute' : isCurrentRoute('logout'), 'is-loggedOut' : !$root.current_user.username}"
|
ng-class="{'is-currentRoute' : isCurrentState('logout'), 'is-loggedOut' : !$root.current_user.username}"
|
||||||
aw-tool-tip="Log Out"
|
aw-tool-tip="Log Out"
|
||||||
data-placement="bottom"
|
data-placement="bottom"
|
||||||
data-trigger="hover"
|
data-trigger="hover"
|
||||||
|
|||||||
@@ -4,8 +4,9 @@
|
|||||||
* All Rights Reserved
|
* All Rights Reserved
|
||||||
*************************************************/
|
*************************************************/
|
||||||
|
|
||||||
export function PortalModeJobsController($scope, $rootScope, GetBasePath, GenerateList, PortalJobsList, SearchInit,
|
export function PortalModeJobsController($scope, $state, $rootScope, GetBasePath, GenerateList, PortalJobsList, SearchInit,
|
||||||
PaginateInit){
|
PaginateInit){
|
||||||
|
|
||||||
var list = PortalJobsList,
|
var list = PortalJobsList,
|
||||||
view = GenerateList,
|
view = GenerateList,
|
||||||
// show user jobs by default
|
// show user jobs by default
|
||||||
@@ -55,5 +56,5 @@ export function PortalModeJobsController($scope, $rootScope, GetBasePath, Genera
|
|||||||
init();
|
init();
|
||||||
}
|
}
|
||||||
|
|
||||||
PortalModeJobsController.$inject = ['$scope', '$rootScope', 'GetBasePath', 'generateList', 'PortalJobsList', 'SearchInit',
|
PortalModeJobsController.$inject = ['$scope', '$state', '$rootScope', 'GetBasePath', 'generateList', 'PortalJobsList', 'SearchInit',
|
||||||
'PaginateInit']
|
'PaginateInit']
|
||||||
@@ -5,9 +5,11 @@ import {PortalModeJobsController} from './portal-mode-jobs.controller';
|
|||||||
// Using multiple named views requires a parent layout
|
// Using multiple named views requires a parent layout
|
||||||
// https://github.com/angular-ui/ui-router/wiki/Multiple-Named-Views
|
// https://github.com/angular-ui/ui-router/wiki/Multiple-Named-Views
|
||||||
export default {
|
export default {
|
||||||
abstract: true,
|
|
||||||
name: 'portalMode',
|
name: 'portalMode',
|
||||||
url: '/portal',
|
url: '/portal',
|
||||||
|
ncyBreadcrumb: {
|
||||||
|
label: "PORTAL MODE"
|
||||||
|
},
|
||||||
resolve: {
|
resolve: {
|
||||||
features: ['FeaturesService', function(FeaturesService) {
|
features: ['FeaturesService', function(FeaturesService) {
|
||||||
return FeaturesService.get();
|
return FeaturesService.get();
|
||||||
|
|||||||
Reference in New Issue
Block a user