Memberconnect.php 7.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187
  1. <?php
  2. namespace app\home\controller;
  3. use think\facade\View;
  4. use think\facade\Lang;
  5. /**
  6. * ============================================================================
  7. * DSMall多用户商城
  8. * ============================================================================
  9. * 版权所有 2014-2028 长沙德尚网络科技有限公司,并保留所有权利。
  10. * 网站地址: http://www.csdeshang.com
  11. * ----------------------------------------------------------------------------
  12. * 这不是一个自由软件!您只能在不用于商业目的的前提下对程序代码进行修改和使用 .
  13. * 不允许对程序代码以任何形式任何目的的再发布。
  14. * ============================================================================
  15. * 控制器
  16. */
  17. class Memberconnect extends BaseMember {
  18. public function initialize() {
  19. parent::initialize(); // TODO: Change the autogenerated stub
  20. Lang::load(base_path() . 'home/lang/'.config('lang.default_lang').'/memberconnect.lang.php');
  21. }
  22. /**
  23. * QQ绑定
  24. */
  25. public function qqbind() {
  26. //获得用户信息
  27. if (trim($this->member_info['member_qqinfo'])) {
  28. $this->member_info['member_qqinfoarr'] = unserialize($this->member_info['member_qqinfo']);
  29. }
  30. View::assign('member_info', $this->member_info);
  31. //信息输出
  32. $this->setMemberCurItem('qq_bind');
  33. $this->setMemberCurMenu('member_connect');
  34. return View::fetch($this->template_dir . 'member_qqbind');
  35. }
  36. /**
  37. * QQ解绑
  38. */
  39. public function qqunbind() {
  40. //修改密码
  41. $member_model = model('member');
  42. $update_arr = array();
  43. if (input('post.is_editpw') == 'yes') {
  44. /**
  45. * 填写密码信息验证
  46. */
  47. $data = array(
  48. 'new_password' => input('post.new_password'),
  49. 'confirm_password' => input('post.confirm_password')
  50. );
  51. $memberconnect_validate = ds_validate('memberconnect');
  52. if (!$memberconnect_validate->scene('qqunbind')->check($data)) {
  53. $this->error($memberconnect_validate->getError());
  54. }
  55. $update_arr['member_password'] = md5(trim(input('post.new_password')));
  56. }
  57. $update_arr['member_qqopenid'] = '';
  58. $update_arr['member_qqinfo'] = '';
  59. $edit_state = $member_model->editMember(array('member_id' => session('member_id')), $update_arr,session('member_id'));
  60. if (!$edit_state) {
  61. $this->error(lang('member_qqconnect_password_modify_fail'),(string)url('Memberconnect/qqbind'));
  62. }
  63. session(null);
  64. $this->success(lang('member_qqconnect_unbind_success'), HOME_SITE_URL.'/login/login.html?ref_url=' . urlencode((string)url('Memberconnect/qqbind')));
  65. }
  66. /**
  67. * 新浪绑定
  68. */
  69. public function sinabind() {
  70. //获得用户信息
  71. if (trim($this->member_info['member_sinainfo'])) {
  72. $this->member_info['member_sinainfoarr'] = unserialize($this->member_info['member_sinainfo']);
  73. }
  74. View::assign('member_info', $this->member_info);
  75. //信息输出
  76. $this->setMemberCurItem('sina_bind');
  77. $this->setMemberCurMenu('member_connect');
  78. return View::fetch($this->template_dir . 'member_sinabind');
  79. }
  80. /**
  81. * 新浪解绑
  82. */
  83. public function sinaunbind() {
  84. //修改密码
  85. $member_model = model('member');
  86. $update_arr = array();
  87. if (input('post.is_editpw') == 'yes') {
  88. /**
  89. * 填写密码信息验证
  90. */
  91. $data = array(
  92. 'new_password' => input('post.new_password'),
  93. 'confirm_password' => input('post.confirm_password')
  94. );
  95. $memberconnect_validate = ds_validate('memberconnect');
  96. if (!$memberconnect_validate->scene('sinaunbind')->check($data)) {
  97. $this->error($memberconnect_validate->getError());
  98. }
  99. $update_arr['member_password'] = md5(trim(input('post.new_password')));
  100. }
  101. $update_arr['member_sinaopenid'] = '';
  102. $update_arr['member_sinainfo'] = '';
  103. $edit_state = $member_model->editMember(array('member_id' => session('member_id')), $update_arr,session('member_id'));
  104. if (!$edit_state) {
  105. $this->error(lang('member_sconnect_password_modify_fail'));
  106. }
  107. session(null);
  108. $this->success(lang('member_sconnect_unbind_success'), HOME_SITE_URL.'/Login/login.html?ref_url=' . urlencode((string)url('Memberconnect/sinabind')));
  109. }
  110. /**
  111. * 微信绑定
  112. */
  113. public function weixinbind() {
  114. //获得用户信息
  115. if (trim($this->member_info['member_wxinfo'])) {
  116. $this->member_info['weixin_infoarr'] = unserialize($this->member_info['member_wxinfo']);
  117. }
  118. View::assign('member_info', $this->member_info);
  119. //信息输出
  120. $this->setMemberCurMenu('member_connect');
  121. $this->setMemberCurItem('weixin_bind');
  122. return View::fetch($this->template_dir . 'member_weixinbind');
  123. }
  124. /**
  125. * 微信解绑
  126. */
  127. public function weixinunbind() {
  128. //修改密码
  129. $member_model = model('member');
  130. $update_arr = array();
  131. if (input('post.is_editpw') == 'yes') {
  132. /**
  133. * 填写密码信息验证
  134. */
  135. $data=[
  136. 'new_password'=>input('post.new_password'),
  137. 'confirm_password'=>input('post.confirm_password')
  138. ];
  139. $memberconnect_validate = ds_validate('memberconnect');
  140. if (!$memberconnect_validate->scene('weixinunbind')->check($data)) {
  141. $this->error($memberconnect_validate->getError());
  142. }
  143. $update_arr['member_password'] = md5(trim(input('post.new_password')));
  144. }
  145. $update_arr['member_wxunionid'] = '';
  146. $update_arr['member_wxopenid'] = '';
  147. $update_arr['member_wxinfo'] = '';
  148. $edit_state = $member_model->editMember(array('member_id' => session('member_id')), $update_arr,session('member_id'));
  149. if (!$edit_state) {
  150. $this->error(lang('ds_common_save_fail'));
  151. }
  152. session(null);
  153. $this->success(lang('wechat_was_unbound_successfully'), HOME_SITE_URL.'/Login/login.html?ref_url='. urlencode((string)url('Memberconnect/weixinbind')));
  154. }
  155. /**
  156. * 用户中心右边,小导航
  157. *
  158. * @param string $menu_type 导航类型
  159. * @param string $name 当前导航的name
  160. * @param array $array 附加菜单
  161. * @return
  162. */
  163. protected function getMemberItemList() {
  164. $menu_array = array(
  165. array('name' => 'qq_bind', 'text' => lang('ds_member_path_qq_bind'), 'url' => (string)url('Memberconnect/qqbind')),
  166. array('name' => 'sina_bind', 'text' => lang('ds_member_path_sina_bind'), 'url' => (string)url('Memberconnect/sinabind')),
  167. array('name' => 'weixin_bind', 'text' => lang('micro_letter_binding'), 'url' => (string)url('Memberconnect/weixinbind')),
  168. );
  169. return $menu_array;
  170. }
  171. }