secure.php 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. <?php
  2. /**
  3. * [Discuz!] (C)2001-2099 Comsenz Inc.
  4. * This is NOT a freeware, use is subject to license terms
  5. *
  6. * $Id: secure.php 34397 2014-04-14 06:53:24Z nemohou $
  7. */
  8. if(!defined('IN_MOBILE_API')) {
  9. exit('Access Denied');
  10. }
  11. include_once 'misc.php';
  12. class mobile_api {
  13. function common() {
  14. global $_G;
  15. $seccodecheck = $secqaacheck = false;
  16. if($_GET['type'] == 'register') {
  17. $seccodecheck = $_G['setting']['seccodestatus'] & 1;
  18. $secqaacheck = $_G['setting']['secqaa']['status'] & 1;
  19. } elseif($_GET['type'] == 'login') {
  20. $seccodecheck = $_G['setting']['seccodestatus'] & 2;
  21. } elseif($_GET['type'] == 'post') {
  22. $seccodecheck = ($_G['setting']['seccodestatus'] & 4) && (!$_G['setting']['seccodedata']['minposts'] || getuserprofile('posts') < $_G['setting']['seccodedata']['minposts']);
  23. $secqaacheck = $_G['setting']['secqaa']['status'] & 2 && (!$_G['setting']['secqaa']['minposts'] || getuserprofile('posts') < $_G['setting']['secqaa']['minposts']);
  24. }
  25. $sechash = random(8);
  26. if($seccodecheck || $secqaacheck) {
  27. $variable = array('sechash' => $sechash);
  28. if($seccodecheck) {
  29. $variable['seccode'] = $_G['siteurl'].'api/mobile/index.php?module=seccode&sechash='.$sechash.'&version='.(empty($_GET['secversion']) ? '1' : $_GET['secversion']);
  30. }
  31. if($secqaacheck) {
  32. require_once libfile('function/seccode');
  33. $variable['secqaa'] = make_secqaa($sechash);
  34. }
  35. }
  36. mobile_core::result(mobile_core::variable($variable));
  37. }
  38. function output() {}
  39. }
  40. ?>