2026-05-29 19:54:56 +08:00

256 lines
7.3 KiB
JavaScript
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

//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="<div class='loadingBox'><img src='assets/img/loading1.gif'></div>";
$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);
});