OSDN Git Service

Bind HeaderMenuController to HeaderMenu directive v0.3.0p0054
authorhimetani_cafe <fumifumi@yasunaga-lab.bio.kyutech.ac.jp>
Thu, 25 Feb 2016 13:06:09 +0000 (22:06 +0900)
committerhimetani_cafe <fumifumi@yasunaga-lab.bio.kyutech.ac.jp>
Thu, 25 Feb 2016 13:06:09 +0000 (22:06 +0900)
I enabled some actions which are transit state, label activation, etc...

front-end/app/scripts/App.ts
front-end/app/scripts/directives/HeaderMenu.ts
front-end/app/templates/header-menu.html
front-end/app/templates/history.html
front-end/dist/bundle.js
front-end/dist/templates/header-menu.html
front-end/dist/templates/history.html

index 1390c7b..d6a9d6a 100644 (file)
@@ -52,6 +52,7 @@ namespace app {
     zephyr.controller('commandController', directives.CommandController);
     zephyr.controller('optionController', directives.OptionController);
     zephyr.controller('directoryController', directives.DirectoryController);
+    zephyr.controller('HeaderMenuController', directives.HeaderMenuController);
 
     zephyr.directive('headerMenu', directives.HeaderMenu.Factory());
     zephyr.directive('command', directives.Command.Factory());
index 17b153b..f01abb2 100644 (file)
@@ -5,6 +5,9 @@ namespace app.directives {
         public restrict: string;
         public replace: boolean;
         public templateUrl: string;
+        public controller: string;
+        public controllerAs: string;
+        public scope: boolean;
 
         /**
          * constructor
@@ -15,6 +18,9 @@ namespace app.directives {
             this.restrict = 'E';
             this.replace = true;
             this.templateUrl = 'templates/header-menu.html';
+            this.controller = 'HeaderMenuController';
+            this.controllerAs = 'hmc';
+            this.scope = true;
         }
 
         /**
@@ -24,9 +30,28 @@ namespace app.directives {
          */
         public static Factory(): ng.IDirectiveFactory {
             var directive = () => {
-            return new HeaderMenu();
+                return new HeaderMenu();
             };
             return directive;
         }
     }
+
+    export class HeaderMenuController {
+
+        public static $inject = ['$state'];
+
+        private isExecution: boolean;
+        private isWorkspace: boolean;
+        private isHistory: boolean;
+
+        constructor(private $state: ng.ui.IStateService) {
+            this.isExecution = this.$state.current.name === 'execution';
+            this.isWorkspace = this.$state.current.name === 'workspace';
+            this.isHistory = this.$state.current.name === 'history';
+        }
+
+        private transit(state:string) {
+            this.$state.go(state);
+        }
+    }
 }
index 72db138..dc9fef1 100644 (file)
@@ -1,13 +1,12 @@
-<nav class="nav navbar-default">
+<nav class="nav navbar navbar-static-top navbar-inverse">
     <div class="navbar-header">
         <a class="navbar-brand" href="">Zephyr</a>
     </div>
     <div class="navbar-collapse collapse navbar-responsive-collapse">
         <ul class="nav navbar-nav">
-            <li ng-class="{active: isBoard}"><a ng-href="{{boardRef}}">Execution</a></li>
-            <li ng-class="{active: isWorkspace}"><a ng-href="{{workspaceRef}}">Workspace</a></li>
-            <li ng-class="{active: isNotes}"><a ng-href="{{notesRef}}">History</a></li>
-            <li ng-class="{active: isAdmin}" ng-show="isAdminRole"><a ng-href="{{adminPath}}">Admin Page</a></li>
+            <li ng-class="{active: hmc.isExecution}"><a ng-click="hmc.transit('execution')" href="/execution">Execution</a></li>
+            <li ng-class="{active: hmc.isWorkspace}"><a ng-click="hmc.transit('workspace')" href="/workspace">Workspace</a></li>
+            <li ng-class="{active: hmc.isHistory}"><a ng-click="hmc.transit('history')" href="/history">History</a></li>
         </ul>
 
         <!--
index 1f78aed..256ae4b 100644 (file)
@@ -1 +1,3 @@
-{{page}}
+<header-menu></header-menu>
+<div class="container">
+</div>
index 21edc3b..21375b2 100644 (file)
                        this.restrict = 'E';
                        this.replace = true;
                        this.templateUrl = 'templates/header-menu.html';
+                       this.controller = 'HeaderMenuController';
+                       this.controllerAs = 'hmc';
+                       this.scope = true;
                    }
                    HeaderMenu.Factory = function () {
                        var directive = function () {
                    return HeaderMenu;
                })();
                directives.HeaderMenu = HeaderMenu;
+               var HeaderMenuController = (function () {
+                   function HeaderMenuController($state) {
+                       this.$state = $state;
+                       this.isExecution = this.$state.current.name === 'execution';
+                       this.isWorkspace = this.$state.current.name === 'workspace';
+                       this.isHistory = this.$state.current.name === 'history';
+                   }
+                   HeaderMenuController.prototype.transit = function (state) {
+                       this.$state.go(state);
+                   };
+                   HeaderMenuController.$inject = ['$state'];
+                   return HeaderMenuController;
+               })();
+               directives.HeaderMenuController = HeaderMenuController;
            })(directives = app.directives || (app.directives = {}));
        })(app || (app = {}));
        var app;
            app.zephyr.controller('commandController', app.directives.CommandController);
            app.zephyr.controller('optionController', app.directives.OptionController);
            app.zephyr.controller('directoryController', app.directives.DirectoryController);
+           app.zephyr.controller('HeaderMenuController', app.directives.HeaderMenuController);
            app.zephyr.directive('headerMenu', app.directives.HeaderMenu.Factory());
            app.zephyr.directive('command', app.directives.Command.Factory());
            app.zephyr.directive('option', app.directives.Option.Factory());
                        this.restrict = 'E';
                        this.replace = true;
                        this.templateUrl = 'templates/header-menu.html';
+                       this.controller = 'HeaderMenuController';
+                       this.controllerAs = 'hmc';
+                       this.scope = true;
                    }
                    HeaderMenu.Factory = function () {
                        var directive = function () {
                    return HeaderMenu;
                })();
                directives.HeaderMenu = HeaderMenu;
+               var HeaderMenuController = (function () {
+                   function HeaderMenuController($state) {
+                       this.$state = $state;
+                       this.isExecution = this.$state.current.name === 'execution';
+                       this.isWorkspace = this.$state.current.name === 'workspace';
+                       this.isHistory = this.$state.current.name === 'history';
+                   }
+                   HeaderMenuController.prototype.transit = function (state) {
+                       this.$state.go(state);
+                   };
+                   HeaderMenuController.$inject = ['$state'];
+                   return HeaderMenuController;
+               })();
+               directives.HeaderMenuController = HeaderMenuController;
            })(directives = app.directives || (app.directives = {}));
        })(app || (app = {}));
        var app;
            app.zephyr.controller('commandController', app.directives.CommandController);
            app.zephyr.controller('optionController', app.directives.OptionController);
            app.zephyr.controller('directoryController', app.directives.DirectoryController);
+           app.zephyr.controller('HeaderMenuController', app.directives.HeaderMenuController);
            app.zephyr.directive('headerMenu', app.directives.HeaderMenu.Factory());
            app.zephyr.directive('command', app.directives.Command.Factory());
            app.zephyr.directive('option', app.directives.Option.Factory());
                        this.restrict = 'E';
                        this.replace = true;
                        this.templateUrl = 'templates/header-menu.html';
+                       this.controller = 'HeaderMenuController';
+                       this.controllerAs = 'hmc';
+                       this.scope = true;
                    }
                    HeaderMenu.Factory = function () {
                        var directive = function () {
                    return HeaderMenu;
                })();
                directives.HeaderMenu = HeaderMenu;
+               var HeaderMenuController = (function () {
+                   function HeaderMenuController($state) {
+                       this.$state = $state;
+                       this.isExecution = this.$state.current.name === 'execution';
+                       this.isWorkspace = this.$state.current.name === 'workspace';
+                       this.isHistory = this.$state.current.name === 'history';
+                   }
+                   HeaderMenuController.prototype.transit = function (state) {
+                       this.$state.go(state);
+                   };
+                   HeaderMenuController.$inject = ['$state'];
+                   return HeaderMenuController;
+               })();
+               directives.HeaderMenuController = HeaderMenuController;
            })(directives = app.directives || (app.directives = {}));
        })(app || (app = {}));
        var app;
            app.zephyr.controller('commandController', app.directives.CommandController);
            app.zephyr.controller('optionController', app.directives.OptionController);
            app.zephyr.controller('directoryController', app.directives.DirectoryController);
+           app.zephyr.controller('HeaderMenuController', app.directives.HeaderMenuController);
            app.zephyr.directive('headerMenu', app.directives.HeaderMenu.Factory());
            app.zephyr.directive('command', app.directives.Command.Factory());
            app.zephyr.directive('option', app.directives.Option.Factory());
                        this.restrict = 'E';
                        this.replace = true;
                        this.templateUrl = 'templates/header-menu.html';
+                       this.controller = 'HeaderMenuController';
+                       this.controllerAs = 'hmc';
+                       this.scope = true;
                    }
                    HeaderMenu.Factory = function () {
                        var directive = function () {
                    return HeaderMenu;
                })();
                directives.HeaderMenu = HeaderMenu;
+               var HeaderMenuController = (function () {
+                   function HeaderMenuController($state) {
+                       this.$state = $state;
+                       this.isExecution = this.$state.current.name === 'execution';
+                       this.isWorkspace = this.$state.current.name === 'workspace';
+                       this.isHistory = this.$state.current.name === 'history';
+                   }
+                   HeaderMenuController.prototype.transit = function (state) {
+                       this.$state.go(state);
+                   };
+                   HeaderMenuController.$inject = ['$state'];
+                   return HeaderMenuController;
+               })();
+               directives.HeaderMenuController = HeaderMenuController;
            })(directives = app.directives || (app.directives = {}));
        })(app || (app = {}));
        var app;
            app.zephyr.controller('commandController', app.directives.CommandController);
            app.zephyr.controller('optionController', app.directives.OptionController);
            app.zephyr.controller('directoryController', app.directives.DirectoryController);
+           app.zephyr.controller('HeaderMenuController', app.directives.HeaderMenuController);
            app.zephyr.directive('headerMenu', app.directives.HeaderMenu.Factory());
            app.zephyr.directive('command', app.directives.Command.Factory());
            app.zephyr.directive('option', app.directives.Option.Factory());
                        this.restrict = 'E';
                        this.replace = true;
                        this.templateUrl = 'templates/header-menu.html';
+                       this.controller = 'HeaderMenuController';
+                       this.controllerAs = 'hmc';
+                       this.scope = true;
                    }
                    HeaderMenu.Factory = function () {
                        var directive = function () {
                    return HeaderMenu;
                })();
                directives.HeaderMenu = HeaderMenu;
+               var HeaderMenuController = (function () {
+                   function HeaderMenuController($state) {
+                       this.$state = $state;
+                       this.isExecution = this.$state.current.name === 'execution';
+                       this.isWorkspace = this.$state.current.name === 'workspace';
+                       this.isHistory = this.$state.current.name === 'history';
+                   }
+                   HeaderMenuController.prototype.transit = function (state) {
+                       this.$state.go(state);
+                   };
+                   HeaderMenuController.$inject = ['$state'];
+                   return HeaderMenuController;
+               })();
+               directives.HeaderMenuController = HeaderMenuController;
            })(directives = app.directives || (app.directives = {}));
        })(app || (app = {}));
        var app;
            app.zephyr.controller('commandController', app.directives.CommandController);
            app.zephyr.controller('optionController', app.directives.OptionController);
            app.zephyr.controller('directoryController', app.directives.DirectoryController);
+           app.zephyr.controller('HeaderMenuController', app.directives.HeaderMenuController);
            app.zephyr.directive('headerMenu', app.directives.HeaderMenu.Factory());
            app.zephyr.directive('command', app.directives.Command.Factory());
            app.zephyr.directive('option', app.directives.Option.Factory());
                        this.restrict = 'E';
                        this.replace = true;
                        this.templateUrl = 'templates/header-menu.html';
+                       this.controller = 'HeaderMenuController';
+                       this.controllerAs = 'hmc';
+                       this.scope = true;
                    }
                    HeaderMenu.Factory = function () {
                        var directive = function () {
                    return HeaderMenu;
                })();
                directives.HeaderMenu = HeaderMenu;
+               var HeaderMenuController = (function () {
+                   function HeaderMenuController($state) {
+                       this.$state = $state;
+                       this.isExecution = this.$state.current.name === 'execution';
+                       this.isWorkspace = this.$state.current.name === 'workspace';
+                       this.isHistory = this.$state.current.name === 'history';
+                   }
+                   HeaderMenuController.prototype.transit = function (state) {
+                       this.$state.go(state);
+                   };
+                   HeaderMenuController.$inject = ['$state'];
+                   return HeaderMenuController;
+               })();
+               directives.HeaderMenuController = HeaderMenuController;
            })(directives = app.directives || (app.directives = {}));
        })(app || (app = {}));
        var app;
            app.zephyr.controller('commandController', app.directives.CommandController);
            app.zephyr.controller('optionController', app.directives.OptionController);
            app.zephyr.controller('directoryController', app.directives.DirectoryController);
+           app.zephyr.controller('HeaderMenuController', app.directives.HeaderMenuController);
            app.zephyr.directive('headerMenu', app.directives.HeaderMenu.Factory());
            app.zephyr.directive('command', app.directives.Command.Factory());
            app.zephyr.directive('option', app.directives.Option.Factory());
                        this.restrict = 'E';
                        this.replace = true;
                        this.templateUrl = 'templates/header-menu.html';
+                       this.controller = 'HeaderMenuController';
+                       this.controllerAs = 'hmc';
+                       this.scope = true;
                    }
                    HeaderMenu.Factory = function () {
                        var directive = function () {
                    return HeaderMenu;
                })();
                directives.HeaderMenu = HeaderMenu;
+               var HeaderMenuController = (function () {
+                   function HeaderMenuController($state) {
+                       this.$state = $state;
+                       this.isExecution = this.$state.current.name === 'execution';
+                       this.isWorkspace = this.$state.current.name === 'workspace';
+                       this.isHistory = this.$state.current.name === 'history';
+                   }
+                   HeaderMenuController.prototype.transit = function (state) {
+                       this.$state.go(state);
+                   };
+                   HeaderMenuController.$inject = ['$state'];
+                   return HeaderMenuController;
+               })();
+               directives.HeaderMenuController = HeaderMenuController;
            })(directives = app.directives || (app.directives = {}));
        })(app || (app = {}));
        var app;
            app.zephyr.controller('commandController', app.directives.CommandController);
            app.zephyr.controller('optionController', app.directives.OptionController);
            app.zephyr.controller('directoryController', app.directives.DirectoryController);
+           app.zephyr.controller('HeaderMenuController', app.directives.HeaderMenuController);
            app.zephyr.directive('headerMenu', app.directives.HeaderMenu.Factory());
            app.zephyr.directive('command', app.directives.Command.Factory());
            app.zephyr.directive('option', app.directives.Option.Factory());
                        this.restrict = 'E';
                        this.replace = true;
                        this.templateUrl = 'templates/header-menu.html';
+                       this.controller = 'HeaderMenuController';
+                       this.controllerAs = 'hmc';
+                       this.scope = true;
                    }
                    HeaderMenu.Factory = function () {
                        var directive = function () {
                    return HeaderMenu;
                })();
                directives.HeaderMenu = HeaderMenu;
+               var HeaderMenuController = (function () {
+                   function HeaderMenuController($state) {
+                       this.$state = $state;
+                       this.isExecution = this.$state.current.name === 'execution';
+                       this.isWorkspace = this.$state.current.name === 'workspace';
+                       this.isHistory = this.$state.current.name === 'history';
+                   }
+                   HeaderMenuController.prototype.transit = function (state) {
+                       this.$state.go(state);
+                   };
+                   HeaderMenuController.$inject = ['$state'];
+                   return HeaderMenuController;
+               })();
+               directives.HeaderMenuController = HeaderMenuController;
            })(directives = app.directives || (app.directives = {}));
        })(app || (app = {}));
        var app;
            app.zephyr.controller('commandController', app.directives.CommandController);
            app.zephyr.controller('optionController', app.directives.OptionController);
            app.zephyr.controller('directoryController', app.directives.DirectoryController);
+           app.zephyr.controller('HeaderMenuController', app.directives.HeaderMenuController);
            app.zephyr.directive('headerMenu', app.directives.HeaderMenu.Factory());
            app.zephyr.directive('command', app.directives.Command.Factory());
            app.zephyr.directive('option', app.directives.Option.Factory());
                        this.restrict = 'E';
                        this.replace = true;
                        this.templateUrl = 'templates/header-menu.html';
+                       this.controller = 'HeaderMenuController';
+                       this.controllerAs = 'hmc';
+                       this.scope = true;
                    }
                    HeaderMenu.Factory = function () {
                        var directive = function () {
                    return HeaderMenu;
                })();
                directives.HeaderMenu = HeaderMenu;
+               var HeaderMenuController = (function () {
+                   function HeaderMenuController($state) {
+                       this.$state = $state;
+                       this.isExecution = this.$state.current.name === 'execution';
+                       this.isWorkspace = this.$state.current.name === 'workspace';
+                       this.isHistory = this.$state.current.name === 'history';
+                   }
+                   HeaderMenuController.prototype.transit = function (state) {
+                       this.$state.go(state);
+                   };
+                   HeaderMenuController.$inject = ['$state'];
+                   return HeaderMenuController;
+               })();
+               directives.HeaderMenuController = HeaderMenuController;
            })(directives = app.directives || (app.directives = {}));
        })(app || (app = {}));
        var app;
            app.zephyr.controller('commandController', app.directives.CommandController);
            app.zephyr.controller('optionController', app.directives.OptionController);
            app.zephyr.controller('directoryController', app.directives.DirectoryController);
+           app.zephyr.controller('HeaderMenuController', app.directives.HeaderMenuController);
            app.zephyr.directive('headerMenu', app.directives.HeaderMenu.Factory());
            app.zephyr.directive('command', app.directives.Command.Factory());
            app.zephyr.directive('option', app.directives.Option.Factory());
                        this.restrict = 'E';
                        this.replace = true;
                        this.templateUrl = 'templates/header-menu.html';
+                       this.controller = 'HeaderMenuController';
+                       this.controllerAs = 'hmc';
+                       this.scope = true;
                    }
                    HeaderMenu.Factory = function () {
                        var directive = function () {
                    return HeaderMenu;
                })();
                directives.HeaderMenu = HeaderMenu;
+               var HeaderMenuController = (function () {
+                   function HeaderMenuController($state) {
+                       this.$state = $state;
+                       this.isExecution = this.$state.current.name === 'execution';
+                       this.isWorkspace = this.$state.current.name === 'workspace';
+                       this.isHistory = this.$state.current.name === 'history';
+                   }
+                   HeaderMenuController.prototype.transit = function (state) {
+                       this.$state.go(state);
+                   };
+                   HeaderMenuController.$inject = ['$state'];
+                   return HeaderMenuController;
+               })();
+               directives.HeaderMenuController = HeaderMenuController;
            })(directives = app.directives || (app.directives = {}));
        })(app || (app = {}));
        var app;
            app.zephyr.controller('commandController', app.directives.CommandController);
            app.zephyr.controller('optionController', app.directives.OptionController);
            app.zephyr.controller('directoryController', app.directives.DirectoryController);
+           app.zephyr.controller('HeaderMenuController', app.directives.HeaderMenuController);
            app.zephyr.directive('headerMenu', app.directives.HeaderMenu.Factory());
            app.zephyr.directive('command', app.directives.Command.Factory());
            app.zephyr.directive('option', app.directives.Option.Factory());
                        this.restrict = 'E';
                        this.replace = true;
                        this.templateUrl = 'templates/header-menu.html';
+                       this.controller = 'HeaderMenuController';
+                       this.controllerAs = 'hmc';
+                       this.scope = true;
                    }
                    HeaderMenu.Factory = function () {
                        var directive = function () {
                    return HeaderMenu;
                })();
                directives.HeaderMenu = HeaderMenu;
+               var HeaderMenuController = (function () {
+                   function HeaderMenuController($state) {
+                       this.$state = $state;
+                       this.isExecution = this.$state.current.name === 'execution';
+                       this.isWorkspace = this.$state.current.name === 'workspace';
+                       this.isHistory = this.$state.current.name === 'history';
+                   }
+                   HeaderMenuController.prototype.transit = function (state) {
+                       this.$state.go(state);
+                   };
+                   HeaderMenuController.$inject = ['$state'];
+                   return HeaderMenuController;
+               })();
+               directives.HeaderMenuController = HeaderMenuController;
            })(directives = app.directives || (app.directives = {}));
        })(app || (app = {}));
        var app;
            app.zephyr.controller('commandController', app.directives.CommandController);
            app.zephyr.controller('optionController', app.directives.OptionController);
            app.zephyr.controller('directoryController', app.directives.DirectoryController);
+           app.zephyr.controller('HeaderMenuController', app.directives.HeaderMenuController);
            app.zephyr.directive('headerMenu', app.directives.HeaderMenu.Factory());
            app.zephyr.directive('command', app.directives.Command.Factory());
            app.zephyr.directive('option', app.directives.Option.Factory());
                        this.restrict = 'E';
                        this.replace = true;
                        this.templateUrl = 'templates/header-menu.html';
+                       this.controller = 'HeaderMenuController';
+                       this.controllerAs = 'hmc';
+                       this.scope = true;
                    }
                    HeaderMenu.Factory = function () {
                        var directive = function () {
                    return HeaderMenu;
                })();
                directives.HeaderMenu = HeaderMenu;
+               var HeaderMenuController = (function () {
+                   function HeaderMenuController($state) {
+                       this.$state = $state;
+                       this.isExecution = this.$state.current.name === 'execution';
+                       this.isWorkspace = this.$state.current.name === 'workspace';
+                       this.isHistory = this.$state.current.name === 'history';
+                   }
+                   HeaderMenuController.prototype.transit = function (state) {
+                       this.$state.go(state);
+                   };
+                   HeaderMenuController.$inject = ['$state'];
+                   return HeaderMenuController;
+               })();
+               directives.HeaderMenuController = HeaderMenuController;
            })(directives = app.directives || (app.directives = {}));
        })(app || (app = {}));
        var app;
            app.zephyr.controller('commandController', app.directives.CommandController);
            app.zephyr.controller('optionController', app.directives.OptionController);
            app.zephyr.controller('directoryController', app.directives.DirectoryController);
+           app.zephyr.controller('HeaderMenuController', app.directives.HeaderMenuController);
            app.zephyr.directive('headerMenu', app.directives.HeaderMenu.Factory());
            app.zephyr.directive('command', app.directives.Command.Factory());
            app.zephyr.directive('option', app.directives.Option.Factory());
                        this.restrict = 'E';
                        this.replace = true;
                        this.templateUrl = 'templates/header-menu.html';
+                       this.controller = 'HeaderMenuController';
+                       this.controllerAs = 'hmc';
+                       this.scope = true;
                    }
                    HeaderMenu.Factory = function () {
                        var directive = function () {
                    return HeaderMenu;
                })();
                directives.HeaderMenu = HeaderMenu;
+               var HeaderMenuController = (function () {
+                   function HeaderMenuController($state) {
+                       this.$state = $state;
+                       this.isExecution = this.$state.current.name === 'execution';
+                       this.isWorkspace = this.$state.current.name === 'workspace';
+                       this.isHistory = this.$state.current.name === 'history';
+                   }
+                   HeaderMenuController.prototype.transit = function (state) {
+                       this.$state.go(state);
+                   };
+                   HeaderMenuController.$inject = ['$state'];
+                   return HeaderMenuController;
+               })();
+               directives.HeaderMenuController = HeaderMenuController;
            })(directives = app.directives || (app.directives = {}));
        })(app || (app = {}));
        var app;
            app.zephyr.controller('commandController', app.directives.CommandController);
            app.zephyr.controller('optionController', app.directives.OptionController);
            app.zephyr.controller('directoryController', app.directives.DirectoryController);
+           app.zephyr.controller('HeaderMenuController', app.directives.HeaderMenuController);
            app.zephyr.directive('headerMenu', app.directives.HeaderMenu.Factory());
            app.zephyr.directive('command', app.directives.Command.Factory());
            app.zephyr.directive('option', app.directives.Option.Factory());
                        this.restrict = 'E';
                        this.replace = true;
                        this.templateUrl = 'templates/header-menu.html';
+                       this.controller = 'HeaderMenuController';
+                       this.controllerAs = 'hmc';
+                       this.scope = true;
                    }
                    HeaderMenu.Factory = function () {
                        var directive = function () {
                    return HeaderMenu;
                })();
                directives.HeaderMenu = HeaderMenu;
+               var HeaderMenuController = (function () {
+                   function HeaderMenuController($state) {
+                       this.$state = $state;
+                       this.isExecution = this.$state.current.name === 'execution';
+                       this.isWorkspace = this.$state.current.name === 'workspace';
+                       this.isHistory = this.$state.current.name === 'history';
+                   }
+                   HeaderMenuController.prototype.transit = function (state) {
+                       this.$state.go(state);
+                   };
+                   HeaderMenuController.$inject = ['$state'];
+                   return HeaderMenuController;
+               })();
+               directives.HeaderMenuController = HeaderMenuController;
            })(directives = app.directives || (app.directives = {}));
        })(app || (app = {}));
        var app;
            app.zephyr.controller('commandController', app.directives.CommandController);
            app.zephyr.controller('optionController', app.directives.OptionController);
            app.zephyr.controller('directoryController', app.directives.DirectoryController);
+           app.zephyr.controller('HeaderMenuController', app.directives.HeaderMenuController);
            app.zephyr.directive('headerMenu', app.directives.HeaderMenu.Factory());
            app.zephyr.directive('command', app.directives.Command.Factory());
            app.zephyr.directive('option', app.directives.Option.Factory());
index 72db138..dc9fef1 100644 (file)
@@ -1,13 +1,12 @@
-<nav class="nav navbar-default">
+<nav class="nav navbar navbar-static-top navbar-inverse">
     <div class="navbar-header">
         <a class="navbar-brand" href="">Zephyr</a>
     </div>
     <div class="navbar-collapse collapse navbar-responsive-collapse">
         <ul class="nav navbar-nav">
-            <li ng-class="{active: isBoard}"><a ng-href="{{boardRef}}">Execution</a></li>
-            <li ng-class="{active: isWorkspace}"><a ng-href="{{workspaceRef}}">Workspace</a></li>
-            <li ng-class="{active: isNotes}"><a ng-href="{{notesRef}}">History</a></li>
-            <li ng-class="{active: isAdmin}" ng-show="isAdminRole"><a ng-href="{{adminPath}}">Admin Page</a></li>
+            <li ng-class="{active: hmc.isExecution}"><a ng-click="hmc.transit('execution')" href="/execution">Execution</a></li>
+            <li ng-class="{active: hmc.isWorkspace}"><a ng-click="hmc.transit('workspace')" href="/workspace">Workspace</a></li>
+            <li ng-class="{active: hmc.isHistory}"><a ng-click="hmc.transit('history')" href="/history">History</a></li>
         </ul>
 
         <!--
index 1f78aed..256ae4b 100644 (file)
@@ -1 +1,3 @@
-{{page}}
+<header-menu></header-menu>
+<div class="container">
+</div>