Index.php 3.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110
  1. <?php
  2. namespace app\admin\controller;
  3. use think\facade\View;
  4. use think\facade\Lang;
  5. use think\facade\Cache;
  6. /**
  7. * ============================================================================
  8. * DSMall多用户商城
  9. * ============================================================================
  10. * 版权所有 2014-2028 长沙德尚网络科技有限公司,并保留所有权利。
  11. * 网站地址: http://www.csdeshang.com
  12. * ----------------------------------------------------------------------------
  13. * 这不是一个自由软件!您只能在不用于商业目的的前提下对程序代码进行修改和使用 .
  14. * 不允许对程序代码以任何形式任何目的的再发布。
  15. * ============================================================================
  16. * 控制器
  17. */
  18. class Index extends AdminControl {
  19. public function initialize() {
  20. parent::initialize();
  21. Lang::load(base_path() . 'admin/lang/'.config('lang.default_lang').'/index.lang.php');
  22. }
  23. public function index() {
  24. View::assign('admin_info', $this->getAdminInfo());
  25. return View::fetch();
  26. }
  27. /**
  28. * 修改密码
  29. */
  30. public function modifypw() {
  31. if (request()->isPost()) {
  32. $new_pw = trim(input('post.new_pw'));
  33. $new_pw2 = trim(input('post.new_pw2'));
  34. $old_pw = trim(input('post.old_pw'));
  35. if ($new_pw !== $new_pw2) {
  36. $this->error(lang('index_modifypw_repeat_error'));
  37. }
  38. $admininfo = $this->getAdminInfo();
  39. //查询管理员信息
  40. $admin_model = model('admin');
  41. $admininfo = $admin_model->getOneAdmin(array('admin_id'=>$admininfo['admin_id']));
  42. if (!is_array($admininfo) || count($admininfo) <= 0) {
  43. $this->error(lang('index_modifypw_admin_error'));
  44. }
  45. //旧密码是否正确
  46. if ($admininfo['admin_password'] != md5($old_pw)) {
  47. $this->error(lang('index_modifypw_oldpw_error'));
  48. }
  49. $new_pw = md5($new_pw);
  50. $result = $admin_model->editAdmin(array('admin_password' => $new_pw),$admininfo['admin_id']);
  51. if ($result) {
  52. session(null);
  53. echo "<script>parent.location.href='".(string)url('Login/index')."'</script>";
  54. } else {
  55. $this->error(lang('index_modifypw_fail'));
  56. }
  57. } else {
  58. return View::fetch();
  59. }
  60. }
  61. /**
  62. * 删除缓存
  63. */
  64. function clear() {
  65. $this->delCacheFile('admin/temp');
  66. $this->delCacheFile('admin/cache');
  67. $this->delCacheFile('home/temp');
  68. $this->delCacheFile('home/cache');
  69. $this->delCacheFile('api/temp');
  70. $this->delCacheFile('api/cache');
  71. Cache::clear();
  72. ds_json_encode(10000, lang('ds_common_op_succ'));
  73. exit();
  74. }
  75. /**
  76. * 删除缓存目录下的文件或子目录文件
  77. *
  78. * @param string $dir 目录名或文件名
  79. * @return boolean
  80. */
  81. function delCacheFile($dir) {
  82. //防止删除cache以外的文件
  83. if (strpos($dir, '..') !== false)
  84. return false;
  85. $path = root_path() . 'runtime/' . $dir;
  86. if (is_dir($path)) {
  87. $file_list = array();
  88. read_file_list($path, $file_list);
  89. if (!empty($file_list)) {
  90. foreach ($file_list as $v) {
  91. if (basename($v) != 'index.html')
  92. @unlink($v);
  93. }
  94. }
  95. }
  96. else {
  97. if (basename($path) != 'index.html')
  98. @unlink($path);
  99. }
  100. return true;
  101. }
  102. }