2025-06-27 10:04:22 +08:00

70 lines
2.3 KiB
JavaScript

'use strict';
/* Controllers */
angular.module('app')
.controller('AppCtrl', ['$scope', '$localStorage', '$window',
function ($scope, $localStorage, $window
) {
// add 'ie' classes to html
var isIE = !!navigator.userAgent.match(/MSIE/i);
isIE && angular.element($window.document.body).addClass('ie');
isSmartDevice( $window ) && angular.element($window.document.body).addClass('smart');
// config
$scope.app = {
// name: '食品安全风险监测数据库',
name: '食品安全综合指数和风险预警数据库',
// name: '基于食品安全抽检数据的农药残留累积风险评估系统',
version: '1.0.0',
// for chart colors
color: {
primary: '#7266ba',
info: '#23b7e5',
success: '#27c24c',
warning: '#fad733',
danger: '#f05050',
light: '#e8eff0',
dark: '#3a3f51',
black: '#1c2b36'
},
settings: {
themeID: 1,
navbarHeaderColor: 'bg-black',
navbarCollapseColor: 'bg-white-only',
asideColor: 'bg-black',
headerFixed: true,
asideFixed: false,
asideFolded: false,
asideDock: false,
container: false
}
}
// save settings to local storage
if ( angular.isDefined($localStorage.settings) ) {
$scope.app.settings = $localStorage.settings;
} else {
$localStorage.settings = $scope.app.settings;
}
$scope.$watch('app.settings', function(){
if( $scope.app.settings.asideDock && $scope.app.settings.asideFixed ){
// aside dock and fixed must set the header fixed.
$scope.app.settings.headerFixed = true;
}
// save to local storage
$localStorage.settings = $scope.app.settings;
}, true);
function isSmartDevice( $window )
{
// Adapted from http://www.detectmobilebrowsers.com
var ua = $window['navigator']['userAgent'] || $window['navigator']['vendor'] || $window['opera'];
// Checks for iOs, Android, Blackberry, Opera Mini, and Windows mobile devices
return (/iPhone|iPod|iPad|Silk|Android|BlackBerry|Opera Mini|IEMobile/).test(ua);
}
}]);