説明なし

taskList.js 11KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359
  1. var arrTime=[],token='',signDay=''//弹框提示内容;
  2. // 首次进入firstTime---true
  3. // var cid='1005',imei='865224035649367',androidId='6c735b635fe943c852e8392152f20ac8',version='1.5.4',secretkey='3d0e4b94e04b8dcca1cedb9c33051173',goldCount='',gameId=''//金币数;
  4. var cid='',imei='',androidId='',version='',goldCount='',gameId='',//金币数;
  5. exchangeMinCoin='',//最小兑换数
  6. lastTime='',//剩余时间
  7. secretkey='3d0e4b94e04b8dcca1cedb9c33051173',
  8. hasGame=false,
  9. data={},
  10. token1="";
  11. var id = parseQueryString("id")?parseQueryString("id"):false;// 游戏id
  12. var firstTime = parseQueryString("firstTime")?parseQueryString("firstTime"):false// 判断是否是首次进入
  13. // 弹框:1.获取金币 2.未到时段 3.游戏完成获取金币 4.兑换弹框
  14. $().ready(function(){
  15. getToken();
  16. })
  17. function getToken() {
  18. try {
  19. data=JSON.parse(taskObj.jsGetToken());
  20. cid=data.cid,imei=data.imei,androidId=data.androidId,version=data.version,token1=data.token
  21. // 获取金币
  22. getList();
  23. if(!id&&firstTime=='false'||!firstTime) {
  24. startInit()
  25. }
  26. if(id) {
  27. getNew();
  28. }
  29. }catch(e) {
  30. getList();
  31. if(firstTime=='false'||!firstTime) {
  32. startInit();
  33. }
  34. if(id) {
  35. hasGame=true;
  36. getNew();
  37. }
  38. }
  39. }
  40. function getNew() {
  41. var time1=new Date().getTime();
  42. sign=md5("time="+time1+'3d0e4b94e04b8dcca1cedb9c33051173')
  43. $.ajax({
  44. type: 'post',
  45. url: '/api/V3/getTaskAddCoin',
  46. headers:{
  47. token:token1,
  48. cid:cid,//渠道号暂时写死
  49. imei:imei,
  50. time:time1,
  51. sign:sign,
  52. androidId:androidId
  53. },
  54. success: function (res) {
  55. var res=JSON.parse(res)
  56. if (res && res.code == 0) {
  57. hasGame=true
  58. coin=res.res.totalCoin
  59. initGold(2)
  60. // id不包含999或者id不等于-1
  61. if(id.indexOf("999")==-1) {
  62. if(id!=-1) {
  63. taskObj.has_game_done(Number(res.res.addCoin),Number(coin))
  64. }
  65. // }else {
  66. // initGold(1)
  67. }
  68. }else {
  69. showMsg(res.message)
  70. }
  71. },
  72. error: function () {
  73. showMsg('网络错误,请稍后再试!')
  74. }
  75. })
  76. }
  77. function getList() {
  78. var time1=new Date().getTime();
  79. sign=md5("time="+time1+'3d0e4b94e04b8dcca1cedb9c33051173')
  80. $.ajax({
  81. type: 'post',
  82. url: '/api/V3/gameList',
  83. headers:{
  84. token:token1,
  85. cid:cid,//渠道号暂时写死
  86. imei:imei,
  87. time:time1,
  88. sign:sign,
  89. androidId:androidId
  90. },
  91. success: function (res) {
  92. var res=JSON.parse(res)
  93. if (res && res.code == 0) {
  94. var conHtml=''
  95. for(var i in res.res) {
  96. if(res.res[i].top==0) {
  97. conHtml+='<li onclick=toGame("'+escape(res.res[i].url)+","+escape(res.res[i].id)+'")><img src="'+res.res[i].icon+'" alt=""><div class="text"><div class="luck">'+res.res[i].title+'</div><p>'+res.res[i].desc+'</p></div><div class="get">'+res.res[i].button+'</div></li>'
  98. }else {
  99. var otherCon='<img src="'+res.res[i].icon+'" alt=""><div class="text"><div class="luck">'+res.res[i].title+'</div><p>'+res.res[i].desc+'</p></div><div class="get">领取</div><div class="notice-text"><img class="guide" src="./img/guide.png" alt=""><div><p>全新赚钱模块上线</p><p>快速赚到<span>30元</span>零钱</p></div></div>'
  100. $(".award").html(otherCon)
  101. }
  102. if(res.res[i].top==1) {
  103. gameId=res.res[i].id
  104. }
  105. }
  106. $("ul").html(conHtml)
  107. checkShow();
  108. }else {
  109. showMsg(res.message)
  110. }
  111. },
  112. error: function () {
  113. showMsg('网络错误,请稍后再试!')
  114. }
  115. })
  116. }
  117. // 签到
  118. function initGold(type) {
  119. var time1=new Date().getTime();
  120. arr=["type="+type,"time="+time1]
  121. data= {
  122. type: type,
  123. }
  124. var sign=arr.join("&")
  125. sign=md5(sign+secretkey)
  126. $.ajax({
  127. type: 'post',
  128. url: '/api/V3/getUserAdvertStatus',
  129. headers:{
  130. token:token1,
  131. cid:cid,//渠道号暂时写死
  132. imei:imei,
  133. time:time1,
  134. sign:sign,
  135. androidId:androidId
  136. },
  137. data: data,
  138. success: function (res) {
  139. var res=JSON.parse(res)
  140. if (res && res.res.success == 1) {
  141. goldCount=res.res.coin;
  142. if(!id||id.indexOf("999")!=-1) {
  143. getGold(type)
  144. }
  145. }else {
  146. if(type==1) {
  147. initGold(2)//判断是否可以领取时段奖励
  148. }else if(type==2){
  149. if(res.res.seconds) {
  150. count_down(res.res.seconds,".text-wrapper div")
  151. lastTime=res.res.seconds
  152. $(".timeRange").show();
  153. }
  154. if(!id) {
  155. taskObj.excess_time(lastTime)//倒计时
  156. }else if(id.indexOf("999")!=-1) {
  157. taskObj.has_game_done(Number(0),Number(coin))
  158. }
  159. }else {
  160. getGold(type)
  161. }
  162. }
  163. },
  164. error: function () {
  165. showMsg('网络错误,请稍后再试!')
  166. }
  167. })
  168. }
  169. // 领取金币
  170. function getGold(type) {
  171. var time1=new Date().getTime();
  172. var arr=[]
  173. if(parseQueryString("question_id")) {
  174. arr=["question_id="+parseQueryString("question_id"),"type="+parseQueryString("id"),"time="+time1]
  175. data={
  176. type: type,
  177. question_id: parseQueryString("question_id")?parseQueryString("question_id"):''
  178. }
  179. }else {
  180. arr=["type="+type,"time="+time1]
  181. data= {
  182. type: type
  183. }
  184. }
  185. var sign=arr.join("&")
  186. sign=md5(sign+secretkey)
  187. $.ajax({
  188. type: 'post',
  189. url: '/api/V3/getAdvertCoin',
  190. headers:{
  191. token:token1,
  192. cid:cid,//渠道号暂时写死
  193. imei:imei,
  194. time:time1,
  195. sign:sign,
  196. androidId:androidId,
  197. version:version,
  198. },
  199. data:data,
  200. success:function (res) {
  201. var res=JSON.parse(res)
  202. if (res && res.code==0) {
  203. if(type==1||type==2) {
  204. taskObj.time_envelope(Number(res.res.days),Number(res.res.coin),Number(type))
  205. }else {
  206. taskObj.money_total(Number(res.res.gold))
  207. }
  208. }else {
  209. if(type==1) {
  210. getGold(2)//判断是否可以领取时段奖励
  211. }else if(type==2){
  212. $(".timeRange").show();
  213. count_down(res.res.seconds,".text-wrapper div");
  214. lastTime=res.res.seconds
  215. }
  216. }
  217. },
  218. error: function () {
  219. showMsg('网络错误,请稍后再试!')
  220. }
  221. })
  222. }
  223. function startInit() {
  224. var time1=new Date().getTime();
  225. sign=md5("time="+time1+secretkey)
  226. $.ajax({
  227. type: 'post',
  228. url: '/api/V3/getUserCoin',
  229. headers:{
  230. cid:cid,//渠道号暂时写死
  231. version:version,
  232. imei:imei,
  233. time:time1,
  234. sign:sign,
  235. token:token1,
  236. androidId:androidId
  237. },
  238. success: function (res) {
  239. var res=JSON.parse(res)
  240. if(res&&res.code==0) {
  241. var res=res.res
  242. $(".notice span").text(res.signMsg)
  243. $(".all .number").text(res.gold?res.gold:'0')
  244. $(".today .number").text(res.todayGold?res.todayGold:'0')
  245. $(".prize span").text(res.money?res.money:'0')
  246. $(".notice div").text(parseInt(res.signMoney))
  247. signDay=res.signDay
  248. exchangeMinCoin=res.exchangeMinCoin
  249. if(!id) {
  250. initGold(2);//先判断是否是签到
  251. }
  252. taskObj.h5_allTotal(Number(res.gold))
  253. }
  254. },
  255. error: function () {
  256. showMsg('网络错误,请稍后再试!')
  257. }
  258. })
  259. }
  260. $(".timeRange").on("click",function(){
  261. var target=$(".text-wrapper div").text().split(":");
  262. taskObj.excess_time(parseInt(target[0]*60)+parseInt(target[1]))
  263. })
  264. $(".right button").on("click",function(){
  265. taskObj.cash_money(parseInt($(".all .number").text()),parseInt(exchangeMinCoin),parseInt($(".today .number").text()))
  266. })
  267. function checkShow() {
  268. if(firstTime==='false'||!firstTime) {
  269. $(".award").removeClass("active");
  270. // $(".notice-text").hide();
  271. $(".bottom").hide();
  272. $("body").attr("style","")
  273. $(".mask").hide();
  274. // 进入默认奖励金币弹框
  275. // getToken();
  276. }else {
  277. $(".award").addClass("active");
  278. $(".notice-text").show();
  279. $(".notice-text").attr("style","display:block!important;")
  280. $(".mask").show();
  281. $("body").attr("style","overflow:hidden");
  282. $(".bottom").show();
  283. }
  284. }
  285. function hideAlert() {
  286. if(firstTime=='true') {
  287. firstTime=false
  288. checkShow()
  289. getToken();
  290. }
  291. }
  292. function adSize(){
  293. taskObj.onLayoutAdSize(351,88)
  294. }
  295. $(".prize").on("click",function(){
  296. taskObj.h5_wallet();
  297. })
  298. function toGame(data) {
  299. if(firstTime!='true') {
  300. var url=data.split(",")[0]
  301. var id=data.split(",")[1]?data.split(",")[1]:gameId
  302. id=id?id:gameId
  303. window.location.href=unescape(url)+"?id="+id
  304. }
  305. }
  306. function count_down(sec,time_html){
  307. //倒计时封装;
  308. var time = setTimeout(function(){count_down(sec,time_html)},1000);
  309. arrTime.push(time);//每次生成的定时器都单独有一个数组里的位置,避免了冲突
  310. var datatime=/^[\d]{4}-[\d]{1,2}-[\d]{1,2}( [\d]{1,2}:[\d]{1,2}(:[\d]{1,2})?)?$/ig,str='',conn,s;
  311. sec--;
  312. sec=Number(sec)
  313. if(sec == 0 || sec < 0){
  314. //倒计时结束时----都为0
  315. for (var i = arrTime.length - 1; i >= 0; i--) {
  316. clearInterval(arrTime[i]);//清除所有的定时器
  317. };
  318. $(".timeRange").hide();
  319. // initGold(2);
  320. }else{
  321. s={'分':Math.floor(sec/60),'秒':Math.floor(sec%60)};
  322. for(i in s){
  323. if(s[i] < 10){s[i] = '0' + s[i]};
  324. if(i != '秒'){
  325. str += s[i] + ":";
  326. }else {
  327. str += s[i] ;
  328. }
  329. }
  330. var html = str
  331. $(time_html).html(html)
  332. return html;
  333. // clearInterval(time);//清除所有的定时器
  334. }
  335. }
  336. function parseQueryString(variable) {
  337. var query = window.location.search.substring(1);
  338. var vars = query.split("&");
  339. for (var i=0;i<vars.length;i++) {
  340. var pair = vars[i].split("=");
  341. if(pair[0] == variable){return pair[1];}
  342. }
  343. return(false);
  344. }