topnav.js 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. define([
  2. '../core_module',
  3. ],
  4. function (coreModule) {
  5. 'use strict';
  6. coreModule.default.directive('topnav', function($rootScope, contextSrv) {
  7. return {
  8. restrict: 'E',
  9. transclude: true,
  10. scope: {
  11. title: "@",
  12. section: "@",
  13. titleUrl: "@",
  14. subnav: "=",
  15. },
  16. template:
  17. '<div class="navbar navbar-static-top"><div class="navbar-inner"><div class="container-fluid">' +
  18. '<div class="top-nav">' +
  19. '<div class="top-nav-btn top-nav-menu-btn">' +
  20. '<a class="pointer" ng-click="contextSrv.toggleSideMenu()">' +
  21. '<span class="top-nav-logo-background">' +
  22. '<img class="logo-icon" src="img/fav32.png"></img>' +
  23. '</span>' +
  24. '<i class="fa fa-caret-down"></i>' +
  25. '</a>' +
  26. '</div>' +
  27. '<span class="icon-circle top-nav-icon">' +
  28. '<i ng-class="icon"></i>' +
  29. '</span>' +
  30. '<span ng-show="section">' +
  31. '<span class="top-nav-title">{{section}}</span>' +
  32. '<i class="top-nav-breadcrumb-icon fa fa-angle-right"></i>' +
  33. '</span>' +
  34. '<a ng-href="{{titleUrl}}" class="top-nav-title">' +
  35. '{{title}}' +
  36. '</a>' +
  37. '<i ng-show="subnav" class="top-nav-breadcrumb-icon fa fa-angle-right"></i>' +
  38. '</div><div ng-transclude></div></div></div></div>',
  39. link: function(scope, elem, attrs) {
  40. scope.icon = attrs.icon;
  41. scope.contextSrv = contextSrv;
  42. }
  43. };
  44. });
  45. });