Advertisement
Guest User

Untitled

a guest
Apr 22nd, 2014
57
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. // abstract state controller:
  2.  
  3. marble.controller('AnalyzerAbstractCtrl', ['$scope', '$stateParams', '$state', 'Restangular', 'variants',
  4.                       function ($scope, $stateParams, $state, Restangular, variants) {
  5.         $scope.variants = variants;
  6.  
  7.         $scope.deNovoClass = function () {
  8.             console.log($state.current.name === 'analyzer_case_main.denovo');
  9.             return $state.current.name === 'analyzer_case_main.denovo' ? true : false;
  10.         };
  11.         $scope.xLinkedClass = function () {
  12.             return $state.current.name === 'analyzer_case_main.xlinked' ? true : false;
  13.         };
  14.         $scope.simpRecClass = function () {
  15.             return $state.current.name === 'analyzer_case_main.simprec' ? true : false;
  16.         };
  17.         $scope.cmpHetClass = function () {
  18.             return $state.current.name === 'analyzer_case_main.cmphet' ? true : false;
  19.         };
  20.         $scope.incidentalClass = function () {
  21.             return $state.current.name === 'analyzer_case_main.incidental' ? true : false;
  22.         };
  23.         $scope.focusClass = function () {
  24.             return $state.current.name === 'analyzer_case_main.focus' ? true : false;
  25.         };
  26.         $scope.sangerClass = function () {
  27.             return $state.current.name === 'analyzer_case_main.sanger' ? true : false;
  28.         };
  29.  
  30.         $scope.goToPage = function (page) {
  31.             $state.go('^.' + page, $stateParams);
  32.         };
  33.  
  34.     }]);
  35.  
  36. // abstract state template:
  37. <ul class="nav nav-tabs">
  38.     <li ng-class="{ 'active': deNovoClass() }"><a ng-click="goToPage('denovo')">DeNovo</a></li>
  39.     <li ng-class="{ 'active': xLinkedClass() }"><a ng-click="goToPage('xlinked')">X-Linked</a></li>
  40.     <li ng-class="{ 'active': simpRecClass() }"><a ng-click="goToPage('simprec')">Simp Rec</a></li>
  41.     <li ng-class="{ 'active': cmpHetClass() }"><a ng-click="goToPage('cmphet')">Cmp Het</a></li>
  42.     <li ng-class="{ 'active': incidentalClass() }"><a ng-click="goToPage('incidental')">Incidental Findings</a></li>
  43.     <li ng-class="{ 'active': focusClass() }"><a ng-click="goToPage('focus')">Focus</a></li>
  44.     <li ng-class="{ 'active': sangerClass() }"><a ng-click="goToPage('sanger')">Sanger Validation</a></li>
  45. </ul>
  46. <div class="tab-content">
  47.     <div ng-class="{ 'active': deNovoClass() }" class="tab-pane" ui-view="denovo">Loading...</div>
  48.     <div ng-class="{ 'active': xLinkedClass() }" class="tab-pane" ui-view="xlinked">Loading...</div>
  49.     <div ng-class="{ 'active': simpRecClass() }" class="tab-pane" ui-view="simprec">Loading...</div>
  50.     <div ng-class="{ 'active': cmpHetClass() }" class="tab-pane" ui-view="cmphet">Loading...</div>
  51.     <div ng-class="{ 'active': incidentalClass() }" class="tab-pane" ui-view="incidental">Loading...</div>
  52.     <div ng-class="{ 'active': focusClass() }" class="tab-pane" ui-view="focus">Loading...</div>
  53.     <div ng-class="{ 'active': sangerClass() }" class="tab-pane" ui-view="sanger">Loading...</div>
  54. </div>
  55.  
  56. // states.js :
  57.  
  58.  
  59.                         .state('analyzer_case_main', {
  60.                             abstract: true,
  61.                             url: '/analyzer/cases/{caseID:[0-9]+}/',
  62.                             resolve: {
  63.                                 variants: ['CaseVariants', '$stateParams', function (CaseVariants, $stateParams) {
  64.                                     //CaseVariants.reset();
  65.                                     //CaseVariants.getData($stateParams.caseID);
  66.                                     return CaseVariants;
  67.                                 }],
  68.                             },
  69.                             views: {
  70.                                 '': {
  71.                                     controller: 'AnalyzerAbstractCtrl',
  72.                                     templateUrl: '/static/partials/analyzer/variants-view.html',
  73.                                 }
  74.                             },
  75.                         })
  76.                         .state('analyzer_case_main.denovo', {
  77.                             url: 'denovo',
  78.                             views: {
  79.                                 'denovo' : {
  80.                                     templateUrl: '/static/partials/analyzer/variants-denovo.html',
  81.                                     controller: 'DeNovoCtrl',
  82.                                 }
  83.                             }
  84.                         })
  85.                         .state('analyzer_case_main.xlinked', {
  86.                             url: 'xlinked',
  87.                             views: {
  88.                                 'xlinked' : {
  89.                                     templateUrl: '/static/partials/analyzer/variants-xlinked.html',
  90.                                     controller: 'XLinkedCtrl',
  91.                                 }
  92.                             }
  93.                         })
  94.                         .state('analyzer_case_main.simprec', {
  95.                             url: 'simprec',
  96.                             views: {
  97.                                 'simprec' : {
  98.                                     templateUrl: '/static/partials/analyzer/variants-simprec.html',
  99.                                     controller: 'SimpRecCtrl',
  100.                                 }
  101.                             }
  102.                         })
  103.                         .state('analyzer_case_main.cmphet', {
  104.                             url: 'cmphet',
  105.                             views: {
  106.                                 'cmphet' : {
  107.                                     templateUrl: '/static/partials/analyzer/variants-cmphet.html',
  108.                                     controller: 'CmpHetCtrl',
  109.                                 }
  110.                             }
  111.                         })
  112.                         .state('analyzer_case_main.incidental', {
  113.                             url: 'incidental',
  114.                             views: {
  115.                                 'incidental' : {
  116.                                     templateUrl: '/static/partials/analyzer/variants-incidental.html',
  117.                                     controller: 'IncidentalCtrl',
  118.                                 }
  119.                             }
  120.                         })
  121.                         .state('analyzer_case_main.focus', {
  122.                             url: 'focus',
  123.                             views: {
  124.                                 'focus' : {
  125.                                     templateUrl: '/static/partials/analyzer/variants-focus.html',
  126.                                     controller: 'FocusCtrl',
  127.                                 }
  128.                             }
  129.                         })
  130.                         .state('analyzer_case_main.sanger', {
  131.                             url: 'sanger',
  132.                             views: {
  133.                                 'sanger' : {
  134.                                     templateUrl: '/static/partials/analyzer/variants-sanger.html',
  135.                                     controller: 'SangerCtrl',
  136.                                 }
  137.                             }
  138.                         })
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement