array( 'label' => __pl('elem_styles'), 'icon' => 'dashicons-editor-paragraph', 'hash' => admin_url('admin.php?page=pagelayer_website_settings#headings') ),
'website_container' => array( 'label' => __pl('container'), 'icon' => 'dashicons-editor-table', 'hash' => admin_url('admin.php?page=pagelayer_website_settings#website_container') ),
'hf' => array( 'label' => __pl('hf'), 'icon' => 'dashicons-editor-insertmore', 'hash' => admin_url('admin.php?page=pagelayer_website_settings#hf') ),
);
} elseif ($current_page === 'pagelayer_template_export' || $current_page === 'pagelayer_import' || $current_page === 'pagelayer_template_wizard' || $current_page === 'pagelayer_tools') {
$nav_items = array(
'add_new_template' => array( 'label' => __('Add New Template'), 'icon' => 'dashicons-plus-alt', 'hash' => admin_url('admin.php?page=pagelayer_tools#add_new_template_tab') ),
'export_theme' => array( 'label' => __('Export Theme'), 'icon' => 'dashicons-upload', 'hash' => admin_url('admin.php?page=pagelayer_tools#export_theme_tab') ),
'import_theme' => array( 'label' => __('Import Theme'), 'icon' => 'dashicons-download', 'hash' => admin_url('admin.php?page=pagelayer_tools#import_theme_tab') ),
'custom_fonts' => array( 'label' => __('Custom Fonts'), 'icon' => 'dashicons-editor-bold', 'hash' => (defined('PAGELAYER_PREMIUM') ? admin_url('edit.php?post_type=pagelayer-fonts') : admin_url('admin.php?page=pagelayer_tools#custom_fonts_tab')) ),
);
} elseif ($current_page === 'pagelayer_ai_agents') {
$nav_items = array(
'connection' => array( 'label' => __('Connection'), 'icon' => 'dashicons-admin-network', 'hash' => admin_url('admin.php?page=pagelayer_ai_agents#connection') ),
);
} elseif ($current_page === 'pagelayer_license' || $current_page === 'pagelayer_getting_started') {
$nav_items = array(
'settings' => array( 'label' => __('Settings'), 'icon' => 'dashicons-admin-settings', 'hash' => admin_url('admin.php?page=pagelayer') ),
'website_settings' => array( 'label' => __('Website Settings'), 'icon' => 'dashicons-editor-table', 'hash' => admin_url('admin.php?page=pagelayer_website_settings') ),
'theme_templates' => array( 'label' => __('Theme Templates'), 'icon' => 'dashicons-welcome-widgets-menus', 'hash' => admin_url('edit.php?post_type=pagelayer-template') ),
'getting_started' => array( 'label' => __('Getting Started'), 'icon' => 'dashicons-controls-play', 'hash' => admin_url('admin.php?page=pagelayer_getting_started') ),
);
if(defined('PAGELAYER_PREMIUM')){
$nav_items['license'] = array( 'label' => __('License'), 'icon' => 'dashicons-admin-network', 'hash' => admin_url('admin.php?page=pagelayer_license') );
}
} else {
$nav_items = array(
'general' => array( 'label' => __('General'), 'icon' => 'dashicons-admin-settings', 'hash' => admin_url('admin.php?page=pagelayer#general') ),
'icons' => array( 'label' => __('Enable Icons'), 'icon' => 'dashicons-star-filled', 'hash' => admin_url('admin.php?page=pagelayer#icons') ),
'social' => array( 'label' => __('Information'), 'icon' => 'dashicons-info', 'hash' => admin_url('admin.php?page=pagelayer#social') ),
'integration' => array( 'label' => __('Integrations'), 'icon' => 'dashicons-networking', 'hash' => admin_url('admin.php?page=pagelayer#integration') ),
);
if(defined('PAGELAYER_PREMIUM')){
$nav_items['contactform'] = array( 'label' => __('Contact Form'), 'icon' => 'dashicons-email-alt', 'hash' => admin_url('admin.php?page=pagelayer#contactform') );
$nav_items['captcha'] = array( 'label' => __('Google Captcha'), 'icon' => 'dashicons-shield', 'hash' => admin_url('admin.php?page=pagelayer#captcha') );
}
if(!defined('SITEPAD')){
$nav_items['support'] = array( 'label' => __('Support'), 'icon' => 'dashicons-sos', 'hash' => admin_url('admin.php?page=pagelayer#support') );
$nav_items['faq'] = array( 'label' => __('FAQ'), 'icon' => 'dashicons-editor-help', 'hash' => admin_url('admin.php?page=pagelayer#faq') );
}
}
// Version
$version = defined('PAGELAYER_VERSION') ? PAGELAYER_VERSION : '';
echo '
';
}
function pagelayer_settings_page(){
$_REQUEST = wp_unslash($_REQUEST);
$post_type = array();
$exclude = [ 'attachment', 'pagelayer-template' ];
$pt_objects = get_post_types(['public' => true,], 'objects');
foreach ( $pt_objects as $pt_slug => $type ) {
if ( in_array( $pt_slug, $exclude ) ) {
continue;
}
$post_type[$pt_slug] = $type->labels->name;
}
$support_ept = get_option( 'pl_support_ept', ['post', 'page']);
$option_name = 'pl_gen_setting';
$new_value = '';
// DO an admin referrer check
if(!empty($_POST)){
check_admin_referer('pagelayer-options');
}
// We do a $_POST check and hence we are checking the POST var here as well
// Everywhere down as well, $_POST should be used to save data
if(isset($_POST['pl_support_ept'])){
$pl_support_ept = $_REQUEST['pl_support_ept'];
foreach($pl_support_ept as $k => $v){
if(empty($post_type[$v])){
unset($pl_support_ept[$k]);
}
}
// Update it
update_option('pl_support_ept', $pl_support_ept );
$support_ept = get_option( 'pl_support_ept');
$done = 1;
}
if(isset($_POST['pagelayer_icons_set'])){
$pagelayer_icons_set = $_REQUEST['pagelayer_icons_set'];
// Update it
update_option('pagelayer_icons_set', $pagelayer_icons_set);
$done = 1;
}
$socials = ['pagelayer-facebook-url','pagelayer-twitter-url','pagelayer-instagram-url','pagelayer-linkedin-url','pagelayer-youtube-url','pagelayer-gplus-url','pagelayer-copyright','pagelayer-phone','pagelayer-address'];
foreach( $socials as $social ){
if(isset($_POST[$social])){
$url = $_REQUEST[$social];
update_option($social, $url);
$done = 1;
}
}
if(isset($_POST['pagelayer_cf_to_email'])){
$to_email = $_REQUEST['pagelayer_cf_to_email'];
update_option( 'pagelayer_cf_to_email', $to_email );
$done = 1;
}
if(isset($_POST['pagelayer-gmaps-api-key'])){
$maps_id = sanitize_text_field($_REQUEST['pagelayer-gmaps-api-key']);
update_option( 'pagelayer-gmaps-api-key', $maps_id );
$done = 1;
}
if(defined('PAGELAYER_PREMIUM')){
if(isset($_POST['pagelayer_cf_subject'])){
$subject = $_REQUEST['pagelayer_cf_subject'];
update_option('pagelayer_cf_subject', $subject, 'no');
$done = 1;
}
if(isset($_POST['pagelayer_cf_headers'])){
$subject = $_REQUEST['pagelayer_cf_headers'];
update_option('pagelayer_cf_headers', $subject, 'no');
$done = 1;
}
if(isset($_POST['pagelayer_cf_from_email'])){
$subject = $_REQUEST['pagelayer_cf_from_email'];
update_option('pagelayer_cf_from_email', $subject, 'no');
$done = 1;
}
if(isset($_POST['pagelayer_cf_success'])){
$success = $_REQUEST['pagelayer_cf_success'];
update_option( 'pagelayer_cf_success', $success, 'no');
$done = 1;
}
if(isset($_POST['pagelayer_cf_failed'])){
$failed = $_REQUEST['pagelayer_cf_failed'];
update_option( 'pagelayer_cf_failed', $failed, 'no');
$done = 1;
}
if(isset($_POST['pagelayer_recaptcha_failed'])){
$failed = $_REQUEST['pagelayer_recaptcha_failed'];
update_option( 'pagelayer_recaptcha_failed', $failed, 'no');
$done = 1;
}
if(isset($_POST['pagelayer_recaptcha_version'])){
$version = sanitize_text_field($_REQUEST['pagelayer_recaptcha_version']);
update_option( 'pagelayer_recaptcha_version', $version );
$done = 1;
}
if(isset($_POST['pagelayer_google_captcha'])){
$captcha = sanitize_text_field($_REQUEST['pagelayer_google_captcha']);
update_option( 'pagelayer_google_captcha', $captcha );
$done = 1;
}
if(isset($_POST['pagelayer_google_captcha_secret'])){
$captcha_secret = sanitize_text_field($_REQUEST['pagelayer_google_captcha_secret']);
update_option( 'pagelayer_google_captcha_secret', $captcha_secret );
$done = 1;
}
if(isset($_POST['pagelayer_google_captcha_lang'])){
$captcha_secret = $_REQUEST['pagelayer_google_captcha_lang'];
update_option( 'pagelayer_google_captcha_lang', $captcha_secret );
$done = 1;
}
// Facebook APP ID
if(isset($_POST['pagelayer-fbapp-id'])){
$fb_app_id = sanitize_text_field($_REQUEST['pagelayer-fbapp-id']);
if(preg_match('/\W/is', $fb_app_id)){
$pl_error[] = 'The Facebook App ID is not correct';
}else{
// Save it
update_option( 'pagelayer-fbapp-id', $fb_app_id );
$done = 1;
}
}
}
// reCAPTCHA Langs
$recap_lang[''] = 'Auto Detect';
$recap_lang['ar'] = 'Arabic';
$recap_lang['af'] = 'Afrikaans';
$recap_lang['am'] = 'Amharic';
$recap_lang['hy'] = 'Armenian';
$recap_lang['az'] = 'Azerbaijani';
$recap_lang['eu'] = 'Basque';
$recap_lang['bn'] = 'Bengali';
$recap_lang['bg'] = 'Bulgarian';
$recap_lang['ca'] = 'Catalan';
$recap_lang['zh-HK'] = 'Chinese (Hong Kong)';
$recap_lang['zh-CN'] = 'Chinese (Simplified)';
$recap_lang['zh-TW'] = 'Chinese (Traditional)';
$recap_lang['hr'] = 'Croatian';
$recap_lang['cs'] = 'Czech';
$recap_lang['da'] = 'Danish';
$recap_lang['nl'] = 'Dutch';
$recap_lang['en-GB'] = 'English (UK)';
$recap_lang['en'] = 'English (US)';
$recap_lang['et'] = 'Estonian';
$recap_lang['fil'] = 'Filipino';
$recap_lang['fi'] = 'Finnish';
$recap_lang['fr'] = 'French';
$recap_lang['fr-CA'] = 'French (Canadian)';
$recap_lang['gl'] = 'Galician';
$recap_lang['ka'] = 'Georgian';
$recap_lang['de'] = 'German';
$recap_lang['de-AT'] = 'German (Austria)';
$recap_lang['de-CH'] = 'German (Switzerland)';
$recap_lang['el'] = 'Greek';
$recap_lang['gu'] = 'Gujarati';
$recap_lang['iw'] = 'Hebrew';
$recap_lang['hi'] = 'Hindi';
$recap_lang['hu'] = 'Hungarain';
$recap_lang['is'] = 'Icelandic';
$recap_lang['id'] = 'Indonesian';
$recap_lang['it'] = 'Italian';
$recap_lang['ja'] = 'Japanese';
$recap_lang['kn'] = 'Kannada';
$recap_lang['ko'] = 'Korean';
$recap_lang['lo'] = 'Laothian';
$recap_lang['lv'] = 'Latvian';
$recap_lang['lt'] = 'Lithuanian';
$recap_lang['ms'] = 'Malay';
$recap_lang['ml'] = 'Malayalam';
$recap_lang['mr'] = 'Marathi';
$recap_lang['mn'] = 'Mongolian';
$recap_lang['no'] = 'Norwegian';
$recap_lang['fa'] = 'Persian';
$recap_lang['pl'] = 'Polish';
$recap_lang['pt'] = 'Portuguese';
$recap_lang['pt-BR'] = 'Portuguese (Brazil)';
$recap_lang['pt-PT'] = 'Portuguese (Portugal)';
$recap_lang['ro'] = 'Romanian';
$recap_lang['ru'] = 'Russian';
$recap_lang['sr'] = 'Serbian';
$recap_lang['si'] = 'Sinhalese';
$recap_lang['sk'] = 'Slovak';
$recap_lang['sl'] = 'Slovenian';
$recap_lang['es'] = 'Spanish';
$recap_lang['es-419'] = 'Spanish (Latin America)';
$recap_lang['sw'] = 'Swahili';
$recap_lang['sv'] = 'Swedish';
$recap_lang['ta'] = 'Tamil';
$recap_lang['te'] = 'Telugu';
$recap_lang['th'] = 'Thai';
$recap_lang['tr'] = 'Turkish';
$recap_lang['uk'] = 'Ukrainian';
$recap_lang['ur'] = 'Urdu';
$recap_lang['vi'] = 'Vietnamese';
$recap_lang['zu'] = 'Zulu';
pagelayer_page_header('Settings');
// Media Replace.
if(isset($_POST['submit']) || isset($_POST['pagelayer_disable_media_replace'])){
$disable_media = empty($_REQUEST['pagelayer_disable_media_replace']) ? 0 : 1;
update_option( 'pagelayer_disable_media_replace', $disable_media );
$done = 1;
}
// Media Replace
$media_replace = get_option( 'pagelayer_disable_media_replace');
// Clone Templates.
if(isset($_POST['submit']) || isset($_POST['pagelayer_disable_clone'])){
$disable_clone = empty($_REQUEST['pagelayer_disable_clone']) ? 0 : 1;
update_option( 'pagelayer_disable_clone', $disable_clone );
$done = 1;
}
// Disable Clone
$disable_clone = get_option('pagelayer_disable_clone');
// Dark Mode
if(isset($_POST['submit']) || isset($_POST['pagelayer_enable_dark_mode'])){
$enable_dark_mode = empty($_REQUEST['pagelayer_enable_dark_mode']) ? 0 : 1;
update_option( 'pagelayer_enable_dark_mode', $enable_dark_mode );
$done = 1;
}
// Dark Mode
$enable_dark_mode = get_option('pagelayer_enable_dark_mode');
// Enable JS/CSS Giver
if(isset($_POST['submit']) || isset($_POST['pagelayer_enable_jscss_giver'])){
$done = 1;
$enable_jscss_giver = empty($_REQUEST['pagelayer_enable_jscss_giver']) ? -1 : 1;
update_option( 'pagelayer_enable_giver', $enable_jscss_giver );
}
// Enable JS/CSS Giver
$enable_jscss_giver = get_option('pagelayer_enable_giver');
if(defined('PAGELAYER_PREMIUM')){
// Enable Google Font local giver
if(isset($_POST['submit']) || isset($_POST['pagelayer_local_gfont'])){
$done = 1;
$enable_gfont_downloader = empty($_REQUEST['pagelayer_local_gfont']) ? -1 : 1;
update_option( 'pagelayer_local_gfont', $enable_gfont_downloader );
}
// Enable Google Font Downloader
$enable_gfont_downloader = get_option('pagelayer_local_gfont');
// Enable Markdown Upload
if(isset($_POST['submit']) || isset($_POST['pagelayer_markdown_upload'])){
$done = 1;
$enable_markdown_upload = !empty($_REQUEST['pagelayer_markdown_upload']);
update_option('pagelayer_markdown_upload', $enable_markdown_upload);
}
// Enable Markdown Upload
$enable_markdown_upload = get_option('pagelayer_markdown_upload');
}
// User roles to allow saving js content
if(isset($_POST['pagelayer_js_permission'])){
update_option( 'pagelayer_js_permission', array_filter($_POST['pagelayer_js_permission']) );
}
$pagelayer_js_permission = get_option('pagelayer_js_permission');
$pagelayer_js_permission = empty($pagelayer_js_permission) ? array() : $pagelayer_js_permission;
// Saved ?
if(!empty($done)){
echo ''. __('The settings were saved successfully', 'pagelayer'). '
';
}
// Any errors ?
if(!empty($pl_error)){
pagelayer_report_error($pl_error);echo '
';
}
?>