Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
A
app_whsx
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
王君
app_whsx
Commits
19712671
Commit
19712671
authored
Aug 23, 2021
by
王君
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
update privacy policy
parent
6424e3f7
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
942 additions
and
698 deletions
+942
-698
index.html
html/index.html
+33
-698
index_1.html
html/index_1.html
+717
-0
privacy_policy.html
html/privacy_policy.html
+140
-0
privacy_policy_farme.html
html/privacy_policy_farme.html
+52
-0
No files found.
html/index.html
View file @
19712671
<!doctype html>
<!DOCTYPE html>
<html>
<html
lang=
"en"
>
<head>
<head>
<meta
charset=
"utf-8"
>
<meta
charset=
"UTF-8"
>
<meta
name=
"viewport"
content=
"maximum-scale=1.0,minimum-scale=1.0,user-scalable=0,width=device-width,initial-scale=1.0"
/>
<meta
http-equiv=
"X-UA-Compatible"
content=
"IE=edge"
>
<meta
name=
"format-detection"
content=
"telephone=no,email=no,date=no,address=no"
>
<meta
name=
"viewport"
content=
"width=device-width, initial-scale=1.0"
>
<link
rel=
"stylesheet"
type=
"text/css"
href=
"../css/aui.2.0.css"
/>
<title>
index
</title>
<link
rel=
"stylesheet"
type=
"text/css"
href=
"../css/app.css"
/>
<link
rel=
"stylesheet"
type=
"text/css"
href=
"../css/aui.2.0.css"
/>
</head>
<link
rel=
"stylesheet"
type=
"text/css"
href=
"../css/app.css"
/>
<style
type=
"text/css"
>
</head>
html
,
<body>
body
{
<script
type=
"text/javascript"
src=
"../script/api.js"
></script>
height
:
100%
;
}
.footbtn
{
position
:
relative
;
z-index
:
20
;
top
:
5px
;
width
:
1rem
;
}
.aui-bar-tab-label
{
color
:
#585858
;
margin-top
:
0.5em
;
font-size
:
10px
!important
;
margin-bottom
:
0.4em
;
}
/*.aui-bar-tab-label{
margin-top: 10px;
}*/
</style>
<body>
<!--广告位开始-->
<!--<div class="" id="launch" onclick="open_win('interact','interact/interact.html',false)">
<div style="width:30px;height: 30px;position: absolute;top: 0;right: 0;z-index: 100;font-size: 26px;color: #f00" id="ctime"></div>
<img style="height: 100%;width: 100%;position: absolute;top: 0;z-index: 99;" src="" />
</div>-->
<!--广告位结束-->
<footer
class=
"aui-bar aui-bar-tab"
id=
"aui-footer"
>
<div
class=
"aui-bar-tab-item aui-active"
tapmode
>
<img
id=
"foot-home"
class=
"footbtn"
src=
"../res/btn/foot-home-active.png"
/>
<div
class=
"aui-bar-tab-label"
>
首页
</div>
</div>
<!--<div class="aui-bar-tab-item" tapmode>
<img id="foot-dynamic" class="footbtn" src="../res/btn/foot-dynamic.png" />
<div class="aui-bar-tab-label">
咨询
</div>
</div>-->
<div
class=
"aui-bar-tab-item"
tapmode
>
<img
id=
"foot-huodong"
class=
"footbtn"
src=
"../res/btn/foot-huodong.png"
/>
<div
class=
"aui-bar-tab-label"
>
互动
</div>
</div>
<div
class=
"aui-bar-tab-item"
tapmode
>
<img
id=
"foot-sheshi"
class=
"footbtn"
src=
"../res/btn/foot-sheshi.png"
/>
<div
class=
"aui-bar-tab-label"
>
设施
</div>
</div>
<div
class=
"aui-bar-tab-item"
tapmode
>
<img
id=
"foot-my"
class=
"footbtn"
src=
"../res/btn/foot-my.png"
/>
<div
class=
"aui-bar-tab-label"
>
我的
</div>
</div>
</footer>
</body>
<script
type=
"text/javascript"
src=
"../script/api.js"
></script>
<script
type=
"text/javascript"
src=
"../script/zepto.js"
></script>
<script
type=
"text/javascript"
src=
"../script/zepto.js"
></script>
<script
type=
"text/javascript"
src=
"../script/aui-tab.js"
></script>
<script
type=
"text/javascript"
src=
"../script/aui-tab.js"
></script>
<script
type=
"text/javascript"
src=
"../script/common.js"
></script>
<script
type=
"text/javascript"
src=
"../script/common.js"
></script>
<script
type=
"text/javascript"
src=
"../script/constants.js"
></script>
<script
type=
"text/javascript"
src=
"../script/constants.js"
></script>
<script
type=
"text/javascript"
>
<script
type=
"text/javascript"
>
var
body_h
,
footer_h
,
frame_name
,
bmap
,
footerid
;
//启动隐私
var
ajpush
;
var
currPage
=
0
;
//api.closeWidget()关闭应用
$api
.
setStorage
(
'map_open'
,
false
)
//
apiready
=
function
()
{
// 设置导航栏及其点击回调
var
first_run
=
$api
.
getStorage
(
'first_run'
);
var
footer_tab
=
new
auiTab
({
if
(
first_run
!=
500
){
element
:
document
.
getElementById
(
"aui-footer"
)
api
.
openWin
({
},
function
(
ret
)
{
name
:
'privacy_policy'
,
if
(
ret
)
{
url
:
'./privacy_policy.html'
,
// 切换frame
reload
:
true
toggleTab
(
ret
.
index
);
}
});
// 切换frame
function
toggleTab
(
index
){
console
.
log
(
$api
.
getStorage
(
'map_open'
))
var
maps_open
=
$api
.
getStorage
(
'map_open'
);
if
(
maps_open
===
'true'
)
{
// console.log('我要广播了')
api
.
sendEvent
({
name
:
'closemap'
});
}
else
if
(
frame_name
==
'my'
)
{
api
.
setFrameAttr
({
name
:
frame_name
,
hidden
:
true
});
});
}
else
{
}
else
{
api
.
closeFrame
({
api
.
openWin
({
name
:
frame_name
name
:
'index_1'
,
url
:
'./index_1.html'
,
reload
:
true
});
});
}
}
var
footid
=
'#'
+
footerid
;
}
console
.
log
(
footid
);
</script>
var
src
=
'../res/btn/'
+
footerid
+
'.png'
;
</body>
$
(
footid
).
attr
(
'src'
,
src
)
</html>
$
(
'.aui-bar-tab-label'
).
css
(
'color'
,
'#585858'
);
\ No newline at end of file
if
(
index
==
0
)
{
open_home
()
}
/*if(index == 1) {
open_dynamic()
}*/
if
(
index
==
2
)
{
open_venue
()
}
if
(
index
==
1
)
{
open_interact
()
}
if
(
index
==
3
)
{
open_my
()
}
}
apiready
=
function
()
{
var
safeArea
=
api
.
safeArea
;
$
(
"#aui-footer"
).
css
({
'padding-bottom'
:
api
.
safeArea
.
bottom
+
'px'
})
//获取设备型号
getposition
(
function
(
ret
)
{
var
token
=
$api
.
getStorage
(
'token'
);
var
systemType
=
api
.
systemType
;
var
deviceId
=
api
.
deviceId
;
var
deviceModel
=
api
.
deviceModel
;
var
deviceName
=
api
.
deviceName
;
var
channel
=
api
.
channel
;
var
lon
=
ret
.
lon
;
var
lat
=
ret
.
lat
;
if
(
token
){
get_data
(
'/api/user/device_statistics'
,
'post'
,
{
token
:
token
,
lon
:
lon
,
lat
:
lat
,
systemType
:
systemType
,
deviceId
:
deviceId
,
deviceModel
:
deviceModel
,
deviceName
:
deviceName
,
channel
:
channel
},
function
(
ret
)
{
console
.
log
(
JSON
.
stringify
(
ret
))
});
}
})
// 广告位结束
api
.
setStatusBarStyle
({
style
:
'light'
});
// bmap = api.require('bMap');
body_h
=
$api
.
offset
(
$api
.
dom
(
'body'
)).
h
;
footer_h
=
$api
.
offset
(
$api
.
byId
(
'aui-footer'
)).
h
;
// 打开首页HomeFrame
open_home
()
$
(
"#foot-home"
).
next
(
'.aui-bar-tab-label'
).
css
(
'color'
,
'#3D60F6'
);
// 如果点击广告,打开广告window
console
.
log
(
JSON
.
stringify
(
api
.
pageParam
));
if
(
api
.
pageParam
.
from
==
'launchImageAd'
){
openUrl
(
api
.
pageParam
.
url
,
api
.
pageParam
.
content
);
}
// 退出键监听
keyback
()
// 注册监听事件
jpushInit
()
// 缓存未读消息初始化
initIndexMsgCache
();
// 监听重新绑定监听事件 -- 修改推送策略和退出登陆后重新绑定
rebindPush
();
};
function
rebindPush
()
{
api
.
addEventListener
({
name
:
'event_push_rebind'
},
function
(
ret
,
err
)
{
jpushInit
();
});
}
function
openUrl
(
url
,
content
){
api
.
setFullScreen
({
fullScreen
:
false
});
if
(
content
==
'活动'
){
openWin_activity
(
url
);
}
else
if
(
content
==
'文章'
){
openWin_article_detail
(
url
);
}
else
if
(
content
==
'专题'
){
openHd_url
(
url
);
}
else
if
(
content
==
'单页'
){
open_win
(
url
);
}
}
function
keyback
()
{
//退出事件监听
var
keyback_num
=
0
;
api
.
addEventListener
({
name
:
'keyback'
},
function
(
ret
,
err
)
{
if
(
keyback_num
)
{
api
.
closeWidget
({
silent
:
true
})
}
api
.
toast
({
msg
:
'再按一次退出应用'
});
keyback_num
++
;
});
}
function
jpushInit
()
{
//极光初始化
ajpush
=
api
.
require
(
'ajpush'
);
//获取设备的标识RegistrationID
ajpush
.
getRegistrationId
(
function
(
ret
)
{
var
registrationId
=
ret
.
id
;
$api
.
setStorage
(
'ajpushRegistrationId'
,
registrationId
)
console
.
log
(
registrationId
);
});
ajpush
.
init
(
function
(
ret
)
{
if
(
ret
&&
ret
.
status
)
{
var
stau
=
ret
.
status
==
"1"
?
"SUC"
:
"FAIL"
;
console
.
log
(
'JPush-设备绑定:'
+
stau
);
}
});
//绑定别名 默认接受推送,绑定未登录别名
var
tag
=
Config
.
getConstant
(
"TAG_PUSH_ALLOW"
);
console
.
log
(
tag
);
var
alias
=
Config
.
getConstant
(
"ALIAS_PUSH_NOLOGIN"
);
if
(
$api
.
getStorage
(
'receivepush'
)
&&
$api
.
getStorage
(
'receivepush'
).
receivepush
==
"0"
)
{
tag
=
Config
.
getConstant
(
"TAG_PUSH_CLOSE"
);
}
if
(
$api
.
getStorage
(
'userinfo'
)
&&
$api
.
getStorage
(
'userinfo'
).
uid
)
{
alias
=
$api
.
getStorage
(
'userinfo'
).
uid
;
};
ajpush
.
setAlias
({
alias
:
alias
},
function
(
ret
)
{
var
statusCode
=
ret
.
statusCode
;
console
.
log
(
JSON
.
stringify
(
ret
));
});
ajpush
.
setTags
({
tags
:[
tag
],
sequence
:
101
},
function
(
ret
)
{
var
statusCode
=
ret
.
statusCode
;
console
.
log
(
"tags绑定结果:"
+
JSON
.
stringify
(
ret
));
});
/*var param = {alias:alias,tags:[tag]};
ajpush.bindAliasAndTags(param,function(ret,err) {
var statusCode = ret.statusCode;
console.log(JSON.stringify(ret),JSON.stringify(err));
});*/
/*ajpush.bindAliasAndTags({
alias:alias,
tags:[tag]
}, function(ret) {
var statusCode = ret.statusCode == "0" ? "SUC" : "FAIL";
console.log('JPush-别名绑定:' + alias + ' == ' + tag + ' == ' + statusCode);
});*/
/**
* 接收前台推送信息 -- 透传消息,不经过通知栏
* 要求必须极光以消息类型推送,如果以通知类型推送,直接走通知栏,不走该回调
*/
ajpush
.
setListener
(
function
(
ret
,
err
)
{
console
.
log
(
"ajpush"
);
var
id
=
ret
.
id
;
var
title
=
ret
.
title
;
var
content
=
ret
.
content
;
var
extra
=
ret
.
extra
;
console
.
log
(
'推送抵达:'
+
JSON
.
stringify
(
ret
));
// 1023之前老逻辑
/*if(extra && extra.news_id) {
openWin_article_detail(extra.news_id)
}
if(extra && extra.message) {
// openWin('message', './my/message.html')
}*/
// 1023重新定义推送逻辑
if
(
extra
&&
extra
.
code
)
{
var
code
=
extra
.
code
.
substring
(
0
,
3
);
/*
五种推送大类:首页,动态,设施,互动,我的
*/
switch
(
code
)
{
case
Config
.
getConstant
(
"TYPE_PUSH_HOME"
):
// 首页
/*
首页的推送逻辑中,只有首页列表的推送会引起下部导航栏点亮
其余推送发送事件到home_main中,由home_main管理,和首页icon没有级联关系
*/
if
(
extra
.
code
==
Config
.
getConstant
(
"TYPE_PUSH_HOME_HOT"
))
{
toggleNewMsgFlag
(
$
(
"#foot-home"
).
parent
(),
false
,
code
,
extra
);
}
else
{
// 向main_frame发送事件,由main_frame控制消息提醒
api
.
sendEvent
({
name
:
'event_home_notice'
,
extra
:
extra
});
}
break
;
case
Config
.
getConstant
(
"TYPE_PUSH_DYNA"
):
// 动态
toggleNewMsgFlag
(
$
(
"#foot-dynamic"
).
parent
(),
false
,
code
,
extra
);
break
;
case
Config
.
getConstant
(
"TYPE_PUSH_EQU"
):
// 设施
toggleNewMsgFlag
(
$
(
"#foot-sheshi"
).
parent
(),
false
,
code
,
extra
);
break
;
case
Config
.
getConstant
(
"TYPE_PUSH_ACT"
):
// 互动
toggleNewMsgFlag
(
$
(
"#foot-huodong"
).
parent
(),
false
,
code
,
extra
);
break
;
case
Config
.
getConstant
(
"TYPE_PUSH_MINE"
):
// 我的
// 向个人中心设置页面发送事件
api
.
sendEvent
({
name
:
'event_my_notice'
,
extra
:
extra
});
toggleNewMsgFlag
(
$
(
"#foot-my"
).
parent
(),
false
,
code
,
extra
);
break
;
default
:
break
;
}
//发送到通知栏 -- 现在所有透传都发送到通知栏,有变更再调整
api
.
getPrefs
({
key
:
Config
.
getConstant
(
"CACHE_SETTING_PUSH"
)
},
function
(
ret
,
err
)
{
if
(
ret
&&
ret
.
value
&&
ret
.
value
==
'0'
)
{
// 关闭推送
}
else
{
// 允许推送
// api.notification({
// notify: {
// title:"文化随行",
// content: content,
// extra:extra
// }
// }, function(ret, err) {
// var id = ret.id;
// });
}
})
}
});
/**
* 安卓接收推送"通知",点击通知栏后回调
* 暂时推送都从透传走,自定义发送通知到通知栏,这里暂不处理
*/
api
.
addEventListener
({
name
:
'appintent'
},
function
(
ret
)
{
// alert('Android点击通知栏推送进入:'+JSON.stringify(ret));
if
(
ret
&&
ret
.
appParam
.
ajpush
)
{
var
ajpush
=
ret
.
appParam
.
ajpush
;
var
id
=
ajpush
.
id
;
var
title
=
ajpush
.
title
;
var
content
=
ajpush
.
content
;
var
extra
=
ajpush
.
extra
;
// alert(JSON.stringify(extra));
notificationClicked
(
extra
);
}
});
//打开my
api
.
addEventListener
({
name
:
'openmy'
},
function
(
ret
,
err
)
{
console
.
log
(
'我收到广播了openmy'
)
open_my
()
})
/**
* 点击通知栏进入后的回调
*/
api
.
addEventListener
({
name
:
'noticeclicked'
},
function
(
ret
,
err
)
{
// 判断是否推送内容
if
(
ret
&&
ret
.
value
&&
ret
.
value
.
extra
)
{
// alert(JSON.stringify(ret.value.extra));
// 处理点击回调
notificationClicked
(
ret
.
value
.
extra
);
}
});
//监听应用进入后台,通知jpush暂停事件
api
.
addEventListener
({
name
:
'pause'
},
function
(
ret
,
err
)
{
onPause
();
})
//监听应用恢复到前台,通知jpush恢复事件
api
.
addEventListener
({
name
:
'resume'
},
function
(
ret
,
err
)
{
onResume
();
})
}
//统计-app恢复
function
onResume
()
{
ajpush
.
onResume
();
console
.
log
(
'JPush onResume'
);
}
//统计-app暂停
function
onPause
()
{
ajpush
.
onPause
();
console
.
log
(
'JPush onPause'
);
}
function
open_home
()
{
var
btnid
=
"#foot-home"
;
$
(
btnid
).
attr
(
'src'
,
'../res/btn/foot-home-active.png'
)
$
(
btnid
).
next
(
'.aui-bar-tab-label'
).
css
(
'color'
,
'#3D60F6'
);
api
.
openFrame
({
name
:
'home'
,
url
:
'home.html'
,
bounces
:
false
,
rect
:
{
x
:
0
,
y
:
0
,
w
:
'auto'
,
h
:
body_h
-
footer_h
},
vScrollBarEnabled
:
false
})
frame_name
=
'home'
;
footerid
=
'foot-home'
;
toggleNewMsgFlag
(
$
(
"#foot-home"
).
parent
(),
true
,
Config
.
getConstant
(
"TYPE_PUSH_HOME"
),
null
);
}
function
open_dynamic
()
{
var
btnid
=
"#foot-dynamic"
;
$
(
btnid
).
attr
(
'src'
,
'../res/btn/foot-dynamic-active.png'
)
$
(
btnid
).
next
(
'.aui-bar-tab-label'
).
css
(
'color'
,
'#3D60F6'
);
api
.
openFrame
({
name
:
'dynamic'
,
url
:
'dynamic.html'
,
bounces
:
false
,
pageParam
:{
from
:
"index"
},
rect
:
{
x
:
0
,
y
:
0
,
w
:
'auto'
,
h
:
body_h
-
footer_h
},
reload
:
true
,
vScrollBarEnabled
:
false
})
frame_name
=
'dynamic'
;
footerid
=
'foot-dynamic'
;
toggleNewMsgFlag
(
$
(
"#foot-dynamic"
).
parent
(),
true
,
Config
.
getConstant
(
"TYPE_PUSH_DYNA"
),
null
);
}
function
open_venue
()
{
var
btnid
=
"#foot-sheshi"
;
$
(
btnid
).
attr
(
'src'
,
'../res/btn/foot-sheshi-active.png'
)
$
(
btnid
).
next
(
'.aui-bar-tab-label'
).
css
(
'color'
,
'#3D60F6'
);
api
.
openFrame
({
name
:
'venue'
,
url
:
'venue.html'
,
bounces
:
false
,
rect
:
{
x
:
0
,
y
:
0
,
w
:
'auto'
,
h
:
body_h
-
footer_h
},
reload
:
true
,
vScrollBarEnabled
:
false
})
frame_name
=
'venue'
;
footerid
=
'foot-sheshi'
;
toggleNewMsgFlag
(
$
(
"#foot-sheshi"
).
parent
(),
true
,
Config
.
getConstant
(
"TYPE_PUSH_EQU"
),
null
);
}
function
open_interact
()
{
var
btnid
=
"#foot-huodong"
;
$
(
btnid
).
attr
(
'src'
,
'../res/btn/foot-huodong-active.png'
)
$
(
btnid
).
next
(
'.aui-bar-tab-label'
).
css
(
'color'
,
'#3D60F6'
);
api
.
openFrame
({
name
:
'interact'
,
url
:
'interact/interact.html'
,
bounces
:
false
,
rect
:
{
x
:
0
,
y
:
0
,
w
:
'auto'
,
h
:
body_h
-
footer_h
},
reload
:
true
,
vScrollBarEnabled
:
false
})
frame_name
=
'activity'
;
footerid
=
'foot-huodong'
;
// 切换消息未读红点
toggleNewMsgFlag
(
$
(
"#foot-huodong"
).
parent
(),
true
,
Config
.
getConstant
(
"TYPE_PUSH_ACT"
),
null
);
}
function
open_my
()
{
var
btnid
=
"#foot-my"
;
$
(
btnid
).
attr
(
'src'
,
'../res/btn/foot-my-active.png'
)
$
(
btnid
).
next
(
'.aui-bar-tab-label'
).
css
(
'color'
,
'#3D60F6'
);
api
.
openFrame
({
name
:
'my'
,
url
:
'my.html'
,
bounces
:
false
,
rect
:
{
x
:
0
,
y
:
0
,
w
:
'auto'
,
h
:
body_h
-
footer_h
},
reload
:
true
,
vScrollBarEnabled
:
false
})
frame_name
=
'my'
;
footerid
=
'foot-my'
;
toggleNewMsgFlag
(
$
(
"#foot-my"
).
parent
(),
true
,
Config
.
getConstant
(
"TYPE_PUSH_MINE"
),
null
);
}
// function open_actyy() {
// api.closeFrame({
// name: 'home'
// });
// open_interact();
// $('#foot-home').attr('src', '../res/btn/foot-home.png');
// $('#foot-huodong').attr('src', '../res/btn/foot-huodong-active.png');
// footer_tab.setActive(4);
// }
/**
* 点亮提示红点
* 当前消息提示逻辑依据推送实现,为了保证推送之后消息的是否消费状态,缓存到本地
* 只有当用户点击的时候才消费该推送
* @param container 点击的div,红点为其一级子组件
* @param isUserTouch 用户是否点击,如果是用户点击,取消红点点亮,消费本地缓存
* @param moduel 所点模块
* @param data 消息,如果消息不为空,缓存到本地,并点亮;如果为空,从本地尝试读取消息,并依情点亮
*/
function
toggleNewMsgFlag
(
container
,
isUserTouch
,
moduel
,
data
)
{
if
(
isUserTouch
)
{
// 用户点击,无条件消费并取消点亮
freshNewMsgFlagUI
(
container
,
moduel
,
false
);
}
else
{
if
(
data
)
{
// 消息不为空,缓存消息,点亮红点
freshNewMsgFlagUI
(
container
,
moduel
,
true
);
}
else
{
// 消息为空,判断缓存
api
.
getPrefs
({
key
:
moduel
},
function
(
ret
,
err
)
{
if
(
ret
&&
ret
.
value
&&
ret
.
value
!=
'0'
)
{
// 读取到缓存,有消息未消费
freshNewMsgFlagUI
(
container
,
moduel
,
true
);
}
else
{
// 未读取到缓存,隐藏
freshNewMsgFlagUI
(
container
,
moduel
,
false
);
}
})
}
}
}
/**
* 根据本地缓存点亮未读消息
*/
function
initIndexMsgCache
(){
// 首页
loadCacheMsg
(
$
(
"#foot-home"
).
parent
(),
Config
.
getConstant
(
"TYPE_PUSH_HOME"
));
// 动态
loadCacheMsg
(
$
(
"#foot-dynamic"
).
parent
(),
Config
.
getConstant
(
"TYPE_PUSH_DYNA"
));
// 设施
loadCacheMsg
(
$
(
"#foot-sheshi"
).
parent
(),
Config
.
getConstant
(
"TYPE_PUSH_EQU"
));
// 互动
loadCacheMsg
(
$
(
"#foot-huodong"
).
parent
(),
Config
.
getConstant
(
"TYPE_PUSH_ACT"
));
// 我的
loadCacheMsg
(
$
(
"#foot-my"
).
parent
(),
Config
.
getConstant
(
"TYPE_PUSH_MINE"
));
}
function
loadCacheMsg
(
container
,
moduel
){
api
.
getPrefs
({
key
:
moduel
},
function
(
ret
,
err
)
{
var
isOn
=
ret
&&
ret
.
value
&&
ret
.
value
==
'1'
;
freshNewMsgFlagUI
(
container
,
moduel
,
isOn
);
});
}
function
freshNewMsgFlagUI
(
container
,
moduel
,
isOn
)
{
if
(
isOn
)
{
// setCache
api
.
setPrefs
({
key
:
moduel
,
value
:
'1'
});
// freshUI
$
(
container
).
append
(
"<div class='msg-new'></div>"
);
}
else
{
// setCache
api
.
setPrefs
({
key
:
moduel
,
value
:
'0'
});
// freshUI
$
(
container
).
find
(
'div .msg-new'
).
remove
();
}
}
function
notificationClicked
(
extra
){
if
(
extra
&&
extra
.
code
){
// 分情况打开对应的页面 - 首页,动态,设施,互动,我的
var
code
=
extra
.
code
.
substring
(
0
,
3
);
/*
五种推送大类:首页,动态,设施,互动,我的
*/
switch
(
code
)
{
case
Config
.
getConstant
(
"TYPE_PUSH_HOME"
):
// 首页
/*
首页列表类型点击后停留首页frame,其余根据其业务类型进入不同页面
*/
if
(
extra
.
code
==
Config
.
getConstant
(
"TYPE_PUSH_HOME_HOT"
))
{
footer_tab
.
setActive
(
1
);
toggleTab
(
0
);
}
else
{
var
tc
=
parseInt
(
extra
.
code
.
substring
(
extra
.
code
.
length
-
1
,
extra
.
code
.
length
));
// 10101 - 10106 跳转文章详情
if
(((
tc
>=
1
&&
tc
<=
6
)
||
(
extra
.
code
==
Config
.
getConstant
(
"TYPE_PUSH_HOME_VOLUNT"
)))
&&
extra
.
data
)
{
// 从extra.data.news_id中解析文章id
var
newsId
=
extra
.
data
&&
extra
.
data
.
news_id
?
extra
.
data
.
news_id
:
JSON
.
parse
(
extra
.
data
).
news_id
;
if
(
newsId
&&
newsId
!=
""
){
if
(
extra
.
code
==
Config
.
getConstant
(
"TYPE_PUSH_HOME_VOLUNT"
))
{
openWin_volunteer_detail
(
newsId
);
// 志愿服务
}
else
{
openWin_article_detail
(
newsId
);
// 文章详情
}
}
}
else
{
switch
(
extra
.
code
)
{
case
Config
.
getConstant
(
"TYPE_PUSH_HOME_MARKET"
):
// 文化超市
open_win
(
'wenhuacs'
,
'wenhuacs.html'
,
false
);
break
;
case
Config
.
getConstant
(
"TYPE_PUSH_HOME_ALL"
):
// 全部
open_win
(
'more'
,
'more.html'
,
false
);
break
;
default
:
}
}
// 消费消息并通知页面刷新
api
.
setPrefs
({
key
:
extra
.
code
,
value
:
'0'
});
api
.
sendEvent
({
name
:
'event_home_notice'
,
extra
:
null
});
}
break
;
case
Config
.
getConstant
(
"TYPE_PUSH_DYNA"
):
// 动态
footer_tab
.
setActive
(
2
);
toggleTab
(
1
);
break
;
case
Config
.
getConstant
(
"TYPE_PUSH_EQU"
):
// 设施
footer_tab
.
setActive
(
3
);
toggleTab
(
2
);
break
;
case
Config
.
getConstant
(
"TYPE_PUSH_ACT"
):
// 互动
footer_tab
.
setActive
(
4
);
toggleTab
(
3
);
break
;
case
Config
.
getConstant
(
"TYPE_PUSH_MINE"
):
// 我的
footer_tab
.
setActive
(
5
);
toggleTab
(
4
);
break
;
default
:
break
;
}
}
}
</script>
</html>
html/index_1.html
0 → 100644
View file @
19712671
<!doctype html>
<html>
<head>
<meta
charset=
"utf-8"
>
<meta
name=
"viewport"
content=
"maximum-scale=1.0,minimum-scale=1.0,user-scalable=0,width=device-width,initial-scale=1.0"
/>
<meta
name=
"format-detection"
content=
"telephone=no,email=no,date=no,address=no"
>
<link
rel=
"stylesheet"
type=
"text/css"
href=
"../css/aui.2.0.css"
/>
<link
rel=
"stylesheet"
type=
"text/css"
href=
"../css/app.css"
/>
</head>
<style
type=
"text/css"
>
html
,
body
{
height
:
100%
;
}
.footbtn
{
position
:
relative
;
z-index
:
20
;
top
:
5px
;
width
:
1rem
;
}
.aui-bar-tab-label
{
color
:
#585858
;
margin-top
:
0.5em
;
font-size
:
10px
!important
;
margin-bottom
:
0.4em
;
}
/*.aui-bar-tab-label{
margin-top: 10px;
}*/
</style>
<body>
<!--广告位开始-->
<!--<div class="" id="launch" onclick="open_win('interact','interact/interact.html',false)">
<div style="width:30px;height: 30px;position: absolute;top: 0;right: 0;z-index: 100;font-size: 26px;color: #f00" id="ctime"></div>
<img style="height: 100%;width: 100%;position: absolute;top: 0;z-index: 99;" src="" />
</div>-->
<!--广告位结束-->
<footer
class=
"aui-bar aui-bar-tab"
id=
"aui-footer"
>
<div
class=
"aui-bar-tab-item aui-active"
tapmode
>
<img
id=
"foot-home"
class=
"footbtn"
src=
"../res/btn/foot-home-active.png"
/>
<div
class=
"aui-bar-tab-label"
>
首页
</div>
</div>
<!--<div class="aui-bar-tab-item" tapmode>
<img id="foot-dynamic" class="footbtn" src="../res/btn/foot-dynamic.png" />
<div class="aui-bar-tab-label">
咨询
</div>
</div>-->
<div
class=
"aui-bar-tab-item"
tapmode
>
<img
id=
"foot-huodong"
class=
"footbtn"
src=
"../res/btn/foot-huodong.png"
/>
<div
class=
"aui-bar-tab-label"
>
互动
</div>
</div>
<div
class=
"aui-bar-tab-item"
tapmode
>
<img
id=
"foot-sheshi"
class=
"footbtn"
src=
"../res/btn/foot-sheshi.png"
/>
<div
class=
"aui-bar-tab-label"
>
设施
</div>
</div>
<div
class=
"aui-bar-tab-item"
tapmode
>
<img
id=
"foot-my"
class=
"footbtn"
src=
"../res/btn/foot-my.png"
/>
<div
class=
"aui-bar-tab-label"
>
我的
</div>
</div>
</footer>
</body>
<script
type=
"text/javascript"
src=
"../script/api.js"
></script>
<script
type=
"text/javascript"
src=
"../script/zepto.js"
></script>
<script
type=
"text/javascript"
src=
"../script/aui-tab.js"
></script>
<script
type=
"text/javascript"
src=
"../script/common.js"
></script>
<script
type=
"text/javascript"
src=
"../script/constants.js"
></script>
<script
type=
"text/javascript"
>
var
body_h
,
footer_h
,
frame_name
,
bmap
,
footerid
;
var
ajpush
;
var
currPage
=
0
;
$api
.
setStorage
(
'map_open'
,
false
)
// 设置导航栏及其点击回调
var
footer_tab
=
new
auiTab
({
element
:
document
.
getElementById
(
"aui-footer"
)
},
function
(
ret
)
{
if
(
ret
)
{
// 切换frame
toggleTab
(
ret
.
index
);
}
});
// 切换frame
function
toggleTab
(
index
){
console
.
log
(
$api
.
getStorage
(
'map_open'
))
var
maps_open
=
$api
.
getStorage
(
'map_open'
);
if
(
maps_open
===
'true'
)
{
// console.log('我要广播了')
api
.
sendEvent
({
name
:
'closemap'
});
}
else
if
(
frame_name
==
'my'
)
{
api
.
setFrameAttr
({
name
:
frame_name
,
hidden
:
true
});
}
else
{
api
.
closeFrame
({
name
:
frame_name
});
}
var
footid
=
'#'
+
footerid
;
console
.
log
(
footid
);
var
src
=
'../res/btn/'
+
footerid
+
'.png'
;
$
(
footid
).
attr
(
'src'
,
src
)
$
(
'.aui-bar-tab-label'
).
css
(
'color'
,
'#585858'
);
if
(
index
==
0
)
{
open_home
()
}
/*if(index == 1) {
open_dynamic()
}*/
if
(
index
==
2
)
{
open_venue
()
}
if
(
index
==
1
)
{
open_interact
()
}
if
(
index
==
3
)
{
open_my
()
}
}
apiready
=
function
()
{
/*$api.setStorage('first_run',1);
var first_run=$api.getStorage('first_run');
if(first_run!=500){
api.openWin({
name: 'privacy_policy',
url: './privacy_policy.html',//网络路径
reload:true
});
}else{
}*/
var
safeArea
=
api
.
safeArea
;
$
(
"#aui-footer"
).
css
({
'padding-bottom'
:
api
.
safeArea
.
bottom
+
'px'
})
//获取设备型号
getposition
(
function
(
ret
)
{
var
token
=
$api
.
getStorage
(
'token'
);
var
systemType
=
api
.
systemType
;
var
deviceId
=
api
.
deviceId
;
var
deviceModel
=
api
.
deviceModel
;
var
deviceName
=
api
.
deviceName
;
var
channel
=
api
.
channel
;
var
lon
=
ret
.
lon
;
var
lat
=
ret
.
lat
;
if
(
token
){
get_data
(
'/api/user/device_statistics'
,
'post'
,
{
token
:
token
,
lon
:
lon
,
lat
:
lat
,
systemType
:
systemType
,
deviceId
:
deviceId
,
deviceModel
:
deviceModel
,
deviceName
:
deviceName
,
channel
:
channel
},
function
(
ret
)
{
console
.
log
(
JSON
.
stringify
(
ret
))
});
}
})
// 广告位结束
api
.
setStatusBarStyle
({
style
:
'light'
});
// bmap = api.require('bMap');
body_h
=
$api
.
offset
(
$api
.
dom
(
'body'
)).
h
;
footer_h
=
$api
.
offset
(
$api
.
byId
(
'aui-footer'
)).
h
;
// 打开首页HomeFrame
open_home
()
$
(
"#foot-home"
).
next
(
'.aui-bar-tab-label'
).
css
(
'color'
,
'#3D60F6'
);
// 如果点击广告,打开广告window
console
.
log
(
JSON
.
stringify
(
api
.
pageParam
));
if
(
api
.
pageParam
.
from
==
'launchImageAd'
){
openUrl
(
api
.
pageParam
.
url
,
api
.
pageParam
.
content
);
}
// 退出键监听
keyback
()
// 注册监听事件
jpushInit
()
// 缓存未读消息初始化
initIndexMsgCache
();
// 监听重新绑定监听事件 -- 修改推送策略和退出登陆后重新绑定
rebindPush
();
};
function
rebindPush
()
{
api
.
addEventListener
({
name
:
'event_push_rebind'
},
function
(
ret
,
err
)
{
jpushInit
();
});
}
function
openUrl
(
url
,
content
){
api
.
setFullScreen
({
fullScreen
:
false
});
if
(
content
==
'活动'
){
openWin_activity
(
url
);
}
else
if
(
content
==
'文章'
){
openWin_article_detail
(
url
);
}
else
if
(
content
==
'专题'
){
openHd_url
(
url
);
}
else
if
(
content
==
'单页'
){
open_win
(
url
);
}
}
function
keyback
()
{
//退出事件监听
var
keyback_num
=
0
;
api
.
addEventListener
({
name
:
'keyback'
},
function
(
ret
,
err
)
{
if
(
keyback_num
)
{
api
.
closeWidget
({
silent
:
true
})
}
api
.
toast
({
msg
:
'再按一次退出应用'
});
keyback_num
++
;
});
}
function
jpushInit
()
{
//极光初始化
ajpush
=
api
.
require
(
'ajpush'
);
//获取设备的标识RegistrationID
ajpush
.
getRegistrationId
(
function
(
ret
)
{
var
registrationId
=
ret
.
id
;
$api
.
setStorage
(
'ajpushRegistrationId'
,
registrationId
)
console
.
log
(
registrationId
);
});
ajpush
.
init
(
function
(
ret
)
{
if
(
ret
&&
ret
.
status
)
{
var
stau
=
ret
.
status
==
"1"
?
"SUC"
:
"FAIL"
;
console
.
log
(
'JPush-设备绑定:'
+
stau
);
}
});
//绑定别名 默认接受推送,绑定未登录别名
var
tag
=
Config
.
getConstant
(
"TAG_PUSH_ALLOW"
);
console
.
log
(
tag
);
var
alias
=
Config
.
getConstant
(
"ALIAS_PUSH_NOLOGIN"
);
if
(
$api
.
getStorage
(
'receivepush'
)
&&
$api
.
getStorage
(
'receivepush'
).
receivepush
==
"0"
)
{
tag
=
Config
.
getConstant
(
"TAG_PUSH_CLOSE"
);
}
if
(
$api
.
getStorage
(
'userinfo'
)
&&
$api
.
getStorage
(
'userinfo'
).
uid
)
{
alias
=
$api
.
getStorage
(
'userinfo'
).
uid
;
};
ajpush
.
setAlias
({
alias
:
alias
},
function
(
ret
)
{
var
statusCode
=
ret
.
statusCode
;
console
.
log
(
JSON
.
stringify
(
ret
));
});
ajpush
.
setTags
({
tags
:[
tag
],
sequence
:
101
},
function
(
ret
)
{
var
statusCode
=
ret
.
statusCode
;
console
.
log
(
"tags绑定结果:"
+
JSON
.
stringify
(
ret
));
});
/*var param = {alias:alias,tags:[tag]};
ajpush.bindAliasAndTags(param,function(ret,err) {
var statusCode = ret.statusCode;
console.log(JSON.stringify(ret),JSON.stringify(err));
});*/
/*ajpush.bindAliasAndTags({
alias:alias,
tags:[tag]
}, function(ret) {
var statusCode = ret.statusCode == "0" ? "SUC" : "FAIL";
console.log('JPush-别名绑定:' + alias + ' == ' + tag + ' == ' + statusCode);
});*/
/**
* 接收前台推送信息 -- 透传消息,不经过通知栏
* 要求必须极光以消息类型推送,如果以通知类型推送,直接走通知栏,不走该回调
*/
ajpush
.
setListener
(
function
(
ret
,
err
)
{
console
.
log
(
"ajpush"
);
var
id
=
ret
.
id
;
var
title
=
ret
.
title
;
var
content
=
ret
.
content
;
var
extra
=
ret
.
extra
;
console
.
log
(
'推送抵达:'
+
JSON
.
stringify
(
ret
));
// 1023之前老逻辑
/*if(extra && extra.news_id) {
openWin_article_detail(extra.news_id)
}
if(extra && extra.message) {
// openWin('message', './my/message.html')
}*/
// 1023重新定义推送逻辑
if
(
extra
&&
extra
.
code
)
{
var
code
=
extra
.
code
.
substring
(
0
,
3
);
/*
五种推送大类:首页,动态,设施,互动,我的
*/
switch
(
code
)
{
case
Config
.
getConstant
(
"TYPE_PUSH_HOME"
):
// 首页
/*
首页的推送逻辑中,只有首页列表的推送会引起下部导航栏点亮
其余推送发送事件到home_main中,由home_main管理,和首页icon没有级联关系
*/
if
(
extra
.
code
==
Config
.
getConstant
(
"TYPE_PUSH_HOME_HOT"
))
{
toggleNewMsgFlag
(
$
(
"#foot-home"
).
parent
(),
false
,
code
,
extra
);
}
else
{
// 向main_frame发送事件,由main_frame控制消息提醒
api
.
sendEvent
({
name
:
'event_home_notice'
,
extra
:
extra
});
}
break
;
case
Config
.
getConstant
(
"TYPE_PUSH_DYNA"
):
// 动态
toggleNewMsgFlag
(
$
(
"#foot-dynamic"
).
parent
(),
false
,
code
,
extra
);
break
;
case
Config
.
getConstant
(
"TYPE_PUSH_EQU"
):
// 设施
toggleNewMsgFlag
(
$
(
"#foot-sheshi"
).
parent
(),
false
,
code
,
extra
);
break
;
case
Config
.
getConstant
(
"TYPE_PUSH_ACT"
):
// 互动
toggleNewMsgFlag
(
$
(
"#foot-huodong"
).
parent
(),
false
,
code
,
extra
);
break
;
case
Config
.
getConstant
(
"TYPE_PUSH_MINE"
):
// 我的
// 向个人中心设置页面发送事件
api
.
sendEvent
({
name
:
'event_my_notice'
,
extra
:
extra
});
toggleNewMsgFlag
(
$
(
"#foot-my"
).
parent
(),
false
,
code
,
extra
);
break
;
default
:
break
;
}
//发送到通知栏 -- 现在所有透传都发送到通知栏,有变更再调整
api
.
getPrefs
({
key
:
Config
.
getConstant
(
"CACHE_SETTING_PUSH"
)
},
function
(
ret
,
err
)
{
if
(
ret
&&
ret
.
value
&&
ret
.
value
==
'0'
)
{
// 关闭推送
}
else
{
// 允许推送
// api.notification({
// notify: {
// title:"文化随行",
// content: content,
// extra:extra
// }
// }, function(ret, err) {
// var id = ret.id;
// });
}
})
}
});
/**
* 安卓接收推送"通知",点击通知栏后回调
* 暂时推送都从透传走,自定义发送通知到通知栏,这里暂不处理
*/
api
.
addEventListener
({
name
:
'appintent'
},
function
(
ret
)
{
// alert('Android点击通知栏推送进入:'+JSON.stringify(ret));
if
(
ret
&&
ret
.
appParam
.
ajpush
)
{
var
ajpush
=
ret
.
appParam
.
ajpush
;
var
id
=
ajpush
.
id
;
var
title
=
ajpush
.
title
;
var
content
=
ajpush
.
content
;
var
extra
=
ajpush
.
extra
;
// alert(JSON.stringify(extra));
notificationClicked
(
extra
);
}
});
//打开my
api
.
addEventListener
({
name
:
'openmy'
},
function
(
ret
,
err
)
{
console
.
log
(
'我收到广播了openmy'
)
open_my
()
})
/**
* 点击通知栏进入后的回调
*/
api
.
addEventListener
({
name
:
'noticeclicked'
},
function
(
ret
,
err
)
{
// 判断是否推送内容
if
(
ret
&&
ret
.
value
&&
ret
.
value
.
extra
)
{
// alert(JSON.stringify(ret.value.extra));
// 处理点击回调
notificationClicked
(
ret
.
value
.
extra
);
}
});
//监听应用进入后台,通知jpush暂停事件
api
.
addEventListener
({
name
:
'pause'
},
function
(
ret
,
err
)
{
onPause
();
})
//监听应用恢复到前台,通知jpush恢复事件
api
.
addEventListener
({
name
:
'resume'
},
function
(
ret
,
err
)
{
onResume
();
})
}
//统计-app恢复
function
onResume
()
{
ajpush
.
onResume
();
console
.
log
(
'JPush onResume'
);
}
//统计-app暂停
function
onPause
()
{
ajpush
.
onPause
();
console
.
log
(
'JPush onPause'
);
}
function
open_home
()
{
var
btnid
=
"#foot-home"
;
$
(
btnid
).
attr
(
'src'
,
'../res/btn/foot-home-active.png'
)
$
(
btnid
).
next
(
'.aui-bar-tab-label'
).
css
(
'color'
,
'#3D60F6'
);
api
.
openFrame
({
name
:
'home'
,
url
:
'home.html'
,
bounces
:
false
,
rect
:
{
x
:
0
,
y
:
0
,
w
:
'auto'
,
h
:
body_h
-
footer_h
},
vScrollBarEnabled
:
false
})
frame_name
=
'home'
;
footerid
=
'foot-home'
;
toggleNewMsgFlag
(
$
(
"#foot-home"
).
parent
(),
true
,
Config
.
getConstant
(
"TYPE_PUSH_HOME"
),
null
);
}
function
open_dynamic
()
{
var
btnid
=
"#foot-dynamic"
;
$
(
btnid
).
attr
(
'src'
,
'../res/btn/foot-dynamic-active.png'
)
$
(
btnid
).
next
(
'.aui-bar-tab-label'
).
css
(
'color'
,
'#3D60F6'
);
api
.
openFrame
({
name
:
'dynamic'
,
url
:
'dynamic.html'
,
bounces
:
false
,
pageParam
:{
from
:
"index"
},
rect
:
{
x
:
0
,
y
:
0
,
w
:
'auto'
,
h
:
body_h
-
footer_h
},
reload
:
true
,
vScrollBarEnabled
:
false
})
frame_name
=
'dynamic'
;
footerid
=
'foot-dynamic'
;
toggleNewMsgFlag
(
$
(
"#foot-dynamic"
).
parent
(),
true
,
Config
.
getConstant
(
"TYPE_PUSH_DYNA"
),
null
);
}
function
open_venue
()
{
var
btnid
=
"#foot-sheshi"
;
$
(
btnid
).
attr
(
'src'
,
'../res/btn/foot-sheshi-active.png'
)
$
(
btnid
).
next
(
'.aui-bar-tab-label'
).
css
(
'color'
,
'#3D60F6'
);
api
.
openFrame
({
name
:
'venue'
,
url
:
'venue.html'
,
bounces
:
false
,
rect
:
{
x
:
0
,
y
:
0
,
w
:
'auto'
,
h
:
body_h
-
footer_h
},
reload
:
true
,
vScrollBarEnabled
:
false
})
frame_name
=
'venue'
;
footerid
=
'foot-sheshi'
;
toggleNewMsgFlag
(
$
(
"#foot-sheshi"
).
parent
(),
true
,
Config
.
getConstant
(
"TYPE_PUSH_EQU"
),
null
);
}
function
open_interact
()
{
var
btnid
=
"#foot-huodong"
;
$
(
btnid
).
attr
(
'src'
,
'../res/btn/foot-huodong-active.png'
)
$
(
btnid
).
next
(
'.aui-bar-tab-label'
).
css
(
'color'
,
'#3D60F6'
);
api
.
openFrame
({
name
:
'interact'
,
url
:
'interact/interact.html'
,
bounces
:
false
,
rect
:
{
x
:
0
,
y
:
0
,
w
:
'auto'
,
h
:
body_h
-
footer_h
},
reload
:
true
,
vScrollBarEnabled
:
false
})
frame_name
=
'activity'
;
footerid
=
'foot-huodong'
;
// 切换消息未读红点
toggleNewMsgFlag
(
$
(
"#foot-huodong"
).
parent
(),
true
,
Config
.
getConstant
(
"TYPE_PUSH_ACT"
),
null
);
}
function
open_my
()
{
var
btnid
=
"#foot-my"
;
$
(
btnid
).
attr
(
'src'
,
'../res/btn/foot-my-active.png'
)
$
(
btnid
).
next
(
'.aui-bar-tab-label'
).
css
(
'color'
,
'#3D60F6'
);
api
.
openFrame
({
name
:
'my'
,
url
:
'my.html'
,
bounces
:
false
,
rect
:
{
x
:
0
,
y
:
0
,
w
:
'auto'
,
h
:
body_h
-
footer_h
},
reload
:
true
,
vScrollBarEnabled
:
false
})
frame_name
=
'my'
;
footerid
=
'foot-my'
;
toggleNewMsgFlag
(
$
(
"#foot-my"
).
parent
(),
true
,
Config
.
getConstant
(
"TYPE_PUSH_MINE"
),
null
);
}
// function open_actyy() {
// api.closeFrame({
// name: 'home'
// });
// open_interact();
// $('#foot-home').attr('src', '../res/btn/foot-home.png');
// $('#foot-huodong').attr('src', '../res/btn/foot-huodong-active.png');
// footer_tab.setActive(4);
// }
/**
* 点亮提示红点
* 当前消息提示逻辑依据推送实现,为了保证推送之后消息的是否消费状态,缓存到本地
* 只有当用户点击的时候才消费该推送
* @param container 点击的div,红点为其一级子组件
* @param isUserTouch 用户是否点击,如果是用户点击,取消红点点亮,消费本地缓存
* @param moduel 所点模块
* @param data 消息,如果消息不为空,缓存到本地,并点亮;如果为空,从本地尝试读取消息,并依情点亮
*/
function
toggleNewMsgFlag
(
container
,
isUserTouch
,
moduel
,
data
)
{
if
(
isUserTouch
)
{
// 用户点击,无条件消费并取消点亮
freshNewMsgFlagUI
(
container
,
moduel
,
false
);
}
else
{
if
(
data
)
{
// 消息不为空,缓存消息,点亮红点
freshNewMsgFlagUI
(
container
,
moduel
,
true
);
}
else
{
// 消息为空,判断缓存
api
.
getPrefs
({
key
:
moduel
},
function
(
ret
,
err
)
{
if
(
ret
&&
ret
.
value
&&
ret
.
value
!=
'0'
)
{
// 读取到缓存,有消息未消费
freshNewMsgFlagUI
(
container
,
moduel
,
true
);
}
else
{
// 未读取到缓存,隐藏
freshNewMsgFlagUI
(
container
,
moduel
,
false
);
}
})
}
}
}
/**
* 根据本地缓存点亮未读消息
*/
function
initIndexMsgCache
(){
// 首页
loadCacheMsg
(
$
(
"#foot-home"
).
parent
(),
Config
.
getConstant
(
"TYPE_PUSH_HOME"
));
// 动态
loadCacheMsg
(
$
(
"#foot-dynamic"
).
parent
(),
Config
.
getConstant
(
"TYPE_PUSH_DYNA"
));
// 设施
loadCacheMsg
(
$
(
"#foot-sheshi"
).
parent
(),
Config
.
getConstant
(
"TYPE_PUSH_EQU"
));
// 互动
loadCacheMsg
(
$
(
"#foot-huodong"
).
parent
(),
Config
.
getConstant
(
"TYPE_PUSH_ACT"
));
// 我的
loadCacheMsg
(
$
(
"#foot-my"
).
parent
(),
Config
.
getConstant
(
"TYPE_PUSH_MINE"
));
}
function
loadCacheMsg
(
container
,
moduel
){
api
.
getPrefs
({
key
:
moduel
},
function
(
ret
,
err
)
{
var
isOn
=
ret
&&
ret
.
value
&&
ret
.
value
==
'1'
;
freshNewMsgFlagUI
(
container
,
moduel
,
isOn
);
});
}
function
freshNewMsgFlagUI
(
container
,
moduel
,
isOn
)
{
if
(
isOn
)
{
// setCache
api
.
setPrefs
({
key
:
moduel
,
value
:
'1'
});
// freshUI
$
(
container
).
append
(
"<div class='msg-new'></div>"
);
}
else
{
// setCache
api
.
setPrefs
({
key
:
moduel
,
value
:
'0'
});
// freshUI
$
(
container
).
find
(
'div .msg-new'
).
remove
();
}
}
function
notificationClicked
(
extra
){
if
(
extra
&&
extra
.
code
){
// 分情况打开对应的页面 - 首页,动态,设施,互动,我的
var
code
=
extra
.
code
.
substring
(
0
,
3
);
/*
五种推送大类:首页,动态,设施,互动,我的
*/
switch
(
code
)
{
case
Config
.
getConstant
(
"TYPE_PUSH_HOME"
):
// 首页
/*
首页列表类型点击后停留首页frame,其余根据其业务类型进入不同页面
*/
if
(
extra
.
code
==
Config
.
getConstant
(
"TYPE_PUSH_HOME_HOT"
))
{
footer_tab
.
setActive
(
1
);
toggleTab
(
0
);
}
else
{
var
tc
=
parseInt
(
extra
.
code
.
substring
(
extra
.
code
.
length
-
1
,
extra
.
code
.
length
));
// 10101 - 10106 跳转文章详情
if
(((
tc
>=
1
&&
tc
<=
6
)
||
(
extra
.
code
==
Config
.
getConstant
(
"TYPE_PUSH_HOME_VOLUNT"
)))
&&
extra
.
data
)
{
// 从extra.data.news_id中解析文章id
var
newsId
=
extra
.
data
&&
extra
.
data
.
news_id
?
extra
.
data
.
news_id
:
JSON
.
parse
(
extra
.
data
).
news_id
;
if
(
newsId
&&
newsId
!=
""
){
if
(
extra
.
code
==
Config
.
getConstant
(
"TYPE_PUSH_HOME_VOLUNT"
))
{
openWin_volunteer_detail
(
newsId
);
// 志愿服务
}
else
{
openWin_article_detail
(
newsId
);
// 文章详情
}
}
}
else
{
switch
(
extra
.
code
)
{
case
Config
.
getConstant
(
"TYPE_PUSH_HOME_MARKET"
):
// 文化超市
open_win
(
'wenhuacs'
,
'wenhuacs.html'
,
false
);
break
;
case
Config
.
getConstant
(
"TYPE_PUSH_HOME_ALL"
):
// 全部
open_win
(
'more'
,
'more.html'
,
false
);
break
;
default
:
}
}
// 消费消息并通知页面刷新
api
.
setPrefs
({
key
:
extra
.
code
,
value
:
'0'
});
api
.
sendEvent
({
name
:
'event_home_notice'
,
extra
:
null
});
}
break
;
case
Config
.
getConstant
(
"TYPE_PUSH_DYNA"
):
// 动态
footer_tab
.
setActive
(
2
);
toggleTab
(
1
);
break
;
case
Config
.
getConstant
(
"TYPE_PUSH_EQU"
):
// 设施
footer_tab
.
setActive
(
3
);
toggleTab
(
2
);
break
;
case
Config
.
getConstant
(
"TYPE_PUSH_ACT"
):
// 互动
footer_tab
.
setActive
(
4
);
toggleTab
(
3
);
break
;
case
Config
.
getConstant
(
"TYPE_PUSH_MINE"
):
// 我的
footer_tab
.
setActive
(
5
);
toggleTab
(
4
);
break
;
default
:
break
;
}
}
}
</script>
</html>
html/privacy_policy.html
0 → 100644
View file @
19712671
<!DOCTYPE html>
<html
lang=
"en"
>
<head>
<meta
charset=
"UTF-8"
>
<meta
http-equiv=
"X-UA-Compatible"
content=
"IE=edge"
>
<meta
name=
"viewport"
content=
"width=device-width, initial-scale=1.0"
>
<title>
隐私协议
</title>
<link
rel=
"stylesheet"
type=
"text/css"
href=
"../css/aui.2.0.css"
/>
<link
rel=
"stylesheet"
type=
"text/css"
href=
"../css/vant.css"
>
<style>
body
{
padding
:
0px
;
margin
:
0px
;
}
#privacy_policy
{
/*padding: 1em;*/
}
.content
{
overflow-x
:
hidden
;
overflow-y
:
auto
;
padding-left
:
1em
;
padding-right
:
1em
;
}
#header
{
background-color
:
#3D60F6
;
height
:
2em
;
}
.buttons
{
padding
:
1em
;
padding-bottom
:
2em
;
}
.btnitem
{
text-align
:
center
;
}
.btnitem
.btn
{
text-align
:
center
;
margin
:
0
auto
;
}
.btnitem
.btn1
{
color
:
#fff
;
background-image
:
linear-gradient
(
to
right
,
#4AA6FF
,
#3764FF
);
padding
:
0.2em
2.3em
;
border-radius
:
100px
;
font-size
:
14px
;
}
.btnitem
.btn2
{
color
:
#585858
;
font-size
:
14px
;
}
.btnitem1
{
margin-bottom
:
1em
;
}
.loading
{
margin-top
:
50%
;
}
</style>
</head>
<body>
<div
id=
"privacy_policy"
>
<van-loading
v-if=
"isLoading"
size=
"24px"
vertical
class=
"loading"
>
加载中...
</van-loading>
<div
v-if=
"!isLoading"
>
<van-sticky
:offset-top=
"0"
>
<header
id=
"header"
></header>
<van-nav-bar
:title=
"title"
/>
</van-sticky>
<van-row>
<van-col
span=
"24"
v-html=
"content"
class=
"content"
>
</van-col>
</van-row>
<div
id=
"buttons"
class=
"buttons"
>
<div
class=
"btnitem btnitem1"
>
<a
href=
"javascript:goto();"
class=
"btn btn1"
@
click=
"agree"
>
同意并继续
</a>
</div>
<div
class=
"btnitem"
>
<a
href=
"javascript:goto();"
class=
"btn btn2"
@
click=
"disagree"
>
退出应用
</a>
</div>
</div>
</div>
</div>
<script
type=
"text/javascript"
src=
"../script/vue.min.js"
></script>
<script
type=
"text/javascript"
src=
"../script/vant.min.js"
></script>
<script
type=
"text/javascript"
src=
"../script/api.js"
></script>
<script
type=
"text/javascript"
src=
"../script/common.js"
></script>
<script
type=
"text/javascript"
src=
"../script/jquery.min.js"
></script>
<script>
apiready
=
function
()
{
api
.
addEventListener
({
name
:
"keyback"
},
function
(
ret
,
err
){
//禁止返回
});
var
app
=
new
Vue
({
el
:
"#privacy_policy"
,
data
:{
content
:
''
,
title
:
''
,
isLoading
:
true
,
headerHeight
:
0
},
methods
:{
init
(){
//var header = document.querySelector('#header');
//$api.fixStatusBar(header);
//var headerPos = $api.offset(header);
//Vue.set(app,'headerHeight',headerPos.h);
},
back
(){
window
.
history
.
back
();
},
setContent
(){
var
url
=
window
.
config
.
dev_path
+
"/api/page/detail?id=16"
;
$
.
post
(
url
,{},
function
(
ret
){
if
(
1
==
ret
.
status
){
Vue
.
set
(
app
,
'content'
,
ret
.
data
.
content
);
Vue
.
set
(
app
,
'title'
,
ret
.
data
.
title
);
Vue
.
set
(
app
,
'isLoading'
,
false
);
}
},
'json'
);
},
agree
(){
//open_home();
$api
.
setStorage
(
'first_run'
,
500
);
api
.
openFrame
({
name
:
'index'
,
url
:
'./index.html'
,
});
},
disagree
(){
api
.
closeWidget
();
}
}
})
app
.
init
();
app
.
setContent
();
}
</script>
</body>
</html>
\ No newline at end of file
html/privacy_policy_farme.html
0 → 100644
View file @
19712671
<!DOCTYPE html>
<html
lang=
"en"
>
<head>
<meta
charset=
"UTF-8"
>
<meta
http-equiv=
"X-UA-Compatible"
content=
"IE=edge"
>
<meta
name=
"viewport"
content=
"width=device-width, initial-scale=1.0"
>
<title>
隐私协议
</title>
<link
rel=
"stylesheet"
type=
"text/css"
href=
"../css/aui.2.0.css"
/>
<script
src=
""
></script>
<style>
body
{
padding
:
1em
;
}
</style>
</head>
<body
id=
"body"
>
<div
id=
"app"
>
<div
v-html=
"content"
></div>
</div>
<script
type=
"text/javascript"
src=
"../script/vue.min.js"
></script>
<script
type=
"text/javascript"
src=
"../script/vant.min.js"
></script>
<script
type=
"text/javascript"
src=
"../script/api.js"
></script>
<script
type=
"text/javascript"
src=
"../script/common.js"
></script>
<script
type=
"text/javascript"
src=
"../script/jquery.min.js"
></script>
<script>
apiready
=
function
()
{
$
(
'body'
).
height
(
api
.
winHeight
);
var
body
=
$api
.
byId
(
'body'
);
var
bodyPos
=
$api
.
offset
(
body
);
var
app
=
new
Vue
({
el
:
"#app"
,
data
:{
content
:
''
,
title
:
''
,
},
methods
:{
init
:
function
(){
get_data
(
'/api/page/detail?id=16'
,
'post'
,
{},
function
(
ret
)
{
if
(
1
==
ret
.
status
){
Vue
.
set
(
app
,
"content"
,
ret
.
data
.
content
);
api
.
refreshHeaderLoadDone
();
}
});
},
}
});
app
.
init
();
}
</script>
</body>
</html>
\ No newline at end of file
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment