| 
									
										
										
										
											2014-12-06 11:24:55 +00:00
										 |  |  | angular.module('app', ['ngMaterial', 'navigation-modules', 'navigation-guides', 'code']) | 
					
						
							| 
									
										
										
										
											2014-12-04 14:02:03 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | .config(function($locationProvider) { | 
					
						
							|  |  |  |   $locationProvider.html5Mode(true); | 
					
						
							|  |  |  | }) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | .controller('NavController', ['$scope', '$location', 'MODULES', 'GUIDES', | 
					
						
							|  |  |  |                   function($scope, $location, MODULES, GUIDES) { | 
					
						
							|  |  |  |   var that = this; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |   this.areas = [ | 
					
						
							|  |  |  |     { name: 'Guides', sections: [ { pages: GUIDES.pages } ] }, | 
					
						
							|  |  |  |     { name: 'Modules', sections: MODULES.sections } | 
					
						
							|  |  |  |   ]; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |   this.updateCurrentPage = function(path) { | 
					
						
							|  |  |  |     path = path.replace(/^\//, ''); | 
					
						
							|  |  |  |     console.log('path', path); | 
					
						
							|  |  |  |     this.currentPage = null; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     this.areas.forEach(function(area) { | 
					
						
							|  |  |  |       area.sections.forEach(function(section) { | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |         // Short-circuit out if the page has been found
 | 
					
						
							|  |  |  |         if ( that.currentPage ) { | 
					
						
							|  |  |  |           return; | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |         if (section.path === path) { | 
					
						
							|  |  |  |           console.log('found!'); | 
					
						
							|  |  |  |           that.currentPage = section; | 
					
						
							|  |  |  |         } else { | 
					
						
							|  |  |  |           section.pages.forEach(function(page) { | 
					
						
							|  |  |  |             if (page.path === path) { | 
					
						
							|  |  |  |               that.currentPage = page; | 
					
						
							|  |  |  |             } | 
					
						
							|  |  |  |           }); | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |       }); | 
					
						
							|  |  |  |     }); | 
					
						
							|  |  |  |   }; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |   $scope.$watch( | 
					
						
							|  |  |  |     function getLocationPath() { return $location.path(); }, | 
					
						
							|  |  |  |     function handleLocationPathChange(path) { that.updateCurrentPage(path); } | 
					
						
							|  |  |  |   ); | 
					
						
							|  |  |  | }]); |