settings.php 21 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402
  1. <?php
  2. $GLOBALS['organizrPages'][] = 'settings';
  3. function get_page_settings($Organizr)
  4. {
  5. if (!$Organizr) {
  6. $Organizr = new Organizr();
  7. }
  8. if ((!$Organizr->hasDB())) {
  9. return false;
  10. }
  11. if (!$Organizr->qualifyRequest(1, true)) {
  12. return false;
  13. }
  14. $Organizr->setLoggerChannel('Organizr');
  15. $Organizr->logger->notice('Accessed admin settings page');
  16. $systemMenus = $Organizr->systemMenuLists();
  17. return $Organizr->pluginFiles('js', true) . $Organizr->loadJavascriptFile('js/Sortable.min.js') . '
  18. <script>
  19. (function() {
  20. updateCheck();
  21. authDebugCheck();
  22. sponsorLoad();
  23. newsLoad();
  24. checkCommitLoad();
  25. backersLoad();
  26. [].slice.call(document.querySelectorAll(\'.sttabs-main-settings-div\')).forEach(function(el) {
  27. new CBPFWTabs(el);
  28. });
  29. })();
  30. </script>
  31. <div class="container-fluid">
  32. <div class="row bg-title">
  33. <div class="col-lg-3 col-md-4 col-sm-4 col-xs-12">
  34. <h4 class="page-title" lang="en">Organizr Settings</h4>
  35. </div>
  36. <div class="col-lg-9 col-sm-8 col-md-8 col-xs-12">
  37. <ol id="settingsBreadcrumb" class="breadcrumb">
  38. <li lang="en">Settings</li>
  39. <li lang="en">Tab Editor</li>
  40. </ol>
  41. </div>
  42. <!-- /.col-lg-12 -->
  43. </div>
  44. <!--.row-->
  45. <div class="row">
  46. <!-- Tab style start -->
  47. <section class="">
  48. <div class="sttabs sttabs-main-settings-div tabs-style-flip">
  49. <nav>
  50. <ul>
  51. <li onclick="changeSettingsMenu(\'Settings::Tab Editor\')" id="settings-main-tab-editor-anchor"><a href="#settings-main-tab-editor" class="sticon ti-layout-tab-v"><span lang="en">Tab Editor</span></a></li>
  52. <li onclick="changeSettingsMenu(\'Settings::Customize\')" id="settings-main-customize-anchor"><a href="#settings-main-customize" class="sticon ti-paint-bucket"><span lang="en">Customize</span></a></li>
  53. <li onclick="changeSettingsMenu(\'Settings::User Management\')" id="settings-main-user-management-anchor"><a href="#settings-main-user-management" class="sticon ti-user"><span lang="en">User Management</span></a></li>
  54. <li onclick="changeSettingsMenu(\'Settings::Image Manager\');loadSettingsPage2(\'api/v2/page/settings_image_manager\',\'#settings-image-manager-view\',\'Image Viewer\');" id="settings-main-image-manager-anchor"><a href="#settings-main-image-manager" class="sticon ti-image"><span lang="en">Image Manager</span></a></li>
  55. <li onclick="changeSettingsMenu(\'Settings::Plugins\')" id="settings-main-plugins-anchor"><a href="#settings-main-plugins" class="sticon ti-plug"><span lang="en">Plugins</span></a></li>
  56. <li onclick="changeSettingsMenu(\'Settings::System Settings\');authDebugCheck();" id="settings-main-system-settings-anchor"><a href="#settings-main-system-settings" class="sticon ti-settings"><span lang="en">System Settings</span></a></li>
  57. </ul>
  58. </nav>
  59. <div class="content-wrap">
  60. <! -- TAB EDITOR -->
  61. <section id="settings-main-tab-editor">
  62. ' . $systemMenus['tab_editor'] . '
  63. <!-- Tab panes -->
  64. <div class="tab-content">
  65. <div role="tabpanel" class="tab-pane fade" id="settings-tab-editor-tabs">
  66. <h2 lang="en">Loading...</h2>
  67. <div class="clearfix"></div>
  68. </div>
  69. <div role="tabpanel" class="tab-pane fade" id="settings-tab-editor-categories">
  70. <h2 lang="en">Loading...</h2>
  71. </div>
  72. <div role="tabpanel" class="tab-pane fade" id="settings-tab-editor-homepage">
  73. <h2 lang="en">Loading...</h2>
  74. </div>
  75. <div role="tabpanel" class="tab-pane fade" id="settings-tab-editor-homepage-order">
  76. <h2 lang="en">Loading...</h2>
  77. </div>
  78. </div>
  79. </section>
  80. <! -- Customize -->
  81. <section id="settings-main-customize">
  82. ' . $systemMenus['customize'] . '
  83. <!-- Tab panes -->
  84. <div class="tab-content">
  85. <div role="tabpanel" class="tab-pane fade" id="settings-customize-appearance">
  86. <h2 lang="en">Loading...</h2>
  87. <div class="clearfix"></div>
  88. </div>
  89. <div role="tabpanel" class="tab-pane fade" id="settings-customize-marketplace">
  90. <div class="panel bg-org panel-info">
  91. <div class="panel-heading">
  92. <span lang="en">Theme Marketplace</span>
  93. </div>
  94. <div class="panel-wrapper collapse in" aria-expanded="true">
  95. <div class="table-responsive">
  96. <table class="table table-hover manage-u-table">
  97. <thead>
  98. <tr>
  99. <th width="70" class="text-center" lang="en">THEME</th>
  100. <th></th>
  101. <th lang="en">CATEGORY</th>
  102. <th lang="en">STATUS</th>
  103. <th lang="en" style="text-align:center">INFO</th>
  104. <th lang="en" style="text-align:center">INSTALL</th>
  105. <th lang="en" style="text-align:center">DELETE</th>
  106. </tr>
  107. </thead>
  108. <tbody id="manageThemeTable">
  109. <td class="text-center" colspan="12"><i class="fa fa-spin fa-spinner"></i></td>
  110. </tbody>
  111. </table>
  112. </div>
  113. </div>
  114. </div>
  115. </div>
  116. </div>
  117. </section>
  118. <! -- USER MANAGEMENT -->
  119. <section id="settings-main-user-management">
  120. ' . $systemMenus['user_management'] . '
  121. <!-- Tab panes -->
  122. <div class="tab-content">
  123. <div role="tabpanel" class="tab-pane fade" id="settings-user-manage-users">
  124. <h2 lang="en">Loading...</h2>
  125. <div class="clearfix"></div>
  126. </div>
  127. <div role="tabpanel" class="tab-pane fade" id="settings-user-manage-groups">
  128. <h2 lang="en">Loading...</h2>
  129. <div class="clearfix"></div>
  130. </div>
  131. <div role="tabpanel" class="tab-pane fade" id="settings-user-import-users">
  132. ' . $Organizr->importUserButtons() . '
  133. <div class="clearfix"></div>
  134. </div>
  135. </div>
  136. </section>
  137. <! -- IMAGE MANAGER -->
  138. <section id="settings-main-image-manager">
  139. <!-- Tab panes -->
  140. <div class="tab-content">
  141. <div role="tabpanel" class="tab-pane fade active in" id="settings-image-manager-view">
  142. <h2 lang="en">Loading...</h2>
  143. <div class="clearfix"></div>
  144. </div>
  145. </div>
  146. </section>
  147. <! -- PLUGINS -->
  148. <section id="settings-main-plugins">
  149. ' . $systemMenus['plugins'] . '
  150. <!-- Tab panes -->
  151. <div class="tab-content">
  152. <div role="tabpanel" class="tab-pane fade" id="settings-plugins-enabled">
  153. <h2 lang="en">Loading...</h2>
  154. <div class="clearfix"></div>
  155. </div>
  156. <div role="tabpanel" class="tab-pane fade" id="settings-plugins-disabled">
  157. <h2 lang="en">Loading...</h2>
  158. <div class="clearfix"></div>
  159. </div>
  160. <div role="tabpanel" class="tab-pane fade" id="settings-plugins-settings">
  161. <h2 lang="en">Loading...</h2>
  162. <div class="clearfix"></div>
  163. </div>
  164. <div role="tabpanel" class="tab-pane fade" id="settings-plugins-marketplace">
  165. <div class="panel bg-org panel-info">
  166. <div class="panel-heading">
  167. <span lang="en">Plugin Marketplace</span>
  168. </div>
  169. <div class="panel-wrapper collapse in" aria-expanded="true">
  170. <div class="table-responsive">
  171. <table class="table table-hover manage-u-table">
  172. <thead>
  173. <tr>
  174. <th width="70" class="text-center" lang="en">PLUGIN</th>
  175. <th></th>
  176. <th lang="en">CATEGORY</th>
  177. <th lang="en">STATUS</th>
  178. <th lang="en" style="text-align:center">INFO</th>
  179. <th lang="en" style="text-align:center">INSTALL</th>
  180. <th lang="en" style="text-align:center">DELETE</th>
  181. </tr>
  182. </thead>
  183. <tbody id="managePluginTable"><td class="text-center" colspan="12"><i class="fa fa-spin fa-spinner"></i></td></tbody>
  184. </table>
  185. </div>
  186. </div>
  187. </div>
  188. </div>
  189. </div>
  190. </section>
  191. <! -- SYSTEM SETTINGS -->
  192. <section id="settings-main-system-settings">
  193. ' . $systemMenus['system_settings'] . '
  194. <!-- Tab panes -->
  195. <div class="tab-content">
  196. <div role="tabpanel" class="tab-pane fade" id="settings-settings-main">
  197. <h2 lang="en">Main Settings</h2>
  198. <div class="clearfix"></div>
  199. </div>
  200. <div role="tabpanel" class="tab-pane fade" id="settings-settings-sso">
  201. <h2 lang="en">Loading...</h2>
  202. <div class="clearfix"></div>
  203. </div>
  204. <div role="tabpanel" class="tab-pane fade" id="settings-settings-logs">
  205. <h2 lang="en">Loading...</h2>
  206. <div class="clearfix"></div>
  207. </div>
  208. <div role="tabpanel" class="tab-pane fade" id="settings-settings-backup">
  209. <h2 lang="en">Loading...</h2>
  210. <div class="clearfix"></div>
  211. </div>
  212. <div role="tabpanel" class="tab-pane fade active in" id="settings-settings-about">
  213. <div class="row">
  214. <div class="col-lg-12">
  215. <div class="panel panel-default">
  216. <div class="panel-heading bg-org p-t-10 p-b-10">
  217. <span class="pull-left m-t-5">
  218. <img class="lazyload loginTitle" data-src="plugins/images/organizr/logo-no-border.png"> &nbsp;
  219. <span class="text-uppercase fw300" lang="en">Organizr News</span>
  220. </span>
  221. <div class="clearfix"></div>
  222. </div>
  223. <div class="panel-wrapper p-b-0 collapse in bg-org">
  224. <div id="organizrNewsPanel"></div>
  225. </div>
  226. </div>
  227. </div>
  228. </div>
  229. <div class="row">
  230. <div class="col-lg-6 col-sm-12 col-md-6">
  231. <div class="panel bg-org">
  232. <div class="p-30">
  233. <div class="row">
  234. <div class="col-xs-12"><img src="plugins/images/organizr/logo-wide.png" alt="organizr" class="img-responsive"></div>
  235. </div>
  236. </div>
  237. <hr class="m-t-10">
  238. <div class="p-20 text-center">
  239. <p lang="en">Below you will find all the links for everything that has to do with Organizr</p>
  240. </div>
  241. <hr>
  242. <ul class="dp-table profile-social-icons">
  243. <li><a href="https://organizr.app" target="_blank"><i class="mdi mdi-web mdi-24px"></i></a></li>
  244. <li><a href="https://reddit.com/r/organizr" target="_blank"><i class="mdi mdi-reddit mdi-24px"></i></a></li>
  245. <li><a href="https://organizr.app/discord" target="_blank"><i class="mdi mdi-discord mdi-24px"></i></a></li>
  246. <li><a href="https://github.com/causefx/organizr" target="_blank"><i class="mdi mdi-github-box mdi-24px"></i></a></li>
  247. </ul>
  248. <hr>
  249. <a href="https://poeditor.com/join/project/T6l68hksTE" target="_blank">
  250. <div class="white-box bg-org">
  251. <h4 lang="en">Want to help translate?</h4>
  252. <p lang="en">Head on over to POEditor and help us translate Organizr into your language</p>
  253. <p lang="en">I will try and import new strings every Friday</p>
  254. </div>
  255. </a>
  256. </div>
  257. </div>
  258. <div class="col-lg-6 col-sm-12 col-md-6">
  259. <div class="white-box bg-org">
  260. <h3 class="box-title" lang="en">Information</h3>
  261. <ul class="feeds">
  262. <li><div class="bg-info"><i class="mdi mdi-webpack mdi-24px text-white"></i></div><span class="text-muted hidden-xs m-t-10" lang="en">Organizr Version</span> ' . $Organizr->version . '</li>
  263. <li><div class="bg-info"><i class="mdi mdi-github-box mdi-24px text-white"></i></div><span class="text-muted hidden-xs m-t-10" lang="en">Organizr Branch</span><a href="https://github.com/causefx/Organizr/commits/' . $Organizr->config['branch'] . '" target="_blank"> ' . $Organizr->config['branch'] . '</a></li>
  264. <li><div class="bg-info"><i class="mdi mdi-database mdi-24px text-white"></i></div><span class="text-muted hidden-xs m-t-10" lang="en">Database Location</span> ' . $Organizr->config['dbLocation'] . $Organizr->config['dbName'] . '</li>
  265. ' . $Organizr->settingsDocker() . $Organizr->settingsPathChecks() . '
  266. <hr class="m-t-10">
  267. <li><div class="bg-info"><i class="mdi mdi-language-php mdi-24px text-white"></i></div><span class="text-muted hidden-xs m-t-10" lang="en">PHP Version</span> ' . phpversion() . '</li>
  268. <li><div class="bg-info"><i class="mdi mdi-package-variant-closed mdi-24px text-white"></i></div><span class="text-muted hidden-xs m-t-10" lang="en">Webserver Version</span> ' . $_SERVER['SERVER_SOFTWARE'] . '</li>
  269. <hr class="m-t-10">
  270. <li><div class="bg-info"><i class="mdi mdi-account-card-details mdi-24px text-white"></i></div><span class="text-muted hidden-xs m-t-10" lang="en">License</span> ' . ucwords($Organizr->config['license']) . '</li>
  271. </ul>
  272. </div>
  273. </div>
  274. </div>
  275. <div class="row">
  276. <div class="col-lg-12">
  277. <div class="panel panel-default">
  278. <div class="panel-heading bg-org p-t-10 p-b-10">
  279. <span class="pull-left m-t-5"><span lang="en">Sponsors</span></span>
  280. <div class="clearfix"></div>
  281. </div>
  282. <div class="panel-wrapper p-b-0 collapse in bg-org">
  283. <div id="sponsorList" class="owl-carousel owl-theme sponsor-items"></div>
  284. <div id="sponsorListModals"></div>
  285. </div>
  286. </div>
  287. </div>
  288. </div>
  289. <div class="row">
  290. <div class="col-lg-12">
  291. <div class="panel panel-default">
  292. <div class="panel-heading bg-org p-t-10 p-b-10">
  293. <span class="pull-left m-t-5"><span lang="en">Backers</span></span>
  294. <div class="clearfix"></div>
  295. </div>
  296. <div class="panel-wrapper p-b-0 collapse in bg-org">
  297. <div id="backersList" class="owl-carousel owl-theme backers-items"></div>
  298. </div>
  299. </div>
  300. </div>
  301. </div>
  302. <div class="clearfix"></div>
  303. </div>
  304. <div role="tabpanel" class="tab-pane fade" id="settings-settings-donate">
  305. <div class="col-lg-12">
  306. <div class="white-box bg-org">
  307. <ul class="nav nav-tabs tabs customtab">
  308. <li class="tab active">
  309. <a href="#donate-github" data-toggle="tab" aria-expanded="true"> <span class=""><i class="fa fa-github text-warning"></i></span> <span class="hidden-xs" lang="en">Github Sponsor</span> </a>
  310. </li>
  311. <li class="tab">
  312. <a href="#donate-paypal" data-toggle="tab" aria-expanded="true"> <span class=""><i class="fa fa-paypal text-info"></i></span> <span class="hidden-xs" lang="en">PayPal</span> </a>
  313. </li>
  314. <li class="tab">
  315. <a href="#donate-square" data-toggle="tab" aria-expanded="false"> <span class=""><i class="fa mdi mdi-square-inc-cash mdi-18px text-success"></i></span> <span class="hidden-xs" lang="en">Square Cash</span> </a>
  316. </li>
  317. <li class="tab">
  318. <a href="#donate-crypto" data-toggle="tab" aria-expanded="false"> <span class=""><i class="fa mdi mdi-coin mdi-18px text-info"></i></span> <span class="hidden-xs" lang="en">Cryptos</span> </a>
  319. </li>
  320. <li class="tab">
  321. <a href="#donate-patreon" data-toggle="tab" aria-expanded="false"> <span class=""><i class="fa mdi mdi-account-multiple mdi-18px text-danger"></i></span> <span class="hidden-xs" lang="en">Patreon</span> </a>
  322. </li>
  323. <li class="tab">
  324. <a href="#donate-open-collective" data-toggle="tab" aria-expanded="false"> <span class=""><i class="fa fa-circle-o-notch text-primary"></i></span> <span class="hidden-xs" lang="en">Open Collective</span> </a>
  325. </li>
  326. <li class="tab">
  327. <a href="#donate-ads" data-toggle="tab" aria-expanded="false"> <span class=""><i class="fa mdi mdi-google mdi-18px text-danger"></i></span> <span class="hidden-xs" lang="en">Google Ads</span> </a>
  328. </li>
  329. </ul>
  330. <div class="tab-content">
  331. <div class="tab-pane active" id="donate-github">
  332. <blockquote lang="en">Want to show support on Github? Sponsor me :)<br/><span lang="en">Please click the button to continue.</span></blockquote>
  333. <button onclick="window.open(\'https://github.com/sponsors/causefx\', \'_blank\')" class="btn btn-primary btn-rounded waves-effect waves-light" type="button"><span class="btn-label"><i class="fa fa-link"></i></span><span lang="en">Continue To Website</span></button>
  334. </div>
  335. <div class="tab-pane" id="donate-paypal">
  336. <blockquote lang="en">I have chosen to go with PayPal Pools so everyone can see how much people have donated.<br/><span lang="en">Please click the button to continue.</span></blockquote>
  337. <button onclick="window.open(\'https://paypal.me/pools/c/83JNaMBESR\', \'_blank\')" class="btn btn-primary btn-rounded waves-effect waves-light" type="button"><span class="btn-label"><i class="fa fa-link"></i></span><span lang="en">Continue To Website</span></button>
  338. </div>
  339. <div class="tab-pane" id="donate-square">
  340. <blockquote lang="en">If you use the Square Cash App, you can donate with that if you like.<br/><span lang="en">Please click the button to continue.</span></blockquote>
  341. <button onclick="window.open(\'https://cash.me/$CauseFX\', \'_blank\')" class="btn btn-primary btn-rounded waves-effect waves-light" type="button"><span class="btn-label"><i class="fa fa-link"></i></span><span lang="en">Continue To Website</span></button>
  342. </div>
  343. <div class="tab-pane" id="donate-crypto">
  344. <blockquote lang="en">Want to donate a small amount of Crypto?.<br/>Please use the QR Code or Wallet ID.</blockquote>
  345. <div class="col-lg-4 col-xs-12">
  346. <div class="lazyload qr-code" data-src="plugins/images/Bitcoin_QR_code.png"></div>
  347. <div class="clearfix"></div>
  348. <code>18dNtPKgor6pV5DJhYNqFxLJJ2BKugo4K9</code>
  349. </div>
  350. <div class="col-lg-4 col-xs-12">
  351. <div class="lazyload qr-code" data-src="plugins/images/Litecoin_QR_code.png"></div>
  352. <div class="clearfix"></div>
  353. <code>LejRxt8huhFGpVrp7TM43VSstrzKGxf8Cj</code>
  354. </div>
  355. <div class="col-lg-4 col-xs-12">
  356. <div class="lazyload qr-code" data-src="plugins/images/Ethereum_QR_code.png"></div>
  357. <div class="clearfix"></div>
  358. <code>0x605b678761af62C02Fe0fA86A99053D666dF5d6f</code>
  359. </div>
  360. <div class="clearfix"></div>
  361. </div>
  362. <div class="tab-pane" id="donate-patreon">
  363. <blockquote lang="en">Need specialized support or just want to support Organizr? If so head to Patreon...<br/><span lang="en">Please click the button to continue.</span></blockquote>
  364. <button onclick="window.open(\'https://www.patreon.com/join/organizr?\', \'_blank\')" class="btn btn-primary btn-rounded waves-effect waves-light" type="button"><span class="btn-label"><i class="fa fa-link"></i></span><span lang="en">Continue To Website</span></button>
  365. </div>
  366. <div class="tab-pane" id="donate-open-collective">
  367. <blockquote lang="en">Need specialized support or just want to support Organizr? If so head to Open Collective...<br/><span lang="en">Please click the button to continue.</span></blockquote>
  368. <button onclick="window.open(\'https://opencollective.com/organizr\', \'_blank\')" class="btn btn-primary btn-rounded waves-effect waves-light" type="button"><span class="btn-label"><i class="fa fa-link"></i></span><span lang="en">Continue To Website</span></button>
  369. </div>
  370. <div class="tab-pane" id="donate-ads">
  371. <blockquote lang="en">Money not an option? No problem. Show some love to this Google Ad below:</blockquote>
  372. <button onclick="window.open(\'https://organizr.app/ads/google.html\', \'_blank\')" class="btn btn-primary btn-rounded waves-effect waves-light" type="button"><span class="btn-label"><i class="fa fa-link"></i></span><span lang="en">Continue To Website</span></button>
  373. </div>
  374. </div>
  375. </div>
  376. </div>
  377. <div class="clearfix"></div>
  378. </div>
  379. <div role="tabpanel" class="tab-pane fade" id="settings-settings-updates">
  380. <div id="githubVersions"></div>
  381. <div class="clearfix"></div>
  382. </div>
  383. </div>
  384. </section>
  385. </div>
  386. <!-- /content -->
  387. </div>
  388. <!-- /tabs -->
  389. </section>
  390. </div>
  391. <!--./row-->
  392. </div>
  393. <!-- /.container-fluid -->
  394. <form id="about-theme-form" class="mfp-hide white-popup-block mfp-with-anim">
  395. <h2 id="about-theme-title">Loading...</h2>
  396. <div class="clearfix"></div>
  397. <div id="about-theme-body" class=""></div>
  398. </form>
  399. <div id="editHomepageItemDiv"><div id="editHomepageItem" class=""></div></div>
  400. ';
  401. }