mirror of
https://github.com/mgerb/mywebsite
synced 2026-01-11 10:22:53 +00:00
90 lines
2.5 KiB
JavaScript
90 lines
2.5 KiB
JavaScript
var app = angular.module('app', ['ngRoute']);
|
|
|
|
app.config(['$routeProvider', '$locationProvider', function($routeProvider, $locationProvider) {
|
|
$locationProvider.html5Mode({
|
|
enabled: true,
|
|
requireBase: false
|
|
});
|
|
|
|
$routeProvider.
|
|
when('/', {
|
|
templateUrl: '/public/view/default.html',
|
|
controller: 'IndexController'
|
|
}).
|
|
when('/sensors', {
|
|
templateUrl: '/public/view/sensors.html',
|
|
controller: 'SensorsController'
|
|
}).
|
|
when('/sensors/:location', {
|
|
templateUrl: '/public/view/sensor_info.html',
|
|
controller: 'SensorInfoController'
|
|
}).
|
|
when('/post/:postName', {
|
|
templateUrl: '/public/view/post.html',
|
|
controller: 'PostController'
|
|
}).
|
|
when('/discord', {
|
|
redirect: 'https://discordapp.com/invite/0Z2tzxKECEj2BHwj'
|
|
}).
|
|
otherwise({
|
|
templateUrl: '/public/view/404.html'
|
|
});
|
|
}]);
|
|
|
|
app.controller('IndexController', function($scope, $http) {
|
|
|
|
var title = ["1-4-16", "1-1-16", "12-29-15", "12-18-15", "10-28-15", "8-13-15", "7-28-15", "7-21-15"];
|
|
$scope.posts = [];
|
|
|
|
for (p in title) {
|
|
|
|
var postName = title[p];
|
|
|
|
//use anonymous function calls to pass
|
|
//postName to the http callback function
|
|
$http({
|
|
method: 'GET',
|
|
url: '/public/posts/' + postName + '.html'
|
|
}).then((function(postName) {
|
|
return function(response) {
|
|
console.log(postName);
|
|
|
|
var html = response.data;
|
|
var partial = {};
|
|
|
|
partial.name = postName;
|
|
partial.title = $(html).find('#title').html();
|
|
partial.date = $(html).find('#date').html();
|
|
partial.intro = $(html).find('#intro').html();
|
|
|
|
$scope.posts.push(partial);
|
|
}
|
|
})(postName), function errorCallback(response) {
|
|
// called asynchronously if an error occurs
|
|
// or server returns response with an error status.
|
|
console.log("Error Loading Post");
|
|
});
|
|
}
|
|
|
|
});
|
|
|
|
app.controller('SensorInfoController', function($scope, $route, $routeParams) {
|
|
|
|
$scope.location = $routeParams.location;
|
|
|
|
});
|
|
|
|
app.controller('SensorsController', function($scope) {
|
|
|
|
$scope.message = 'This is Show orders screen';
|
|
|
|
});
|
|
|
|
|
|
//handle each post page after individual posts are selected
|
|
app.controller('PostController', function($scope, $route, $routeParams) {
|
|
|
|
$scope.post = "/public/posts/" + $routeParams.postName + ".html";
|
|
|
|
});
|