ajax.php 22 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549
  1. <?php
  2. namespace app\index;
  3. class ajax extends Base
  4. {
  5. function initialize()
  6. {
  7. parent::initialize();
  8. $this->ajax_header();
  9. if (!session_id()) {
  10. session_start();
  11. }
  12. if (!in_array($this->action, array("jsonFormat", "adsense", "report", "check_password", "check_authcode", "super_buy"))) {
  13. Chk_authkey();
  14. }
  15. }
  16. function login()
  17. {
  18. $_var_0 = SafeRequest("user", "post");
  19. $_var_1 = SafeRequest("password", "post");
  20. $_var_2 = password($_var_1);
  21. if (!$_var_0 || !$_var_1) {
  22. reJSON("账号和密码不能为空!", 404);
  23. }
  24. $_var_3 = db("user")->where("in_username|in_mail|in_mobile", $_var_0)->where("in_userpassword", $_var_2)->find();
  25. if (!$_var_3) {
  26. reJSON("用户名/邮箱/手机或密码错误!", 404);
  27. }
  28. if ($_var_3["in_islock"] == 1) {
  29. reJSON("账户已被锁定,请联系管理员!", 404);
  30. }
  31. if (!db("user")->where("in_userid", $_var_3["in_userid"])->whereTime("in_logintime", "today")->count()) {
  32. $_var_4 = aclog_save($_var_3["in_userid"], $_var_3["in_points"] + IN_LOGINPOINTS, $_var_3["in_points"], "in_points", "每日登录赠送");
  33. $_var_4 && ($_var_4 = db("user")->where("in_userid", $_var_3["in_userid"])->inc("in_points", IN_LOGINPOINTS)->update());
  34. }
  35. db("user")->where("in_userid", $_var_3["in_userid"])->update(["in_loginip" => getonlineip(), "in_logintime" => date("Y-m-d H:i:s")]);
  36. setcookie("in_userid", $_var_3["in_userid"], time() + 86400, IN_PATH);
  37. setcookie("in_username", $_var_3["in_username"], time() + 86400, IN_PATH);
  38. setcookie("in_userpassword", $_var_2, time() + 86400, IN_PATH);
  39. if (is_numeric(IN_AC_HOLD_TIME) && IN_AC_HOLD_TIME > 0) {
  40. try {
  41. db("user_aclog")->where("create_time", "<", strtotime("- " . IN_AC_HOLD_TIME . " days"))->where("user_id", $_var_3["in_userid"])->delete();
  42. } catch (\think\exception\PDOException $_var_5) {
  43. } catch (\think\Exception $_var_5) {
  44. } catch (\think\db\exception\DbException $_var_5) {
  45. }
  46. }
  47. reJSON("登录成功,请稍等...", 200);
  48. }
  49. function phone_code_login()
  50. {
  51. $phone = SafeRequest("phone", "post");
  52. $code = SafeRequest("code", "post");
  53. if (!$phone || !$code) {
  54. reJSON("手机号和验证码不能为空!", 404);
  55. }
  56. $user = db("user")->where("in_mobile", $phone)->find();
  57. if (!$user) {
  58. reJSON("用户不存在!", 404);
  59. }
  60. if ($user["in_islock"] == 1) {
  61. reJSON("账户已被锁定,请联系管理员!", 404);
  62. }
  63. $mobile = db("mobile")->where("in_mobile", $phone)->where("in_code", $code)->order("in_id desc")->find();
  64. if (!$mobile) {
  65. reJSON("手机验证码错误", 404);
  66. }
  67. if((time()-strtotime($mobile['in_addtime'])) > 60){
  68. reJSON("手机验证码过期", 404);
  69. }
  70. if (!db("user")->where("in_userid", $user["in_userid"])->whereTime("in_logintime", "today")->count()) {
  71. $_var_4 = aclog_save($user["in_userid"], $user["in_points"] + IN_LOGINPOINTS, $user["in_points"], "in_points", "每日登录赠送");
  72. $_var_4 && ($_var_4 = db("user")->where("in_userid", $user["in_userid"])->inc("in_points", IN_LOGINPOINTS)->update());
  73. }
  74. db("user")->where("in_userid", $user["in_userid"])->update(["in_loginip" => getonlineip(), "in_logintime" => date("Y-m-d H:i:s")]);
  75. setcookie("in_userid", $user["in_userid"], time() + 86400, IN_PATH);
  76. setcookie("in_username", $user["in_username"], time() + 86400, IN_PATH);
  77. setcookie("in_userpassword", $user["in_userpassword"], time() + 86400, IN_PATH);
  78. if (is_numeric(IN_AC_HOLD_TIME) && IN_AC_HOLD_TIME > 0) {
  79. try {
  80. db("user_aclog")->where("create_time", "<", strtotime("- " . IN_AC_HOLD_TIME . " days"))->where("user_id", $user["in_userid"])->delete();
  81. } catch (\think\exception\PDOException $_var_5) {
  82. } catch (\think\Exception $_var_5) {
  83. } catch (\think\db\exception\DbException $_var_5) {
  84. }
  85. }
  86. reJSON("登录成功,请稍等...", 200);
  87. }
  88. function reg()
  89. {
  90. $_var_6 = SafeRequest("nickname", "post");
  91. $_var_7 = SafeRequest("email", "post");
  92. $_var_8 = SafeRequest("mobile", "post");
  93. $_var_9 = SafeRequest("code", "post");
  94. $_var_10 = SafeRequest("password", "post");
  95. $_var_11 = SafeRequest("repassword", "post");
  96. $_var_12 = SafeRequest("seccode", "post");
  97. $_var_13 = SafeRequest("pid", "post");
  98. $_var_14 = SafeRequest("regtype", "post");
  99. if (!$_var_6) {
  100. reJSON("请输入用户名", 404);
  101. }
  102. if (db("user")->where("in_username", $_var_6)->count()) {
  103. reJSON("用户名已经被注册", 404);
  104. }
  105. if ($_var_14) {
  106. if (!isPhone($_var_8)) {
  107. reJSON("手机号码有误,请更改", 404);
  108. }
  109. if (db("user")->where("in_mobile", $_var_8)->count()) {
  110. reJSON("手机已被占用,请更改", 404);
  111. }
  112. if (IN_SMS) {
  113. $_var_15 = db("mobile")->where("in_mobile", $_var_8)->where("in_code", $_var_9)->order("in_id desc")->value("in_id");
  114. if (!$_var_15) {
  115. reJSON("手机验证码错误", 404);
  116. }
  117. }
  118. } else {
  119. if (!preg_match("/^([a-zA-Z0-9_\\.\\-])+\\@(([a-zA-Z0-9\\-])+\\.)+([a-zA-Z0-9]{2,4})+\$/", $_var_7)) {
  120. reJSON("邮箱格式有误,请更改", 404);
  121. }
  122. if (db("user")->where("in_mail", $_var_7)->count()) {
  123. reJSON("邮箱已被占用,请更改", 404);
  124. }
  125. if (IN_MAILOPEN) {
  126. if (!check_mailcode($_var_7, $_var_9)) {
  127. reJSON("邮箱验证码错误", 404);
  128. }
  129. }
  130. }
  131. if (strlen($_var_10) < 6) {
  132. reJSON("密码最小长度为 6 个字符", 404);
  133. }
  134. if ($_var_10 != $_var_11) {
  135. reJSON("两次输入的密码不一致", 404);
  136. }
  137. if (empty($_var_12) || empty($_SESSION["code"]) || $_var_12 != $_SESSION["code"]) {
  138. //reJSON("图形验证码错误", 404);
  139. }
  140. $_var_10 = password($_var_10);
  141. $testmail = rand(11111,99999).'@test.com';
  142. $_var_16 = array("in_username" => $_var_6, "in_mail" => $testmail, "in_mobile" => $_var_8, "in_userpassword" => $_var_10, "in_regdate" => date("Y-m-d H:i:s"), "in_loginip" => getonlineip(), "in_logintime" => date("Y-m-d H:i:s"), "in_verify" => 0, "in_islock" => 0, "in_points" => IN_LOGINPOINTS, "in_filesize" => 0, "in_spaceuse" => 0, "in_spacetotal" => 0, "pid" => IN_PROMOTE ? $this->promote_rewards($_var_13) : 0, "promote_code" => promote_code(0));
  143. // var_dump(db("user")->where('in_userid', 430)->find());die;
  144. // print_r($_var_16);die;
  145. $_var_16['in_openid'] = '';
  146. $_var_16['in_nickname'] = '';
  147. $_var_17 = db("user")->insertGetId($_var_16);
  148. // echo $_var_17;die;
  149. setcookie("in_userid", $_var_17, time() + 86400, IN_PATH);
  150. setcookie("in_username", $_var_6, time() + 86400, IN_PATH);
  151. setcookie("in_userpassword", $_var_10, time() + 86400, IN_PATH);
  152. if ($_var_17) {
  153. reJSON("注册成功", 200);
  154. } else {
  155. reJSON("系统出错,请重试", 404);
  156. }
  157. }
  158. function promote_rewards($_var_18 = 0)
  159. {
  160. $_var_19 = db("user")->where(is_numeric($_var_18) ? "in_userid" : "promote_code", $_var_18)->find();
  161. return $_var_19 ? $_var_19["in_userid"] : 0;
  162. }
  163. function send_reg()
  164. {
  165. IN_MAILOPEN or reJSON("邮件服务暂未开启,请联系管理员", 404);
  166. $_var_20 = SafeRequest("email", "post");
  167. $_var_21 = db("user")->where("in_mail", $_var_20)->value("in_userid");
  168. if ($_var_21) {
  169. reJSON("邮箱已被占用,请更改", 404);
  170. }
  171. $_var_22 = "in_send_regmail";
  172. empty($_COOKIE[$_var_22]) or reJSON("请等待 60 秒后再重新获取", 404);
  173. setcookie($_var_22, "have", time() + 60, IN_PATH);
  174. $_var_23 = send_mailcode($_var_20);
  175. if (!$_var_23) {
  176. reJSON("抱歉,邮件码未能发送成功!", 404);
  177. } else {
  178. reJSON("邮件码已发送至邮箱,请注意查收!", 200);
  179. exit;
  180. }
  181. }
  182. function send_sms()
  183. {
  184. $referer = $_SERVER['HTTP_REFERER'];
  185. if(empty($referer) || (stripos($referer,"http://{$_SERVER['HTTP_HOST']}") !== 0 && stripos($referer,"https://{$_SERVER['HTTP_HOST']}")!==0) ){
  186. reJSON('没有权限');
  187. }
  188. $_var_24 = SafeRequest("phone", "post");
  189. $_var_25 = rand_code();
  190. $_var_26 = "in_send_sms";
  191. empty($_COOKIE[$_var_26]) or reJSON("请等待 60 秒后再重新获取", 404);
  192. $_var_27 = db("user")->where("in_mobile", $_var_24)->value("in_userid");
  193. if ($_var_27) {
  194. reJSON("新手机号已被占用,请更改", 404);
  195. }
  196. $_var_28 = "您的操作验证码是:" . $_var_25 . ",为了保证您的账户安全,请勿向任何人提供此验证码。";
  197. $_var_29 = send_sms($_var_24, $_var_28);
  198. if (!$_var_29) {
  199. reJSON("抱歉,验证码未能发送成功!", 404);
  200. } else {
  201. $_var_30 = array("in_mobile" => $_var_24, "in_code" => $_var_25, "in_ip" => getonlineip(), "in_addtime" => date("Y-m-d H:i:s"));
  202. db("mobile")->insert($_var_30);
  203. setcookie($_var_26, "have", time() + 30, IN_PATH);
  204. reJSON("验证码发送成功,请注意查收!", 200);
  205. }
  206. }
  207. function send_sms_forget()
  208. {
  209. $referer = $_SERVER['HTTP_REFERER'];
  210. if(empty($referer) || (stripos($referer,"http://{$_SERVER['HTTP_HOST']}") !== 0 && stripos($referer,"https://{$_SERVER['HTTP_HOST']}")!==0) ){
  211. reJSON('没有权限');
  212. }
  213. $_var_24 = SafeRequest("phone", "post");
  214. $_var_25 = rand_code();
  215. $_var_26 = "in_send_sms";
  216. empty($_COOKIE[$_var_26]) or reJSON("请等待 60 秒后再重新获取", 404);
  217. $_var_27 = db("user")->where("in_mobile", $_var_24)->value("in_userid");
  218. if (!$_var_27) {
  219. reJSON("手机号不存在", 404);
  220. }
  221. $_var_28 = "您的操作验证码是:" . $_var_25 . ",为了保证您的账户安全,请勿向任何人提供此验证码。";
  222. $_var_29 = send_sms($_var_24, $_var_28);
  223. if (!$_var_29) {
  224. reJSON("抱歉,验证码未能发送成功!", 404);
  225. } else {
  226. $_var_30 = array("in_mobile" => $_var_24, "in_code" => $_var_25, "in_ip" => getonlineip(), "in_addtime" => date("Y-m-d H:i:s"));
  227. db("mobile")->insert($_var_30);
  228. setcookie($_var_26, "have", time() + 30, IN_PATH);
  229. reJSON("验证码发送成功,请注意查收!", 200);
  230. }
  231. }
  232. function send()
  233. {
  234. IN_MAILOPEN or reJSON("邮件服务暂未开启,请联系管理员", 404);
  235. $_var_31 = SafeRequest("email", "post");
  236. if (!isEmail($_var_31)) {
  237. reJSON("邮箱格式不正确,请更改!", 404);
  238. }
  239. $_var_32 = SafeRequest("reg", "post");
  240. if ($_var_32) {
  241. $_var_33 = db("user")->where("in_mail", $_var_31)->value("in_userid");
  242. if ($_var_33) {
  243. reJSON("邮箱已存在,请更改!", 404);
  244. }
  245. } else {
  246. $_var_33 = db("user")->where("in_mail", $_var_31)->value("in_userid");
  247. if (!$_var_33) {
  248. reJSON("邮箱不存在,请更改!", 404);
  249. }
  250. }
  251. $_var_34 = "in_send_mail";
  252. empty($_COOKIE[$_var_34]) or reJSON("请等待 60 秒后再重新获取", 404);
  253. $_var_35 = send_mailcode($_var_31, "", $this->userid ?: $_var_33);
  254. if (!$_var_35) {
  255. reJSON("抱歉,邮件码未能发送成功!", 404);
  256. } else {
  257. setcookie($_var_34, "have", time() + 30, IN_PATH);
  258. reJSON("邮件码已发送至邮箱,请注意查收!", 200);
  259. }
  260. }
  261. function lost()
  262. {
  263. $_var_36 = SafeRequest("email", "post");
  264. $_var_37 = SafeRequest("password", "post");
  265. $_var_38 = SafeRequest("repassword", "post");
  266. $_var_39 = SafeRequest("code", "post");
  267. $_var_40 = db("user")->where("in_mail", $_var_36)->value("in_userid");
  268. if (!$_var_40) {
  269. reJSON("邮箱不存在,请更改!", 404);
  270. }
  271. if (!check_mailcode($_var_36, $_var_39, $_var_40)) {
  272. reJSON("邮件码有误,请更改!", 404);
  273. }
  274. if (strlen($_var_37) < 6) {
  275. reJSON("密码最小长度为 6 个字符", 404);
  276. }
  277. if ($_var_37 != $_var_38) {
  278. reJSON("两次输入的密码不一致", 404);
  279. }
  280. db("user")->where(array("in_userid" => $_var_40))->update(array("in_userpassword" => password($_var_37)));
  281. reJSON("重置成功,请登录...", 200);
  282. }
  283. function lost_phone()
  284. {
  285. $_var_36 = SafeRequest("phone", "post");
  286. $_var_37 = SafeRequest("password", "post");
  287. $_var_38 = SafeRequest("repassword", "post");
  288. $_var_39 = SafeRequest("code", "post");
  289. $_var_40 = db("user")->where("in_mobile", $_var_36)->value("in_userid");
  290. if (!$_var_40) {
  291. reJSON("手机不存在,请更改!", 404);
  292. }
  293. $_var_15 = db("mobile")->where("in_mobile", $_var_36)->where("in_code", $_var_39)->order("in_id desc")->find();
  294. if (!$_var_15) {
  295. reJSON("手机验证码错误", 404);
  296. }
  297. if((time()-strtotime($_var_15['in_addtime'])) > 60){
  298. reJSON("手机验证码过期", 404);
  299. }
  300. if (strlen($_var_37) < 6) {
  301. reJSON("密码最小长度为 6 个字符", 404);
  302. }
  303. if ($_var_37 != $_var_38) {
  304. reJSON("两次输入的密码不一致", 404);
  305. }
  306. db("user")->where(array("in_userid" => $_var_40))->update(array("in_userpassword" => password($_var_37)));
  307. reJSON("重置成功,请登录...", 200);
  308. }
  309. function feedback()
  310. {
  311. $_var_41 = SafeRequest("type", "post");
  312. $_var_42 = SafeRequest("content", "post");
  313. $_var_43 = SafeRequest("qq", "post");
  314. $_var_44 = SafeRequest("screenshots", "post");
  315. if (!$_var_42 || !$_var_43) {
  316. reJSON("反馈内容和QQ不能为空!", 404);
  317. }
  318. $_var_45 = array("type" => $_var_41, "desc" => $_var_42, "qq" => $_var_43, "addtime" => date("Y-m-d H:i:s"));
  319. $_var_46 = db("ticket")->insertGetId($_var_45);
  320. if ($_var_46) {
  321. reJSON("提交反馈成功", 200);
  322. } else {
  323. reJSON("系统出错", 404);
  324. }
  325. }
  326. function check_authcode()
  327. {
  328. $_var_47 = SafeRequest("url", "get");
  329. $_var_48 = SafeRequest("password", "get");
  330. $_var_49 = SafeRequest("ssid", "get");
  331. $_var_50 = db("super_sign")->where("id", $_var_49)->value("udid");
  332. if (!$_var_50) {
  333. reJSON("AUTHCODE_DEVICE_ERROR", 404);
  334. }
  335. $_var_51 = db("appid")->where("in_link", $_var_47)->find();
  336. $_var_52 = db("super_code")->where("code", $_var_48)->where("status", "0")->find();
  337. if ($_var_52) {
  338. if ($_var_52["udid"]) {
  339. if ($_var_50 != $_var_52["udid"] || $_var_52["type"] == 1 && $_var_52["app_id"] && $_var_52["app_id"] != $_var_51["in_id"] || $_var_52["type"] == 2 && $_var_52["user_id"] && $_var_52["user_id"] != $_var_51["in_uid"]) {
  340. reJSON("AUTHCODE_USED", 404);
  341. }
  342. }
  343. if ($_var_52["use_time"] > 0) {
  344. $_var_53 = min(intval(IN_DOWNCODE_MAX_TIME), intval($_var_52["days"])) ?: max(intval(IN_DOWNCODE_MAX_TIME), intval($_var_52["days"]));
  345. if ($_var_53 && $_var_52["use_time"] < strtotime("- " . $_var_53 . " days")) {
  346. reJSON("AUTHCODE_OVER", 404);
  347. }
  348. if ($_var_52["cert_iss"] && !$_var_52["days"]) {
  349. $_var_54 = db("super_cert")->where("iss", $_var_52["cert_iss"])->value("status");
  350. if (!$_var_54 || $_var_54 == -1) {
  351. reJSON("AUTHCODE_CERT_ERROR", 404);
  352. }
  353. }
  354. } else {
  355. db("super_code")->where("user_id", $_var_52["user_id"])->where("code", $_var_48)->update(["use_time" => time(), "udid" => $_var_50, "app_id" => $_var_51["in_id"]]);
  356. }
  357. setcookie("downcode", $_var_48, time() + 86400);
  358. reJSON("AUTHCODE_RIGHT", 200);
  359. } else {
  360. reJSON("AUTHCODE_WRONG", 404);
  361. }
  362. }
  363. function check_password()
  364. {
  365. $_var_55 = SafeRequest("url", "get");
  366. $_var_56 = SafeRequest("password", "get") ?: $_COOKIE["downpass"] ?? "";
  367. $_var_57 = db("appid")->where("in_link", $_var_55)->where("in_apppwd", $_var_56)->count();
  368. if ($_var_57) {
  369. setcookie("downpass", $_var_56, time() + 86400);
  370. reJSON("密码正确!", 200);
  371. } else {
  372. reJSON("密码出错!", 404);
  373. }
  374. }
  375. function get_template_note()
  376. {
  377. $_var_58 = SafeRequest("lang", "get") ?: "zh";
  378. reJSON(getTemplateData($_var_58));
  379. }
  380. function jsonFormat()
  381. {
  382. $_var_59 = SafeRequest("link", "get");
  383. $_var_60 = SafeRequest("ssid", "get");
  384. $_var_61 = SafeRequest("s", "get");
  385. $_var_62 = SafeRequest("password", "get") ?: $_COOKIE["downpass"] ?? "";
  386. $_var_63 = db("appid")->where("in_link", $_var_59)->find();
  387. $_var_64 = db("user")->where("in_userid", $_var_63["in_uid"])->find();
  388. $_var_65 = db("super_sign")->where("id", $_var_60)->value("udid");
  389. $_var_66 = db("ios_device")->where("udid", $_var_65)->value("cert_iss");
  390. if (!$_var_63 || $_var_64["in_verify"] != 1 && IN_VERIFY > 0 || $_var_63["in_applimit"] <= $_var_63["in_downloads"] && $_var_63["in_applimit"] != 0 || $_var_62 && $_var_63["in_apppwd"] && $_var_63["in_apppwd"] != $_var_62) {
  391. $_var_67 = array("template" => "error", "template_data" => getTemplateData());
  392. reJSON($_var_67, 200);
  393. } else {
  394. if ($_var_65 && empty($_var_66) && $_var_64["device_num"] < 1 && $_var_64["prv_device_num"] < 1) {
  395. $_var_67 = array("template" => "error", "template_data" => getTemplateData());
  396. reJSON($_var_67, 200);
  397. }
  398. }
  399. if ($_var_63["in_applock"] == 1) {
  400. $_var_68 = "error";
  401. } else {
  402. $_var_68 = "tmp" . $_var_63["template"];
  403. }
  404. $_var_69 = 0;
  405. if ($_var_65 || empty($_var_63["in_apppwd"]) || $_var_63["in_apppwd"] == $_var_62) {
  406. $_var_69 = 1;
  407. }
  408. $_var_70 = 0;
  409. if ($_var_65 && $_var_63["in_super"]) {
  410. $_var_71 = db("super_sign")->where("id", $_var_60)->order("id desc")->value("plist_path");
  411. $_var_71 = $_var_71 ? "itms-services://?action=download-manifest&url=" . get_site_url("s") . "/" . $_var_71 : "";
  412. $_var_70 = 1;
  413. $_var_63["in_use_auth_code"] = intval(IN_USE_DOWNCODE || $_var_64["in_use_auth_code"] || $_var_63["in_use_auth_code"]);
  414. if ($_var_63["in_use_auth_code"]) {
  415. $_var_70 = $_var_69 = 0;
  416. if (isset($_COOKIE["downcode"])) {
  417. $_var_72 = [];
  418. $_var_72[] = ["code", "=", $_COOKIE["downcode"]];
  419. $_var_72[] = ["udid", "=", $_var_65];
  420. $_var_73 = db("super_code")->where($_var_72)->where("status", "0")->find();
  421. if ($_var_73 && ($_var_73["type"] == 2 || $_var_73["type"] == 1 && $_var_73["app_id"] == $_var_63["in_id"])) {
  422. $_var_70 = $_var_69 = 1;
  423. if ($_var_73["cert_iss"] && IN_DOWNCODE_FOLLOW_CERT && !$_var_73["days"]) {
  424. $_var_74 = db("super_cert")->where("iss", $_var_73["cert_iss"])->find();
  425. if (!$_var_74 || $_var_74["status"] == -1) {
  426. $_var_70 = $_var_69 = 0;
  427. }
  428. }
  429. $_var_75 = min(intval(IN_DOWNCODE_MAX_TIME), intval($_var_73["days"])) ?: max(intval(IN_DOWNCODE_MAX_TIME), intval($_var_73["days"]));
  430. if ($_var_69 && $_var_75 && $_var_73["use_time"] < strtotime("- " . $_var_75 . " days")) {
  431. $_var_70 = $_var_69 = 0;
  432. }
  433. }
  434. }
  435. }
  436. }
  437. if ($_var_63["in_kid"]) {
  438. $_var_76 = "3";
  439. } else {
  440. if ($_var_63["in_form"] == "iOS") {
  441. $_var_76 = "1";
  442. } elseif ($_var_63["in_form"] == "Android") {
  443. $_var_76 = "2";
  444. }
  445. }
  446. $_var_77 = "";
  447. if ($_var_60) {
  448. $_var_78 = is_ssl() ? "https://" : "http://";
  449. $_var_79 = $_var_78 . $_SERVER["HTTP_HOST"] . "/" . $_var_63["in_link"] . "?ssid=" . $_var_60;
  450. $_var_80 = IN_DOMAIN ?: $_SERVER["HTTP_HOST"];
  451. $_var_77 = $_var_78 . $_var_80 . "/index/super_buy?ssid=" . $_var_60 . "&link=" . urlencode($_var_79);
  452. }
  453. $_var_81 = getTemplateData($_var_63["template_language"]);
  454. $_var_67 = ["app_intro" => $_var_63["in_appintro"] ? htmlspecialchars_decode($_var_63["in_appintro"]) : $_var_63["in_name"], "app_name" => $_var_63["in_name"], "app_size" => formatsize($_var_63["in_size"]), "desciption" => IN_DESCRIPTION, "downurl" => "/upload/install?id=" . bees_encrypt($_var_63["in_id"]) . ($_var_60 ? "&ssid=" . $_var_60 : "") . ($_var_61 == "s" ? "&s=" . $_var_61 : ""), "ext" => $_var_63["in_form"], "icon" => geticon($_var_63["in_icon"]), "fileExt" => substr(strrchr($_var_63["in_app"], "."), 1), "icon_300" => geticon($_var_63["in_icon"]), "id" => bees_encrypt($_var_63["in_id"]), "keywords" => IN_KEYWORDS, "qq" => $_var_63["in_contact"], "qrcode_url" => getlink($_var_63["in_id"], $_var_60 || $_var_61 == "s"), "remark" => $_var_63["in_remark"], "show_guide" => $_var_63["in_tutorial"], "support" => $_var_76, "template" => $_var_68, "template_language" => $_var_63["template_language"], "template_data" => $_var_81, "update_dt" => date("Y-m-d H:i:s", $_var_63["in_updatetime"]), "is_publish" => 1, "version" => $_var_63["in_bsvs"], "version_code" => $_var_63["in_bvs"], "web_url" => getlink($_var_63["in_id"]), "use_auth_code" => intval($_var_63["in_use_auth_code"]), "auth_code_dispense_url" => $_var_63["auth_code_dispense_url"] ? $_var_63["auth_code_dispense_url"] : $_var_77, "user_device_num" => $_var_64["device_num"], "in_super" => $_var_63["in_super"], "super_sign" => $_var_70, "checked" => $_var_69, "show_ad" => $_var_64["in_svip"] > 0 ? 0 : 1, "plist_path" => $_var_71 ?? ""];
  455. reJSON($_var_67, 200);
  456. }
  457. function adsense()
  458. {
  459. echo "<div class=\"row-fluid text-center\" style=\"position:fixed;bottom:0;z-index:99;width:100%;\"><a href=\"" . IN_ADLINK . "\" style=\"display:block;\"><img style=\"max-width:100%;height:auto;\" src=\"" . IN_ADIMG . "\"></a></div>";
  460. }
  461. function report()
  462. {
  463. $_var_82 = bees_decrypt(SafeRequest("app_id", "post"));
  464. $_var_83 = SafeRequest("type", "post");
  465. $_var_84 = SafeRequest("message", "post");
  466. $_var_85 = SafeRequest("app_name", "post");
  467. $_var_86 = SafeRequest("email", "post");
  468. if (!$_var_82 || !$_var_84 || !$_var_83 || !$_var_86) {
  469. reJSON("反馈内容和email不能为空!", 404);
  470. }
  471. $_var_87 = db("appid")->where("in_id", $_var_82)->find();
  472. $_var_88 = array("appid" => $_var_82, "app_uid" => $_var_87["in_uid"], "appname" => $_var_85, "email" => $_var_86, "reason" => $_var_83, "note" => $_var_84, "addtime" => date("Y-m-d H:i:s"));
  473. $_var_89 = db("report")->insertGetId($_var_88);
  474. if ($_var_89) {
  475. reJSON("提交反馈成功", 200);
  476. } else {
  477. reJSON("系统出错", 404);
  478. }
  479. }
  480. function super_buy()
  481. {
  482. $_var_90 = SafeRequest("discount_id", "post");
  483. $_var_91 = SafeRequest("pay_type", "post");
  484. $_var_92 = SafeRequest("ssid", "post");
  485. if (!$_var_90 || !$_var_91 || !$_var_92) {
  486. reJSON("参数错误!", 404);
  487. }
  488. $_var_93 = db("super_sign")->where("id", $_var_92)->find();
  489. if (!$_var_93) {
  490. reJSON("参数错误!", 404);
  491. }
  492. $_var_94 = $_var_93["user_id"];
  493. $_var_95 = db("user")->where("in_userid", $_var_94)->find();
  494. $_var_96 = "";
  495. $_var_97 = create_order_no($this->userid);
  496. $_var_98 = db("item")->where("id", $_var_90)->where("status", 1)->find();
  497. if (!$_var_98) {
  498. reJSON("商品套餐已下架!", 404);
  499. }
  500. $_var_99 = "超级下载码ssid:" . $_var_92;
  501. $_var_100 = $_var_98["price"];
  502. $_var_101 = $_var_98["number"];
  503. $_var_102 = array("in_uid" => $_var_93["user_id"], "in_uname" => $_var_95["in_username"], "pay_id" => $_var_97, "pay_tag" => $_var_99, "pay_points" => $_var_101, "pay_money" => $_var_100, "pay_type" => $_var_91, "pay_param" => $_var_98["type"], "pay_status" => 1, "item_id" => $_var_90, "creat_time" => time());
  504. db("paylog")->insert($_var_102);
  505. $_var_103 = array("trade_id" => $_var_97, "pay_type" => $_var_91, "ssid" => $_var_92);
  506. reJSON($_var_103, 200, $_var_96);
  507. }
  508. }