Advertisement
Guest User

Untitled

a guest
Jan 29th, 2018
140
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 29.33 KB | None | 0 0
  1. <?php
  2. /*
  3. UserSpice 4
  4. An Open Source PHP User Management System
  5. by the UserSpice Team at http://UserSpice.com
  6.  
  7. This program is free software: you can redistribute it and/or modify
  8. it under the terms of the GNU General Public License as published by
  9. the Free Software Foundation, either version 3 of the License, or
  10. (at your option) any later version.
  11.  
  12. This program is distributed in the hope that it will be useful,
  13. but WITHOUT ANY WARRANTY; without even the implied warranty of
  14. MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  15. GNU General Public License for more details.
  16.  
  17. You should have received a copy of the GNU General Public License
  18. along with this program. If not, see <http://www.gnu.org/licenses/>.
  19. */
  20. ini_set('max_execution_time', 1356);
  21. ini_set('memory_limit','1024M');
  22. ?>
  23. <?php require_once '../users/init.php'; ?>
  24. <?php require_once $abs_us_root.$us_url_root.'users/includes/header.php'; ?>
  25. <?php require_once $abs_us_root.$us_url_root.'users/includes/navigation.php'; ?>
  26.  
  27. <?php if (!securePage($_SERVER['PHP_SELF'])){die();} ?>
  28. <link href="../users/css/admin-tabs.css" rel="stylesheet">
  29. <style>
  30. /* centered columns styles */
  31. .row-centered {
  32. text-align:center;
  33. }
  34. .col-centered {
  35. display:inline-block;
  36. float:none;
  37. /* reset the text-align */
  38. text-align:center;
  39. /* inline-block space fix */
  40. margin-right:-4px;
  41. }
  42. .row-centered .col-centered {
  43. padding: 0px 3px;
  44. }
  45. .row-centered .panel {
  46. padding: 10px 0px;
  47. }
  48. </style>
  49. <?php
  50. $pagePermissions = fetchPagePermissions(4);
  51. $tab = Input::get('tab');
  52.  
  53. // To make this panel super admin only, uncomment out the lines below
  54. // if($user->data()->id !='1'){
  55. // Redirect::to('account.php');
  56. // }
  57.  
  58. //PHP Goes Here!
  59. delete_user_online(); //Deletes sessions older than 24 hours
  60. if($_SERVER["REMOTE_ADDR"]=="127.0.0.1" || $_SERVER["REMOTE_ADDR"]=="::1" || $_SERVER["REMOTE_ADDR"]=="localhost"){
  61. $local = True;
  62. }else{
  63. $local = False;
  64. }
  65.  
  66. $errors = $successes = [];
  67.  
  68. //Find users who have logged in in X amount of time.
  69. $date = date("Y-m-d H:i:s");
  70.  
  71. $hour = date("Y-m-d H:i:s", strtotime("-1 hour", strtotime($date)));
  72. $today = date("Y-m-d H:i:s", strtotime("-1 day", strtotime($date)));
  73. $week = date("Y-m-d H:i:s", strtotime("-1 week", strtotime($date)));
  74. $month = date("Y-m-d H:i:s", strtotime("-1 month", strtotime($date)));
  75.  
  76. $last24=time()-86400;
  77.  
  78. $recentUsersQ = $db->query("SELECT * FROM users_online WHERE timestamp > ? ORDER BY timestamp DESC",array($last24));
  79. $recentUsersCount = $recentUsersQ->count();
  80. $recentUsers = $recentUsersQ->results();
  81.  
  82. $usersHourQ = $db->query("SELECT * FROM users WHERE last_login > ?",array($hour));
  83. $usersHour = $usersHourQ->results();
  84. $hourCount = $usersHourQ->count();
  85.  
  86. $usersTodayQ = $db->query("SELECT * FROM users WHERE last_login > ?",array($today));
  87. $dayCount = $usersTodayQ->count();
  88. $usersDay = $usersTodayQ->results();
  89.  
  90. $usersWeekQ = $db->query("SELECT username FROM users WHERE last_login > ?",array($week));
  91. $weekCount = $usersWeekQ->count();
  92.  
  93. $usersMonthQ = $db->query("SELECT username FROM users WHERE last_login > ?",array($month));
  94. $monthCount = $usersMonthQ->count();
  95.  
  96. $usersQ = $db->query("SELECT * FROM users");
  97. $user_count = $usersQ->count();
  98.  
  99. $pagesQ = $db->query("SELECT * FROM pages");
  100. $page_count = $pagesQ->count();
  101.  
  102. $levelsQ = $db->query("SELECT * FROM permissions");
  103. $level_count = $levelsQ->count();
  104.  
  105. $emailsQ = $db->query("SELECT COUNT(*) AS Count FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_SCHEMA = ? AND TABLE_NAME = ? AND COLUMN_NAME <> ? GROUP BY TABLE_NAME",array(Config::get('mysql/db'),"email","id"));
  106. $emails_count = $emailsQ->first()->Count;
  107.  
  108. $settingsQ = $db->query("SELECT * FROM settings");
  109. $settings = $settingsQ->first();
  110.  
  111. $tomC = $db->query("SELECT * FROM audit")->count();
  112.  
  113. if($settings->recap_public == "6LeIxAcTAAAAAJcZVRqyHh71UMIEGNQ_MXjiZKhI" && $settings->recaptcha != 0) $recapWarning = 1;
  114. else $recapWarning = 0;
  115.  
  116. $pwWarning = $db->query("SELECT password FROM users WHERE id = 1")->first();
  117. if($pwWarning->password == "$2y$12$1v06jm2KMOXuuo3qP7erTuTIJFOnzhpds1Moa8BadnUUeX0RV3ex.") $pwWarning = 1;
  118. else $pwWarning = 0;
  119.  
  120. $vcWarning = $db->query("SELECT vericode FROM users WHERE id = 1")->first();
  121. if($vcWarning->vericode == "322418") $vcWarning = 1;
  122. else $vcWarning = 0;
  123.  
  124.  
  125. if(!emptY($_POST)) {
  126. $token = $_POST['csrf'];
  127. if(!Token::check($token)){
  128. include('scripts/token_error.php');
  129. }if(!empty($_POST['settings'])){
  130.  
  131.  
  132. if($settings->recaptcha != $_POST['recaptcha']) {
  133. $recaptcha = Input::get('recaptcha');
  134. $fields=array('recaptcha'=>$recaptcha);
  135. $db->update('settings',1,$fields);
  136. $successes[] = "Updated recaptcha.";
  137. logger($user->data()->id,"Setting Change","Changed recaptcha from $settings->recaptcha to $recaptcha.");
  138. }
  139.  
  140. if($settings->recap_public != $_POST['recap_public']) {
  141. $recap_public = Input::get('recap_public');
  142. $fields=array('recap_public'=>$recap_public);
  143. $db->update('settings',1,$fields);
  144. $successes[] = "Updated recaptcha key.";
  145. logger($user->data()->id,"Setting Change","Changed recaptcha public key from $settings->recap_public to $recap_public.");
  146. }
  147.  
  148. if($settings->recap_private != $_POST['recap_private']) {
  149. $recap_private = Input::get('recap_private');
  150. $fields=array('recap_private'=>$recap_private);
  151. $db->update('settings',1,$fields);
  152. $successes[] = "Updated recaptcha key.";
  153. logger($user->data()->id,"Setting Change","Changed recaptcha private key from $settings->recap_private to $recap_private.");
  154. }
  155.  
  156. if($settings->messaging != $_POST['messaging']) {
  157. $messaging = Input::get('messaging');
  158. $fields=array('messaging'=>$messaging);
  159. $db->update('settings',1,$fields);
  160. $successes[] = "Updated messaging.";
  161. logger($user->data()->id,"Setting Change","Changed messaging from $settings->messaging to $messaging.");
  162. }
  163.  
  164. if($settings->echouser != $_POST['echouser']) {
  165. $echouser = Input::get('echouser');
  166. $fields=array('echouser'=>$echouser);
  167. $db->update('settings',1,$fields);
  168. $successes[] = "Updated echouser.";
  169. logger($user->data()->id,"Setting Change","Changed echouser from $settings->echouser to $echouser.");
  170. }
  171.  
  172. if($settings->wys != $_POST['wys']) {
  173. $wys = Input::get('wys');
  174. $fields=array('wys'=>$wys);
  175. $db->update('settings',1,$fields);
  176. $successes[] = "Updated wys.";
  177. logger($user->data()->id,"Setting Change","Changed wys from $settings->wys to $wys.");
  178. }
  179.  
  180. if($settings->site_name != $_POST['site_name']) {
  181. $site_name = Input::get('site_name');
  182. $fields=array('site_name'=>$site_name);
  183. $db->update('settings',1,$fields);
  184. $successes[] = "Updated site_name.";
  185. logger($user->data()->id,"Setting Change","Changed site_name from $settings->site_name to $site_name.");
  186. }
  187.  
  188. if($settings->copyright != $_POST['copyright']) {
  189. $copyright = Input::get('copyright');
  190. $fields=array('copyright'=>$copyright);
  191. $db->update('settings',1,$fields);
  192. $successes[] = "Updated copyright.";
  193. logger($user->data()->id,"Setting Change","Changed copyright from $settings->copyright to $copyright.");
  194. }
  195.  
  196. if($settings->force_ssl != $_POST['force_ssl']) {
  197. $force_ssl = Input::get('force_ssl');
  198. $fields=array('force_ssl'=>$force_ssl);
  199. $db->update('settings',1,$fields);
  200. $successes[] = "Updated force_ssl.";
  201. logger($user->data()->id,"Setting Change","Changed force_ssl from $settings->force_ssl to $force_ssl.");
  202. }
  203.  
  204. if( $_POST['force_user_pr'] == 1) {
  205. $db->query("UPDATE users SET force_pr = 1");
  206. $successes[] = "Requiring all users to reset their password.";
  207. logger($user->data()->id,"User Manager","Forcing all users to reset password.");
  208. }
  209. if($settings->force_pr != $_POST['force_pr']) {
  210. $force_pr = Input::get('force_pr');
  211. $fields=array('force_pr'=>$force_pr);
  212. $db->update('settings',1,$fields);
  213. $successes[] = "Updated force_pr.";
  214. logger($user->data()->id,"Setting Change","Changed force_pr from $settings->force_pr to $force_pr.");
  215. }
  216.  
  217. if($settings->site_offline != $_POST['site_offline']) {
  218. $site_offline = Input::get('site_offline');
  219. $fields=array('site_offline'=>$site_offline);
  220. $db->update('settings',1,$fields);
  221. $successes[] = "Updated site_offline.";
  222. logger($user->data()->id,"Setting Change","Changed site_offline from $settings->site_offline to $site_offline.");
  223. }
  224.  
  225. if($settings->track_guest != $_POST['track_guest']) {
  226. $track_guest = Input::get('track_guest');
  227. $fields=array('track_guest'=>$track_guest);
  228. $db->update('settings',1,$fields);
  229. $successes[] = "Updated track_guest.";
  230. logger($user->data()->id,"Setting Change","Changed track_guest from $settings->track_guest to $track_guest.");
  231. }
  232.  
  233. if($settings->custom_settings != $_POST['custom_settings']) {
  234. $custom_settings = Input::get('custom_settings');
  235. $fields=array('custom_settings'=>$custom_settings);
  236. $db->update('settings',1,$fields);
  237. $successes[] = "Updated custom_settings.";
  238. logger($user->data()->id,"Setting Change","Changed custom_settings from $settings->custom_settings to $custom_settings.");
  239. }
  240.  
  241. if($settings->permission_restriction != $_POST['permission_restriction']) {
  242. $permission_restriction = Input::get('permission_restriction');
  243. if(empty($permission_restriction)) { $permission_restriction==0; }
  244. $fields=array('permission_restriction'=>$permission_restriction);
  245. $db->update('settings',1,$fields);
  246. $successes[] = "Updated permission_restriction.";
  247. logger($user->data()->id,"Setting Change","Changed permission_restriction from $settings->permission_restriction to $permission_restriction.");
  248. }
  249.  
  250. if($settings->page_permission_restriction != $_POST['page_permission_restriction']) {
  251. $page_permission_restriction = Input::get('page_permission_restriction');
  252. if(empty($page_permission_restriction)) { $page_permission_restriction==0; }
  253. $fields=array('page_permission_restriction'=>$page_permission_restriction);
  254. $db->update('settings',1,$fields);
  255. $successes[] = "Updated page_permission_restriction.";
  256. logger($user->data()->id,"Setting Change","Changed page_permission_restriction from $settings->page_permission_restriction to $page_permission_restriction.");
  257. }
  258.  
  259. if($settings->page_default_private != $_POST['page_default_private']) {
  260. $page_default_private = Input::get('page_default_private');
  261. if(empty($page_default_private)) { $page_default_private==0; }
  262. $fields=array('page_default_private'=>$page_default_private);
  263. $db->update('settings',1,$fields);
  264. $successes[] = "Updated page_default_private.";
  265. logger($user->data()->id,"Setting Change","Changed page_default_private from $settings->page_default_private to $page_default_private.");
  266. }
  267.  
  268. if($settings->navigation_type != $_POST['navigation_type']) {
  269. $navigation_type = Input::get('navigation_type');
  270. if(empty($navigation_type)) { $navigation_type==0; }
  271. $fields=array('navigation_type'=>$navigation_type);
  272. $db->update('settings',1,$fields);
  273. $successes[] = "Updated navigation_type.";
  274. logger($user->data()->id,"Setting Change","Changed navigation_type from $settings->navigation_type to $navigation_type.");
  275. }
  276.  
  277. if($settings->cron_ip != $_POST['cron_ip']) {
  278. $cron_ip = Input::get('cron_ip');
  279. $fields=array('cron_ip'=>$cron_ip);
  280. $db->update('settings',1,$fields);
  281. $successes[] = "Updated Cron IP.";
  282. logger($user->data()->id,"Setting Change","Changed notifications from $settings->cron_ip to $cron_ip.");
  283. }
  284.  
  285. if($settings->notifications != $_POST['notifications']) {
  286. $notifications = Input::get('notifications');
  287. if(empty($notifications)) { $notifications==0; }
  288. $fields=array('notifications'=>$notifications);
  289. $db->update('settings',1,$fields);
  290. $successes[] = "Updated notifications.";
  291. logger($user->data()->id,"Setting Change","Changed notifications from $settings->notifications to $notifications.");
  292. }
  293.  
  294. if($settings->force_notif != $_POST['force_notif']) {
  295. $force_notif = Input::get('force_notif');
  296. if(empty($force_notif)) { $force_notif==0; }
  297. $fields=array('force_notif'=>$force_notif);
  298. $db->update('settings',1,$fields);
  299. $successes[] = "Updated forced notifications.";
  300. logger($user->data()->id,"Setting Change","Changed forced notifications from $settings->force_notif to $force_notif.");
  301. }
  302.  
  303. if($settings->notif_daylimit != $_POST['notif_daylimit']) {
  304. $notif_daylimit = Input::get('notif_daylimit');
  305. if(empty($notif_daylimit)) { $notif_daylimit==0; }
  306. $fields=array('notif_daylimit'=>$notif_daylimit);
  307. $db->update('settings',1,$fields);
  308. $successes[] = "Updated notif_daylimit.";
  309. logger($user->data()->id,"Setting Change","Changed notif_daylimit from $settings->notif_daylimit to $notif_daylimit.");
  310. }
  311.  
  312. //Redirect::to('admin.php?tab='.$tab);
  313. }
  314.  
  315. if(!empty($_POST['css'])){
  316. if($settings->us_css1 != $_POST['us_css1']) {
  317. $us_css1 = Input::get('us_css1');
  318. $fields=array('us_css1'=>$us_css1);
  319. $db->update('settings',1,$fields);
  320. $successes[] = "Updated us_css1.";
  321. logger($user->data()->id,"Setting Change","Changed us_css1 from $settings->us_css1 to $us_css1.");
  322. }
  323. if($settings->us_css2 != $_POST['us_css2']) {
  324. $us_css2 = Input::get('us_css2');
  325. $fields=array('us_css2'=>$us_css2);
  326. $db->update('settings',1,$fields);
  327. $successes[] = "Updated us_css2.";
  328. logger($user->data()->id,"Setting Change","Changed us_css2 from $settings->us_css2 to $us_css2.");
  329. }
  330.  
  331. if($settings->us_css3 != $_POST['us_css3']) {
  332. $us_css3 = Input::get('us_css3');
  333. $fields=array('us_css3'=>$us_css3);
  334. $db->update('settings',1,$fields);
  335. $successes[] = "Updated us_css3.";
  336. logger($user->data()->id,"Setting Change","Changed us_css3 from $settings->us_css3 to $us_css3.");
  337. }
  338. Redirect::to('admin.php?msg=Updated+CSS+settings');
  339. }
  340.  
  341. if(!empty($_POST['register'])){
  342. if($settings->auto_assign_un != $_POST['auto_assign_un']) {
  343. $auto_assign_un = Input::get('auto_assign_un');
  344. if(empty($auto_assign_un)) { $auto_assign_un==0; }
  345. $fields=array('auto_assign_un'=>$auto_assign_un);
  346. $db->update('settings',1,$fields);
  347. $successes[] = "Updated auto_assign_un.";
  348. logger($user->data()->id,"Setting Change","Changed auto_assign_un from $settings->auto_assign_un to $auto_assign_un.");
  349. }
  350.  
  351. if($settings->change_un != $_POST['change_un']) {
  352. $change_un = Input::get('change_un');
  353. $fields=array('change_un'=>$change_un);
  354. $db->update('settings',1,$fields);
  355. $successes[] = "Updated change_un.";
  356. logger($user->data()->id,"Setting Change","Changed change_un from $settings->change_un to $change_un.");
  357. }
  358.  
  359. if($settings->req_cap != $_POST['req_cap']) {
  360. $req_cap = Input::get('req_cap');
  361. $fields=array('req_cap'=>$req_cap);
  362. $db->update('settings',1,$fields);
  363. $successes[] = "Updated req_cap.";
  364. logger($user->data()->id,"Setting Change","Changed req_cap from $settings->req_cap to $req_cap.");
  365. }
  366.  
  367. if($settings->req_num != $_POST['req_num']) {
  368. $req_num = Input::get('req_num');
  369. $fields=array('req_num'=>$req_num);
  370. $db->update('settings',1,$fields);
  371. $successes[] = "Updated req_num.";
  372. logger($user->data()->id,"Setting Change","Changed req_num from $settings->req_num to $req_num.");
  373. }
  374.  
  375. if($settings->min_pw != $_POST['min_pw']) {
  376. $min_pw = Input::get('min_pw');
  377. $fields=array('min_pw'=>$min_pw);
  378. $db->update('settings',1,$fields);
  379. $successes[] = "Updated min_pw.";
  380. logger($user->data()->id,"Setting Change","Changed min_pw from $settings->min_pw to $min_pw.");
  381. }
  382.  
  383. if($settings->max_pw != $_POST['max_pw']) {
  384. $max_pw = Input::get('max_pw');
  385. $fields=array('max_pw'=>$max_pw);
  386. $db->update('settings',1,$fields);
  387. $successes[] = "Updated max_pw.";
  388. logger($user->data()->id,"Setting Change","Changed max_pw from $settings->max_pw to $max_pw.");
  389. }
  390.  
  391. if($settings->min_un != $_POST['min_un']) {
  392. $min_un = Input::get('min_un');
  393. $fields=array('min_un'=>$min_un);
  394. $db->update('settings',1,$fields);
  395. $successes[] = "Updated min_un.";
  396. logger($user->data()->id,"Setting Change","Changed min_un from $settings->min_un to $min_un.");
  397. }
  398.  
  399. if($settings->max_un != $_POST['max_un']) {
  400. $max_un = Input::get('max_un');
  401. $fields=array('max_un'=>$max_un);
  402. $db->update('settings',1,$fields);
  403. $successes[] = "Updated max_un.";
  404. logger($user->data()->id,"Setting Change","Changed max_un from $settings->max_un to $max_un.");
  405. }
  406. }
  407.  
  408. if(!empty($_POST['social'])){
  409. if($settings->glogin != $_POST['glogin']) {
  410. $glogin = Input::get('glogin');
  411. $fields=array('glogin'=>$glogin);
  412. $db->update('settings',1,$fields);
  413. $successes[] = "Updated glogin.";
  414. logger($user->data()->id,"Setting Change","Changed glogin from $settings->glogin to $glogin.");
  415. }
  416.  
  417. if($settings->fblogin != $_POST['fblogin']) {
  418. $fblogin = Input::get('fblogin');
  419. $fields=array('fblogin'=>$fblogin);
  420. $db->update('settings',1,$fields);
  421. $successes[] = "Updated fblogin.";
  422. logger($user->data()->id,"Setting Change","Changed fblogin from $settings->fblogin to $fblogin.");
  423. }
  424.  
  425. if($settings->gid != $_POST['gid']) {
  426. $gid = Input::get('gid');
  427. $fields=array('gid'=>$gid);
  428. $db->update('settings',1,$fields);
  429. $successes[] = "Updated gid.";
  430. logger($user->data()->id,"Setting Change","Changed gid from $settings->gid to $gid.");
  431. }
  432.  
  433. if($settings->gsecret != $_POST['gsecret']) {
  434. $gsecret = Input::get('gsecret');
  435. $fields=array('gsecret'=>$gsecret);
  436. $db->update('settings',1,$fields);
  437. $successes[] = "Updated gsecret.";
  438. logger($user->data()->id,"Setting Change","Changed gsecret from $settings->gsecret to $gsecret.");
  439. }
  440.  
  441. if($settings->gredirect != $_POST['gredirect']) {
  442. $gredirect = Input::get('gredirect');
  443. $fields=array('gredirect'=>$gredirect);
  444. $db->update('settings',1,$fields);
  445. $successes[] = "Updated gredirect.";
  446. logger($user->data()->id,"Setting Change","Changed gredirect from $settings->gredirect to $gredirect.");
  447. }
  448.  
  449. if($settings->ghome != $_POST['ghome']) {
  450. $ghome = Input::get('ghome');
  451. $fields=array('ghome'=>$ghome);
  452. $db->update('settings',1,$fields);
  453. $successes[] = "Updated ghome.";
  454. logger($user->data()->id,"Setting Change","Changed ghome from $settings->ghome to $ghome.");
  455. }
  456.  
  457. if($settings->fbid != $_POST['fbid']) {
  458. $fbid = Input::get('fbid');
  459. $fields=array('fbid'=>$fbid);
  460. $db->update('settings',1,$fields);
  461. $successes[] = "Updated fbid.";
  462. logger($user->data()->id,"Setting Change","Changed fbid from $settings->fbid to $fbid.");
  463. }
  464.  
  465. if($settings->fbsecret != $_POST['fbsecret']) {
  466. $fbsecret = Input::get('fbsecret');
  467. $fields=array('fbsecret'=>$fbsecret);
  468. $db->update('settings',1,$fields);
  469. $successes[] = "Updated fbsecret.";
  470. logger($user->data()->id,"Setting Change","Changed fbsecret from $settings->fbsecret to $fbsecret.");
  471. }
  472.  
  473. if($settings->fbcallback != $_POST['fbcallback']) {
  474. $fbcallback = Input::get('fbcallback');
  475. $fields=array('fbcallback'=>$fbcallback);
  476. $db->update('settings',1,$fields);
  477. $successes[] = "Updated fbcallback.";
  478. logger($user->data()->id,"Setting Change","Changed fbcallback from $settings->fbcallback to $fbcallback.");
  479. }
  480.  
  481. if($settings->graph_ver != $_POST['graph_ver']) {
  482. $graph_ver = Input::get('graph_ver');
  483. $fields=array('graph_ver'=>$graph_ver);
  484. $db->update('settings',1,$fields);
  485. $successes[] = "Updated graph_ver.";
  486. logger($user->data()->id,"Setting Change","Changed graph_ver from $settings->graph_ver to $graph_ver.");
  487. }
  488.  
  489. if($settings->finalredir != $_POST['finalredir']) {
  490. $finalredir = Input::get('finalredir');
  491. $fields=array('finalredir'=>$finalredir);
  492. $db->update('settings',1,$fields);
  493. $successes[] = "Updated finalredir.";
  494. logger($user->data()->id,"Setting Change","Changed finalredir from $settings->finalredir to $finalredir.");
  495. }
  496.  
  497. //Redirect::to('admin.php?tab='.$tab);
  498. }
  499. $settingsQ = $db->query("SELECT * FROM settings");
  500. $settings = $settingsQ->first();
  501. if($settings->custom_settings == 1){
  502. require_once('includes/admin_panel_custom_settings_post.php');
  503. }
  504. }
  505. //NEW token is created after $_POST
  506. $token = Token::generate();
  507. ?>
  508. <div id="page-wrapper"> <!-- leave in place for full-screen backgrounds etc -->
  509. <div class="container"> <!-- -fluid -->
  510. <?php
  511. include('../users/includes/migrations.php');
  512. if($pwWarning == 1 && !$local){ ?>
  513. <div class="alert alert-danger">
  514. <strong>Warning!</strong> Please change the default password for the user 'admin' by clicking the manage users panel below.
  515. </div>
  516. <?php } ?>
  517.  
  518. <?php if($vcWarning == 1){ ?>
  519. <div class="alert alert-danger">
  520. <strong>Warning!</strong> You are using an insecure vericode. Please run <a href="update.php">update.php</a> to correct this.
  521. </div>
  522. <?php } ?>
  523.  
  524. <?php if($recapWarning == 1 && !$local){ ?>
  525. <div class="alert alert-danger">
  526. <strong>Warning!</strong> You are using the default reCaptcha keys. Please change them before going live.
  527. </div>
  528. <?php } ?>
  529. <h1 class="text-center">UserSpice Dashboard Version <?=$user_spice_ver?></h1>
  530. <div class="row row-centered">
  531.  
  532. <a href="<?=$us_url_root?>users/check_updates.php"><div class="col-md-1 col-sm-3 col-xs-6 col-centered">
  533. <div class="panel panel-default">
  534. <i class="fa fa-arrow-up fa-2x"></i><br>Check<br>for Updates</li>
  535. </div>
  536. </div></a>
  537.  
  538. <a href="<?=$us_url_root?>users/admin_backup.php"><div class="col-md-1 col-sm-3 col-xs-6 col-centered">
  539. <div class="panel panel-default">
  540. <i class="fa fa-floppy-o fa-2x"></i><br>Backup<br>Project</li>
  541. </div>
  542. </div></a>
  543.  
  544. <a href="<?=$us_url_root?>users/cron_manager.php"><div class="col-md-1 col-sm-3 col-xs-6 col-centered">
  545. <div class="panel panel-default">
  546. <i class="fa fa-server fa-2x"></i><br>Manage<br>Cron Jobs</li>
  547. </div>
  548. </div></a>
  549.  
  550. <?php if($settings->notifications == 1){ ?>
  551. <a href="<?=$us_url_root?>users/admin_notifications.php"><div class="col-md-1 col-sm-3 col-xs-6 col-centered">
  552. <div class="panel panel-default">
  553. <i class="fa fa-bell fa-2x"></i><br>Manage<br>Notifications</li>
  554. </div>
  555. </div></a>
  556. <?php } ?>
  557.  
  558. <a href="<?=$us_url_root?>users/admin_logs.php"><div class="col-md-1 col-sm-3 col-xs-6 col-centered">
  559. <div class="panel panel-default">
  560. <i class="fa fa-area-chart fa-2x"></i><br>Manage<br>System Logs</li>
  561. </div>
  562. </div></a>
  563.  
  564. <a href="<?=$us_url_root?>users/admin_messages.php"><div class="col-md-1 col-sm-3 col-xs-6 col-centered">
  565. <div class="panel panel-default">
  566. <i class="fa fa-comment fa-2x"></i><br>Manage<br>Messages</li>
  567. </div>
  568. </div></a>
  569.  
  570. <a href="<?=$us_url_root?>users/mqtt_settings.php"><div class="col-md-1 col-sm-3 col-xs-6 col-centered">
  571. <div class="panel panel-default">
  572. <i class="fa fa-microchip fa-2x"></i><br>IOT<br>MQTT</li>
  573. </div>
  574. </div></a>
  575. <br>
  576. <a href="<?=$us_url_root?>users/admin_ips.php"><div class="col-md-1 col-sm-3 col-xs-6 col-centered">
  577. <div class="panel panel-default">
  578. <i class="fa fa-ban fa-2x"></i><br>Whitelist &<br>Blacklist IPs</li>
  579. </div>
  580. </div></a>
  581.  
  582. <a href="<?=$us_url_root?>users/admin_menus.php"><div class="col-md-1 col-sm-3 col-xs-6 col-centered">
  583. <div class="panel panel-default">
  584. <i class="fa fa-bars fa-2x"></i><br>Menus<br>Navigation</li>
  585. </div>
  586. </div></a>
  587. <a href="<?=$us_url_root?>users/admin_users.php"><div class="col-md-1 col-sm-3 col-xs-6 col-centered">
  588. <div class="panel panel-default">
  589. <i class="fa fa-users fa-2x"></i><br>Manage <?=$user_count?><br>Users</li>
  590. </div>
  591. </div></a>
  592. <a href="<?=$us_url_root?>users/admin_permissions.php"><div class="col-md-1 col-sm-3 col-xs-6 col-centered">
  593. <div class="panel panel-default">
  594. <i class="fa fa-lock fa-2x"></i><br>Manage <?=$level_count?><br>Permissions</li>
  595. </div>
  596. </div></a>
  597. <a href="<?=$us_url_root?>users/admin_pages.php"><div class="col-md-1 col-sm-3 col-xs-6 col-centered">
  598. <div class="panel panel-default">
  599. <i class="fa fa-file-text fa-2x"></i><br>Manage <?=$page_count?><br>Pages</li>
  600. </div>
  601. </div></a>
  602. <a href="<?=$us_url_root?>users/email_settings.php"><div class="col-md-1 col-sm-3 col-xs-6 col-centered">
  603. <div class="panel panel-default">
  604. <i class="fa fa-paper-plane fa-2x"></i><br>Manage <?=$emails_count?><br>Email Settings</li>
  605. </div>
  606. </div></a>
  607. <br>
  608. <?php require_once("../usersc/includes/admin_panel_buttons.php"); ?>
  609. </div>
  610.  
  611. <?=resultBlock($errors,$successes);?>
  612.  
  613. <!-- CHECK IF ADDITIONAL ADMIN PAGES ARE PRESENT AND INCLUDE IF AVAILABLE -->
  614.  
  615. <?php
  616. if(file_exists($abs_us_root.$us_url_root.'usersc/includes/admin_panels.php')){
  617. require_once $abs_us_root.$us_url_root.'usersc/includes/admin_panels.php';
  618. }
  619. ?>
  620.  
  621. <!-- /CHECK IF ADDITIONAL ADMIN PAGES ARE PRESENT AND INCLUDE IF AVAILABLE -->
  622.  
  623.  
  624.  
  625.  
  626.  
  627.  
  628.  
  629. <!-- tabs -->
  630. <div>
  631. <div class="row">
  632. <div class="col-md-12 col-xs-6">
  633. <div class="panel with-nav-tabs panel-default">
  634. <div class="panel-heading">
  635. <ul class="nav nav-tabs">
  636. <li <?php if($tab == 1 || $tab == ''){echo "class='active'";} ?>><a href="#tab1default" data-toggle="tab">Statistics</a></li>
  637. <li <?php if($tab == 2){echo "class='active'";}?>><a href="#tab2default" data-toggle="tab">Site Settings</a></li>
  638. <li <?php if($tab == 3){echo "class='active'";}?>><a href="#tab3default" data-toggle="tab">Registration</a></li>
  639. <li <?php if($tab == 4){echo "class='active'";}?>><a href="#tab4default" data-toggle="tab">Social Logins</a></li>
  640. <li <?php if($tab == 5){echo "class='active'";}?>><a href="#tab5default" data-toggle="tab">CSS Settings</a></li>
  641. <li <?php if($tab == 6){echo "class='active'";}?>><a href="#tab6default" data-toggle="tab">CSS Samples</a></li>
  642. <?php
  643. if($settings->custom_settings == 1){ ?>
  644. <li <?php if($tab == 7){echo "class='active'";}?>><a href="#tab7default" data-toggle="tab">Custom Settings</a></li>
  645. <?php } ?>
  646. </ul>
  647. </div>
  648. <div class="panel-body">
  649. <div class="tab-content">
  650. <div class="tab-pane fade <?php if($tab == 1 || $tab == ''){echo "in active";}?>" id="tab1default">
  651. <?php include('../users/views/_admin_stats.php');?>
  652. </div>
  653.  
  654. <div class="tab-pane fade <?php if($tab == 2){echo "in active";}?>" id="tab2default">
  655. <?php include('../users/views/_admin_site_settings.php');?>
  656. </div>
  657.  
  658. <div class="tab-pane fade <?php if($tab == 3){echo "in active";}?>" id="tab3default">
  659. <?php include('../users/views/_admin_register_settings.php');?>
  660. </div>
  661.  
  662. <div class="tab-pane fade <?php if($tab == 4){echo "in active";}?>" id="tab4default">
  663. <!-- css settings -->
  664. <?php include('../users/views/_admin_login_settings.php');?>
  665. </div>
  666.  
  667. <div class="tab-pane fade <?php if($tab == 5){echo "in active";}?>" id="tab5default">
  668. <!-- css settings -->
  669. <?php include('../users/views/_admin_css_settings.php');?>
  670. </div>
  671. <div class="tab-pane fade <?php if($tab == 6){echo "in active";}?>" id="tab6default">
  672. <?php include('../users/views/_admin_css_samples.php');?>
  673. </div>
  674. <?php
  675. if($settings->custom_settings == 1){ ?>
  676. <div class="tab-pane fade <?php if($tab == 7){echo "in active";}?>" id="tab7default">
  677. <?php include('../usersc/includes/admin_panel_custom_settings.php');?>
  678. </div>
  679. <?php } ?>
  680.  
  681.  
  682. </div>
  683. </div>
  684. </div>
  685. </div>
  686. </div>
  687. </div>
  688.  
  689. <div class="col-xs-12 col-md-6"> <!-- Site Settings Column -->
  690.  
  691. </div> <!-- /col1/2 -->
  692.  
  693. <div class="col-xs-12 col-md-6"><!-- CSS Settings Column -->
  694.  
  695. </div> <!-- /col1/3 -->
  696. </div> <!-- /row -->
  697.  
  698. <!-- Social Login -->
  699. <div class="col-xs-12 col-md-12">
  700.  
  701. </div> <!-- /col1/3 -->
  702. </div> <!-- /row -->
  703.  
  704.  
  705.  
  706.  
  707. </div> <!-- /container -->
  708. </div> <!-- /#page-wrapper -->
  709.  
  710. <!-- footers -->
  711. <?php require_once $abs_us_root.$us_url_root.'users/includes/page_footer.php'; // the final html footer copyright row + the external js calls ?>
  712.  
  713. <!-- Place any per-page javascript here -->
  714. <script type="text/javascript">
  715. $(document).ready(function(){
  716.  
  717. $("#times").load("../users/times.php" );
  718.  
  719. var timesRefresh = setInterval(function(){
  720. $("#times").load("../users/times.php" );
  721. }, 30000);
  722.  
  723.  
  724. $('[data-toggle="tooltip"]').tooltip();
  725. $('[data-toggle="popover"]').popover();
  726. // -------------------------------------------------------------------------
  727. });
  728. </script>
  729. <?php if(in_array($user->data()->id, $master_account)) {?>
  730. <script type="text/javascript">
  731. $(document).ready(function(){
  732. $('#recapatcha_public_show').hover(function () {
  733. $('#recap_public').attr('type', 'text');
  734. }, function () {
  735. $('#recap_public').attr('type', 'password');
  736. });
  737. $('#recapatcha_private_show').hover(function () {
  738. $('#recap_private').attr('type', 'text');
  739. }, function () {
  740. $('#recap_private').attr('type', 'password');
  741. });
  742. });
  743. </script>
  744. <?php } ?>
  745.  
  746. <?php require_once $abs_us_root.$us_url_root.'users/includes/html_footer.php'; // currently just the closing /body and /html ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement