PluginProbe
wpForo Forum / 2.3.0
wpForo Forum v2.3.0
3.1.5 3.1.4 3.1.2 3.1.1 3.1.0 3.0.9 3.0.8 3.0.7 trunk 1.0.0 1.0.1 1.0.2 1.1.0 1.1.1 1.1.2 1.2.0 1.3.0 1.3.1 1.4.0 1.4.1 1.4.10 1.4.11 1.4.12 1.4.13 1.4.2 All 137 releases
wpforo / admin / pages / settings.php

settings.php in wpForo Forum 2.3.0, at admin/pages/settings.php

200 lines 12.5 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2 // Exit if accessed directly
3 if( ! defined( 'ABSPATH' ) ) exit;
4 if( ! WPF()->usergroup->can( 'ms' ) ) exit;
5 $tab = sanitize_key( (string) wpfval( $_GET, 'wpf_tab' ) );
6 WPF()->settings->init_info();
7 ?>
8
9 <div class="wrap" style="margin:10px 20px 0 20px">
10 <div id="wpf-setbox" class="wpf-dash">
11 <!-- wpf-setbox-head start -->
12 <div class="wpf-setbox-head">
13 <div class="wpf-head-logo">
14 <img src="<?php echo esc_url_raw( WPFORO_URL . "/assets/images/dashboard/wpforo-logo.png" ); ?>" alt="wpForo Logo">
15 </div>
16 <div class="wpf-head-title">
17 <?php //esc_html_e("wpForo", "wpforo") ?>
18 </div>
19 <div class="wpf-head-info">
20 <span><a href="https://wpforo.com/docs/wpforo-v2/" target="_blank"><?php esc_html_e( "Documentation", "wpforo" ); ?></a></span>
21 <span><a href="https://wpforo.com/community/" target="_blank"><?php esc_html_e( "Support", "wpforo" ); ?></a></span>
22 <span><a href="https://gvectors.com/product-category/wpforo/" target="_blank"><?php esc_html_e( "Addons", "wpforo" ); ?></a></span>
23 </div>
24 </div>
25 <h1 style="width:0;height:0;margin:0;padding:0;"></h1>
26 <?php WPF()->notice->show(); ?>
27 <?php do_action( 'wpforo_settings_page_top' ) ?>
28 <?php do_action( "wpforo_option_page" ); ?>
29 <?php settings_errors( "wpforo" ); ?>
30 <!-- wpf-setbox-head end -->
31
32 <!-- wpf-setbox-body start -->
33 <div id="wpf-admin-wrap" class="wpf-setbox-body">
34 <div class="wpf-section">
35 <h3><?php esc_html_e( "Forum Settings", "wpforo" ) ?></h3>
36 <div class="wpf-opt-search">
37 <input id="wpf-opt-search-field" type="text" name="" value="" placeholder="<?php esc_attr_e( "Find an option...", "wpforo" ) ?>"/>
38 <span class="dashicons dashicons-search"></span>
39 <div id="wpf-opt-search-results"></div>
40 </div>
41 </div>
42
43 <?php if( ! $tab || ( ! isset( WPF()->settings->info->core[ $tab ] ) && ! isset( WPF()->settings->info->addons[ $tab ] ) ) ) : ?>
44 <!-- wpf-box-wrap start -->
45 <div class="wpf-box-wrap wpf-settings-home">
46 <?php
47 foreach( WPF()->settings->info->core as $tab_key => $setting ) {
48 if( ( $_GET['page'] === 'wpforo-base-settings' && ! $setting['base'] && is_wpforo_multiboard() ) || ( $_GET['page'] !== 'wpforo-base-settings' && $setting['base'] && is_wpforo_multiboard() ) ) {
49 continue;
50 }
51 ?>
52 <!-- Settings start -->
53 <div class="wpf-box">
54 <div class="wpf-box-info wpf-<?php echo esc_attr( $setting["status"] ); ?>">
55 <img src="<?php echo esc_url_raw( WPFORO_URL . "/assets/images/dashboard/" . $setting["status"] . ".png" ); ?>">
56 </div>
57 <div class="wpf-box-head">
58 <a href="<?php echo esc_url_raw( admin_url( "admin.php?page=" . $_GET['page'] . "&wpf_tab=" . $tab_key ) ); ?>" title="<?php esc_attr_e( "Open Settings", "wpforo" ) ?>">
59 <?php echo $setting["icon"]; ?>
60 </a>
61 </div>
62 <div class="wpf-box-foot">
63 <div class="wpf-box-title">
64 <a href="<?php echo esc_url_raw( admin_url( "admin.php?page=" . $_GET['page'] . "&wpf_tab=" . $tab_key ) ); ?>" title="<?php esc_attr_e( "Open Settings", "wpforo" ) ?>">
65 <?php echo $setting["title"] ?>
66 </a>
67 </div>
68 <div class="wpf-box-arrow">
69 <img src="<?php echo esc_url_raw( WPFORO_URL . "/assets/images/dashboard/arrow-right.png" ); ?>">
70 </div>
71 </div>
72 </div>
73 <!-- Settings end -->
74 <?php
75 }
76 ?>
77 <div class="wpf-clear"></div>
78 </div>
79 <!-- wpf-box-wrap end -->
80 <?php if( WPF()->settings->info->addons ): ?>
81 <div class="wpf-section">
82 <h3><?php esc_html_e( "Addons Settings", "wpforo" ) ?></h3>
83 </div>
84 <!-- wpf-box-wrap start -->
85 <div class="wpf-box-wrap wpf-box-addons wpf-settings-home">
86 <?php foreach( WPF()->settings->info->addons as $addon_key => $addon ) {
87 if( ( $_GET['page'] === 'wpforo-base-settings' && ! $addon['base'] && is_wpforo_multiboard() ) || ( $_GET['page'] !== 'wpforo-base-settings' && $addon['base'] && is_wpforo_multiboard() ) ) {
88 continue;
89 }
90 ?>
91 <!-- Settings start -->
92 <div class="wpf-box">
93 <div class="wpf-box-info wpf-<?php echo esc_attr( $addon["status"] ); ?>">
94 <img src="<?php echo esc_url_raw( WPFORO_URL . "/assets/images/dashboard/" . $addon["status"] . ".png" ); ?>" alt="">
95 </div>
96 <div class="wpf-box-head">
97 <a href="<?php echo esc_url_raw( admin_url( "admin.php?page=" . $_GET['page'] . "&wpf_tab=" . $addon_key ) ); ?>" title="<?php esc_attr_e( "Open Settings", "wpforo" ) ?>">
98 <?php echo $addon["icon"]; ?>
99 </a>
100 </div>
101 <div class="wpf-box-foot">
102 <div class="wpf-box-title">
103 <a href="<?php echo esc_url_raw( admin_url( "admin.php?page=" . $_GET['page'] . "&wpf_tab=" . $addon_key ) ); ?>" title="<?php esc_attr_e( "Open Settings", "wpforo" ) ?>">
104 <?php echo $addon["title"] ?>
105 </a>
106 </div>
107 <div class="wpf-box-arrow">
108 <img src="<?php echo esc_url_raw( WPFORO_URL . "/assets/images/dashboard/arrow-right.png" ); ?>" alt="">
109 </div>
110 </div>
111 </div>
112 <!-- Settings end -->
113 <?php
114 } ?>
115 </div>
116 <!-- wpf-box-wrap end -->
117 <div class="wpf-clear"></div>
118 <?php endif; ?>
119 <?php else: ?>
120 <div id="wpf-settings-tab" class="wpf-box-wrap wpf-settings-tab_<?php echo esc_attr( $tab ); ?>" style="align-items:flex-start;">
121 <!-- Settings Content start -->
122 <div class="wpf-box wpf-setcon">
123 <?php $setting = ( wpfkey( WPF()->settings->info->core, $tab ) ) ? WPF()->settings->info->core[ $tab ] : WPF()->settings->info->addons[ $tab ]; ?>
124 <div class="wpf-setcon-head">
125 <?php echo esc_html( $setting["title"] ); ?>
126 <a class="wpf-back" href="<?php echo esc_url_raw( admin_url( "admin.php?page=" . wpfval( $_GET, 'page' ) ) ); ?>"><span class="dashicons dashicons-arrow-left-alt2"></span><?php esc_html_e( "Back", "wpforo" ) ?></a>
127 </div>
128 <div class="wpf-setcon-body">
129 <?php
130 if( wpfval($setting, 'with_custom_form') ){
131 if( is_callable( $setting['callback_for_page'] ) ) call_user_func( $setting['callback_for_page'], $setting );
132 do_action( "wpforo_settings_after", $tab, $setting );
133 }else{
134 ?>
135 <form method="POST" enctype="multipart/form-data">
136 <?php
137 wp_nonce_field( "wpforo_settings_save_" . sanitize_title( $tab ) );
138 if( is_callable( $setting['callback_for_page'] ) ) call_user_func( $setting['callback_for_page'], $setting );
139 do_action( "wpforo_settings_after", $tab, $setting );
140 ?>
141 <div class="wpf-opt-row" style="flex-wrap: wrap; margin-top: 50px; display: flex;">
142 <div style="display: flex;">
143 <input style="padding-left: 21px; padding-right: 21px;" type="submit" class="button button-primary" name="save" value="<?php esc_attr_e( "Save Options", "wpforo" ); ?>">
144 <?php if( ! $setting['base'] && is_wpforo_multiboard() ) : ?>
145 <input style="order: -1;" type="submit" class="button button-primary" name="save_for_all" value="<?php esc_attr_e( "Save Options for All Boards", "wpforo" ); ?>">
146 <?php endif; ?>
147 </div>
148 <div style="order: -1;">
149 <input type="submit" class="button" value="<?php _e( 'Reset Options', 'wpforo' ); ?>" name="reset" onclick="return confirm('<?php wpforo_phrase( 'Do you really want to reset options?' ) ?>')"/>
150 </div>
151 </div>
152 </form>
153 <?php do_action( "wpforo_settings_after_form", $tab, $setting ); ?>
154 <?php
155 }
156 ?>
157 </div>
158 </div>
159 <!-- Settings Content end -->
160 <!-- Settings Sidebar start -->
161 <div class="wpf-setbar">
162 <ul class="wpf-box wpf-menu-group">
163 <li class="wpf-menu-head"><?php esc_html_e( "Settings", "wpforo" ) ?> <span class="dashicons dashicons-arrow-up"></span></li>
164 <?php foreach( WPF()->settings->info->core as $tab_key => $setting ): ?>
165 <li<?php if( $tab === $tab_key ) echo " class='wpf-active'"; ?>><a href="<?php echo esc_url_raw( admin_url( "admin.php?page=" . ( ( $setting['base'] && is_wpforo_multiboard() ) ? 'wpforo-base-settings' : wpforo_prefix_slug( 'settings' ) ) . "&wpf_tab=" . $tab_key ) ); ?>"><span class="dashicons dashicons-arrow-left-alt2"></span> <?php echo esc_html( $setting["title"] ); ?></a></li>
166 <?php endforeach; ?>
167 </ul>
168 <?php if( WPF()->settings->info->addons ): ?>
169 <ul class="wpf-box wpf-menu-group">
170 <li class="wpf-menu-head"><?php esc_html_e( "Addons Settings", 'wpforo' ) ?> <span class="dashicons dashicons-arrow-up"></span></li>
171 <?php foreach( WPF()->settings->info->addons as $addon_key => $addon ): ?>
172 <li<?php if( $tab === $addon_key ) echo " class='wpf-active'"; ?>><a href="<?php echo esc_url_raw( admin_url( "admin.php?page=" . ( ( $addon['base'] && is_wpforo_multiboard() ) ? 'wpforo-base-settings' : wpforo_prefix_slug( 'settings' ) ) . "&wpf_tab=" . $addon_key ) ); ?>"><span class="dashicons dashicons-arrow-left-alt2"></span> <?php echo esc_html( $addon["title"] ); ?></a></li>
173 <?php endforeach; ?>
174 </ul>
175 <?php endif; ?>
176 </div>
177 <!-- Settings Sidebar end -->
178 <div class="wpf-clear"></div>
179 </div>
180 <script>
181 jQuery(document).ready(function ($) {
182 $(document).on('click', '.wpf-setbar .wpf-menu-head .dashicons-arrow-down, .wpf-setbar .wpf-menu-head .dashicons-arrow-up', function () {
183 var $this = $(this)
184 var up = $this.hasClass('dashicons-arrow-up')
185 $this.toggleClass('dashicons-arrow-down dashicons-arrow-up')
186 if (up) {
187 $this.parents('.wpf-menu-group').find('li:not(.wpf-menu-head)').hide()
188 } else {
189 $this.parents('.wpf-menu-group').find('li:not(.wpf-menu-head)').show()
190 }
191 })
192 })
193 </script>
194 <?php endif; ?>
195 </div>
196 <!-- wpf-setbox-body end -->
197
198 </div>
199 </div>
200