//window.rootUrl=window.location.host; window.rootUrl='muchang.bbscodes.com'; define(['angularAMD', 'angular-ui-router', 'angular-resource'], function (angularAMD) { 'use strict'; var app = angular.module("webApp", ['ui.router', 'ngResource']); app.run(function ($rootScope) { /** * @return {null} */ var GetQueryString = function (name) { var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)"); var r = window.location.search.substr(1).match(reg); if (r !== null){ return unescape(r[2]); } return null; }; var token = GetQueryString("token"); if(token !== null){ try{ var tempStorage=localStorage.getItem('user')|| ''; if(tempStorage){ localStorage.removeItem('user') } localStorage.setItem("user", token); }catch(e) { alert('IOS用户需要退出浏览器隐私模式,重新打开才能访问,苹果官方要求,敬请谅解!'); window.close(); return false; } } // window.tokenTemp=window.location.search; // var tempLength=window.tokenTemp.indexOf("="); // var tempName=window.tokenTemp.substr(1,tempLength-1); // window.tokenTemp=window.tokenTemp.substr(tempLength+1,window.tokenTemp.length-tempLength-1); // if(tempName==="token"){ // localStorage.setItem("user",window.tokenTemp); // } $rootScope.loadingStr="
"; $rootScope.rootUser = false; $rootScope.curState = 'root.home';//首页显示当前页 // 监听路由变化 $rootScope.$on('$stateChangeStart', function (event, toState) { $rootScope.curState = toState.name; // var noNeedLogin = ['auth.login', 'auth.register', 'auth.resetPsd', 'oneLogin']; // if (noNeedLogin.indexOf(toState.name) < 0 && !User.checkAuth()) { // $state.go("auth.login");//跳转到登录页 // event.preventDefault(); //阻止默认事件,即原本页面的加载 // } }); $rootScope.verifyUrl = "http://"+rootUrl+"/wapi/util/getVerify"; }); //常量设置 app.constant('ENV', { 'REGULAR_MONEY': /^\d*(\.\d{1,2}){0,1}$/, 'REGULAR_MOBILE': /^1\d{10}$/, 'REGULAR_IDCARD': /(^\d{15}$)|(^\d{17}(\d|[X,x])$)/, 'imgSrc':'http://'+rootUrl, // 'API_URL': 'http://localhost:3000/wapi',//http://localhost:3000 'API_URL': "http://"+rootUrl+"/home/web/index.php?r=", 'default_avatar': 'img/nav.png' } ); app.config(function ($stateProvider, $urlRouterProvider) { var ver = '0.1.23'; $stateProvider .state('root', { abstract: true, url: '', views: { 'header': angularAMD.route({ templateUrl: 'templates/home/header.html?ver=' + ver, controller: 'HeaderCtrl', controllerUrl: 'controller/homeCtrl' }), 'footer': angularAMD.route({ templateUrl: 'templates/home/footer.html?ver=' + ver, controller: 'HeaderCtrl', controllerUrl: 'controller/homeCtrl' }) } }) .state('root.home', { url: "/home", views: { '@': angularAMD.route({ templateUrl: 'templates/home/home.html?ver=' + ver, controller: 'homeCtrl', controllerUrl: 'controller/homeCtrl' }) } }) .state('root.market', { url: "/market", views: { '@': angularAMD.route({ templateUrl: 'templates/market/list.html?ver=' + ver, controller: 'marketListCtrl', controllerUrl: 'controller/marketCtrl' }) } }) .state('root.market.detail', { url: "/detail/:pid/:title/:imgSrc", params: {pid: null,title:null,imgSrc:null}, views: { '@': angularAMD.route({ templateUrl: 'templates/market/detail.html?ver=' + ver, controller: 'marketDetailCtrl', controllerUrl: 'controller/marketCtrl' }) } }) .state('root.news', { url: "/news/:passNum", views: { '@': angularAMD.route({ templateUrl: 'templates/news/notice.html?ver=' + ver, controller: 'newsCtrl', controllerUrl: 'controller/homeCtrl' }) } }) .state('root.news.detail', { url: "/detail/:id/:type", params: {id: null}, views: { '@': angularAMD.route({ templateUrl: 'templates/news/detail.html?ver=' + ver, controller: 'detailCtrl', controllerUrl: 'controller/homeCtrl' }) } }) //攻略资料 .state('root.strategy', { url: "/strategy/:currentTap/:introValue/:id", views: { '@': angularAMD.route({ templateUrl: 'templates/strategy/introduce.html?ver=' + ver, controller: 'strategyCtrl', controllerUrl: 'controller/homeCtrl' }) } }) //用户信息-注册 .state('root.register', { url: "/register/:ref", views: { '@': angularAMD.route({ templateUrl: 'templates/auth/register.html?ver=' + ver, controller: 'registerCtrl', controllerUrl: 'controller/homeCtrl' }) } }) //用户信息-登陆 .state('root.auth', { url: "/auth/:token", views: { '@': angularAMD.route({ templateUrl: 'templates/auth/login.html?ver=' + ver, controller: 'loginCtrl', controllerUrl: 'controller/homeCtrl' }) } }) //用户信息-个人中心 .state('root.userCenter', { url: "/userCenter:openAuth/:childCurrent", views: { '@': angularAMD.route({ templateUrl: 'templates/auth/userCenter.html?ver=' + ver, controller: 'userCenterCtrl', controllerUrl: 'controller/userCtrl' }) } }) //帮助中心 .state('root.help', { url: "/help/:currentTap", views: { '@': angularAMD.route({ templateUrl: 'templates/help/home.html?ver=' + ver, controller: 'helpCtrl', controllerUrl: 'controller/homeCtrl' }) } }) //关于我们 .state('root.about', { url: "/about/:curTabs/:title", views: { '@': angularAMD.route({ templateUrl: 'templates/about/home.html?ver=' + ver, controller: 'aboutCtrl', controllerUrl: 'controller/homeCtrl' }) } }) ; $urlRouterProvider.otherwise('/home'); }); app.config(function ($httpProvider) { $httpProvider.defaults.headers.post['Content-Type'] = 'application/x-www-form-urlencoded;charset=utf-8'; $httpProvider.defaults.headers.put['Content-Type'] = 'application/x-www-form-urlencoded;charset=utf-8'; var param = function (obj) { var query = '', name, value, fullSubName, subName, subValue, innerObj, i; for (name in obj) { value = obj[name]; if (value instanceof Array) { for (i = 0; i < value.length; ++i) { subValue = value[i]; fullSubName = name + '[' + i + ']'; innerObj = {}; innerObj[fullSubName] = subValue; query += param(innerObj) + '&'; } } else if (value instanceof Object) { for (subName in value) { subValue = value[subName]; fullSubName = name + '[' + subName + ']'; innerObj = {}; innerObj[fullSubName] = subValue; query += param(innerObj) + '&'; } } else if (value !== undefined && value !== null) query += encodeURIComponent(name) + '=' + encodeURIComponent(value) + '&'; } return query.length ? query.substr(0, query.length - 1) : query; }; $httpProvider.defaults.transformRequest = [function (data) { return angular.isObject(data) && String(data) !== '[object File]' ? param(data) : data; }]; /*$httpProvider.defaults.headers.post['X-CSRFToken'] = 11;*/ // $httpProvider.interceptors.push('TokenAuth'); }); return angularAMD.bootstrap(app); });