PageRenderTime 37ms CodeModel.GetById 11ms RepoModel.GetById 1ms app.codeStats 0ms

/web raovat.vn php/az24/source/module/member/member_connect_register.php

https://gitlab.com/phamngsinh/baitaplon_sinhvien
PHP | 127 lines | 94 code | 27 blank | 6 comment | 17 complexity | 6cda3bdfccf4efc10fe41b9ab28a4165 MD5 | raw file
  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: member_connect_register.php 28644 2012-03-06 13:44:19Z houdelei $
  7. */
  8. if(!defined('IN_DISCUZ')) {
  9. exit('Access Denied');
  10. }
  11. $from_connect = $_G['setting']['connect']['allow'] ? 1 : 0;
  12. $regname = 'connect';
  13. if(empty($_POST)) {
  14. $_G['qc']['connect_auth_hash'] = $_GET['con_auth_hash'];
  15. $_G['qc']['dreferer'] = dreferer();
  16. if(!$_G['qc']['connect_auth_hash']) {
  17. $_G['qc']['connect_auth_hash'] = $_G['cookie']['con_auth_hash'];
  18. }
  19. $conopenid = authcode($_G['qc']['connect_auth_hash']);
  20. if (empty($conopenid)) {
  21. showmessage('qqconnect:connect_login_first', $referer);
  22. }
  23. $_G['qc']['connect_is_feed'] = true;
  24. $_G['qc']['connect_app_id'] = $_G['setting']['connectappid'];
  25. $_G['qc']['connect_openid'] = $conopenid;
  26. unset($auth_code, $conopenid);
  27. $_G['qc']['connect_is_notify'] = true;
  28. foreach($_G['cache']['fields_register'] as $field) {
  29. $fieldid = $field['fieldid'];
  30. $html = profile_setting($fieldid, $connectdefault);
  31. if($html) {
  32. $settings[$fieldid] = $_G['cache']['profilesetting'][$fieldid];
  33. $htmls[$fieldid] = $html;
  34. }
  35. }
  36. } else {
  37. if(!empty($_G['setting']['checkuinlimit']) && !empty($_GET['uin'])) {
  38. if($_G['qc']['uinlimit']) {
  39. showmessage('qqconnect:connect_register_uinlimit', '', array('limit' => $this->setting['connect']['register_uinlimit']));
  40. }
  41. if(!$_G['setting']['regconnect']) {
  42. showmessage('qqconnect:connect_register_closed');
  43. }
  44. }
  45. $conuin = $this->connect_guest['conuin'];
  46. $conuinsecret = $this->connect_guest['conuinsecret'];
  47. $conopenid = $this->connect_guest['conopenid'];
  48. $cookie_expires = 2592000;
  49. dsetcookie('client_created', TIMESTAMP, $cookie_expires);
  50. dsetcookie('client_token', 1, $cookie_expires);
  51. if (!$conuin || !$conuinsecret || !$conopenid) {
  52. showmessage('qqconnect:connect_get_request_token_failed');
  53. }
  54. if(C::t('#qqconnect#common_member_connect')->fetch_fields_by_openid($conopenid, 'uid')) {
  55. showmessage('qqconnect:connect_register_bind_uin_already');
  56. }
  57. $conispublishfeed = $conispublisht = 1;
  58. $is_qzone_avatar = !empty($_GET['use_qzone_avatar']) ? 1 : 0;
  59. $is_use_qqshow = !empty($_GET['use_qqshow']) ? 1 : 0;
  60. $userdata = array();
  61. $userdata['avatarstatus'] = $is_qzone_avatar;
  62. $userdata['conisbind'] = 1;
  63. C::t('#qqconnect#common_member_connect')->insert(array(
  64. 'uid' => $uid,
  65. 'conuin' => $conuin,
  66. 'conuinsecret' => $conuinsecret,
  67. 'conopenid' => $conopenid,
  68. 'conispublishfeed' => $conispublishfeed,
  69. 'conispublisht' => $conispublisht,
  70. 'conisregister' => '1',
  71. 'conisqzoneavatar' => $is_qzone_avatar,
  72. 'conisfeed' => '1',
  73. 'conisqqshow' => $is_use_qqshow,
  74. ));
  75. dsetcookie('connect_js_name', 'user_bind', 86400);
  76. dsetcookie('connect_js_params', base64_encode(serialize(array('type' => 'register'))), 86400);
  77. dsetcookie('connect_login', 1, 31536000);
  78. dsetcookie('connect_is_bind', '1', 31536000);
  79. dsetcookie('connect_uin', $conopenid, 31536000);
  80. dsetcookie('stats_qc_reg', 1, 86400);
  81. if ($_GET['is_feed']) {
  82. dsetcookie('connect_synpost_tip', 1, 31536000);
  83. }
  84. C::t('#qqconnect#connect_memberbindlog')->insert(array('uid' => $uid, 'uin' => $conopenid, 'type' => '1', 'dateline' => $_G['timestamp']));
  85. dsetcookie('con_auth_hash');
  86. C::t('#qqconnect#common_connect_guest')->delete($conopenid);
  87. if($_G['setting']['connect']['register_groupid']) {
  88. $userdata['groupid'] = $groupinfo['groupid'] = $_G['setting']['connect']['register_groupid'];
  89. }
  90. C::t('common_member')->update($uid, $userdata);
  91. if($_G['setting']['connect']['register_addcredit']) {
  92. $addcredit = array('extcredits'.$_G['setting']['connect']['register_rewardcredit'] => $_G['setting']['connect']['register_addcredit']);
  93. }
  94. C::t('common_member_count')->increase($uid, $addcredit);
  95. }
  96. function connect_filter_username($username) {
  97. $username = str_replace(' ', '_', trim($username));
  98. return cutstr($username, 15, '');
  99. }
  100. ?>