Edit File by line

Deprecated: str_replace(): Passing null to parameter #2 ($replace) of type array|string is deprecated in /home/sportsfever/public_html/filemanger/function.php on line 93

Warning: Undefined array key "page_file_edit_line" in /home/sportsfever/public_html/filemanger/edit_text_line.php on line 32
/home/sportsfe.../httpdocs/clone/wp-conte.../plugins/themify-.../themify
File: themify-admin.php
<?php endif; ?>
[500] Fix | Delete
</ul>
[501] Fix | Delete
<!-- /nav -->
[502] Fix | Delete
[503] Fix | Delete
<!------------------------------------------------------------------------------------>
[504] Fix | Delete
[505] Fix | Delete
<!--setting tab -->
[506] Fix | Delete
<div id="setting" class="maintab">
[507] Fix | Delete
[508] Fix | Delete
<ul class="subtabnav">
[509] Fix | Delete
<div class="search-setting-holder">
[510] Fix | Delete
<label for="search-setting" class="search-icon"><?php echo themify_get_icon('search','ti')?></label>
[511] Fix | Delete
<input id="search-setting" type="text" class="search-setting" name="search-setting">
[512] Fix | Delete
<span class="clear-search"><?php echo themify_get_icon('close','ti')?></span>
[513] Fix | Delete
</div>
[514] Fix | Delete
<?php
[515] Fix | Delete
$x = true;
[516] Fix | Delete
foreach($themify_config['panel']['settings']['tab'] as $tab):?>
[517] Fix | Delete
<?php if ( isset( $tab['id'] )):?>
[518] Fix | Delete
<li<?php if( $x===true):?> class="selected"<?php $x = false;?><?php endif;?>><a href="<?php esc_attr_e( '#setting-' . themify_scrub_func( $tab['id'] ) )?>"><?php echo $tab['title']?></a></li>
[519] Fix | Delete
<?php endif;?>
[520] Fix | Delete
<?php endforeach;?>
[521] Fix | Delete
</ul>
[522] Fix | Delete
[523] Fix | Delete
<?php $themify_settings_notice = false; ?>
[524] Fix | Delete
<?php foreach($themify_config['panel']['settings']['tab'] as $tab){ ?>
[525] Fix | Delete
<!-- subtab: setting-<?php echo themify_scrub_func($tab['id']); ?> -->
[526] Fix | Delete
<div id="<?php echo esc_attr( 'setting-' . themify_scrub_func( $tab['id'] ) ); ?>" class="subtab">
[527] Fix | Delete
<?php
[528] Fix | Delete
if(is_array($tab['custom-module'])){
[529] Fix | Delete
if(isset($tab['custom-module']['title'],$tab['custom-module']['function']) ){
[530] Fix | Delete
echo themify_fieldset( $tab['custom-module']['title'], $tab['custom-module']['function'], $tab['custom-module'] );
[531] Fix | Delete
} else {
[532] Fix | Delete
foreach($tab['custom-module'] as $module){
[533] Fix | Delete
$wrap = ( ! isset( $module['wrap'] ) || $module['wrap'] ) ? true : false;
[534] Fix | Delete
echo themify_fieldset( $module['title'], $module['function'], $module, $wrap );
[535] Fix | Delete
}
[536] Fix | Delete
}
[537] Fix | Delete
}
[538] Fix | Delete
?>
[539] Fix | Delete
<?php
[540] Fix | Delete
if ( ! $themify_settings_notice ) :
[541] Fix | Delete
?>
[542] Fix | Delete
<div class="themify-info-link"><?php printf( __( 'For more info about the options below, refer to the <a href="%s">General Settings</a> documentation.', 'themify' ), 'https://themify.me/docs/general-settings' ); ?></div>
[543] Fix | Delete
<?php
[544] Fix | Delete
$themify_settings_notice = true;
[545] Fix | Delete
endif; // themify settings notice
[546] Fix | Delete
[547] Fix | Delete
if (themify_scrub_func($tab['id'])== 'default_layouts') {
[548] Fix | Delete
echo '<div class="themify-info-link">' . __( 'Here you can set the <a href="https://themify.me/docs/default-layouts">Default Layouts</a> for WordPress archive post layout (category, search, archive, tag pages, etc.), single post layout (single post page), and the static Page layout. The default single post and page layout can be override individually on the post/page &gt; edit &gt; Themify Custom Panel.', 'themify' ) . '</div>';
[549] Fix | Delete
}
[550] Fix | Delete
[551] Fix | Delete
?>
[552] Fix | Delete
</div>
[553] Fix | Delete
[554] Fix | Delete
<!-- /subtab: setting-<?php echo themify_scrub_func($tab['id']); ?> -->
[555] Fix | Delete
<?php } ?>
[556] Fix | Delete
[557] Fix | Delete
</div><!--/setting tab -->
[558] Fix | Delete
[559] Fix | Delete
<!------------------------------------------------------------------------------------>
[560] Fix | Delete
[561] Fix | Delete
<!--skins tab -->
[562] Fix | Delete
<?php
[563] Fix | Delete
if ( ! empty( $themify_skins ) ) : ?>
[564] Fix | Delete
<div id="skins" class="maintab">
[565] Fix | Delete
<ul class="subtabnav">
[566] Fix | Delete
<li class="selected"><a href="#setting-general"><?php _e('Skins', 'themify'); ?></a></li>
[567] Fix | Delete
</ul>
[568] Fix | Delete
[569] Fix | Delete
<div id="load-load" class="subtab">
[570] Fix | Delete
<?php if( $skins_and_demos ) : ?>
[571] Fix | Delete
<div class="themify-info-link"><?php _e( 'Select a skin and import the demo content (demo import is optional). Importing the demo content will override your Themify settings, menu and widget settings. It will also add the content (posts, pages, widgets, menus, etc.) to your site as per our demo setup. It is recommend to do on a fresh/development site. Erase demo will delete all the imported posts/pages (either modified or unmodified). Themify panel settings, user&rsquo;s created content, and widgets will not be removed.', 'themify' ); ?></div>
[572] Fix | Delete
<?php endif; ?>
[573] Fix | Delete
<div class="themify-skins">
[574] Fix | Delete
<input type="hidden" name="skin" value="<?php echo themify_get( 'skin','',true ); ?>">
[575] Fix | Delete
<?php echo themify_get_skins_admin(); ?>
[576] Fix | Delete
</div>
[577] Fix | Delete
</div>
[578] Fix | Delete
</div>
[579] Fix | Delete
<!--/skins tab -->
[580] Fix | Delete
<?php endif; ?>
[581] Fix | Delete
[582] Fix | Delete
<!------------------------------------------------------------------------------------>
[583] Fix | Delete
[584] Fix | Delete
<!--transfer tab -->
[585] Fix | Delete
<div id="transfer" class="maintab">
[586] Fix | Delete
<ul class="subtabnav">
[587] Fix | Delete
<li><a href="#transfer-import"><?php _e( 'Theme Settings', 'themify' ); ?></a></li>
[588] Fix | Delete
</ul>
[589] Fix | Delete
[590] Fix | Delete
<div id="transfer-import" class="subtab">
[591] Fix | Delete
<div class="themify-info-link"><?php _e( 'Click "Export" to export the Themify panel data which you can use to import in the future by clicking the "Import" button. Note: this will only export/import the data within the Themify panel (the WordPress settings, widgets, content, comments, page/post settings, etc. are not included).', 'themify' ) ?></div>
[592] Fix | Delete
[593] Fix | Delete
<div class="biggest-transfer-btn">
[594] Fix | Delete
<a class="themify_button big-button" id="tf_import_settings"
[595] Fix | Delete
data-msg-confirm="<?php esc_attr_e( 'Import will overwrite all settings and configurations. Press OK to continue, Cancel to stop.', 'themify' ); ?>"
[596] Fix | Delete
data-msg-invalid="<?php esc_attr_e( 'Invalid file format. Please upload .txt or .zip file containing the exported data.', 'themify' ); ?>"
[597] Fix | Delete
data-msg-error="<?php esc_attr_e( 'Failed to import, please try again later.', 'themify' ); ?>"
[598] Fix | Delete
data-msg-importing="<?php esc_attr_e( 'Importing...', 'themify' ); ?>"
[599] Fix | Delete
data-nonce="<?php esc_attr_e( wp_create_nonce( 'themify_import_settings' ) ); ?>"
[600] Fix | Delete
><?php _e( 'Import', 'themify' ); ?></a>
[601] Fix | Delete
<em><?php _e('or', 'themify'); ?></em>
[602] Fix | Delete
<a href="#" class="themify_button big-button" id="tf_export_settings" data-nonce="<?php esc_attr_e( wp_create_nonce( 'themify_export_settings' ) ); ?>" data-filename="<?php echo esc_attr( $theme->display('Name') . '_themify_export_' . date('Y_m_d') ); ?>"><?php _e('Export', 'themify'); ?></a>
[603] Fix | Delete
</div>
[604] Fix | Delete
</div>
[605] Fix | Delete
[606] Fix | Delete
</div>
[607] Fix | Delete
<!--/transfer tab -->
[608] Fix | Delete
[609] Fix | Delete
<?php if( ! $skins_and_demos ) : ?>
[610] Fix | Delete
<!--demo import tab -->
[611] Fix | Delete
<div id="demo-import" class="maintab">
[612] Fix | Delete
<ul class="subtabnav">
[613] Fix | Delete
<li><a href="#demo-import"><?php _e( 'Demo Import', 'themify' ); ?></a></li>
[614] Fix | Delete
</ul>
[615] Fix | Delete
[616] Fix | Delete
<div id="demo-import" class="subtab demo-import-main">
[617] Fix | Delete
<div>
[618] Fix | Delete
<a href="#" class="themify_button big-button import-sample-content" data-plugins="<?php echo esc_attr(themify_get_theme_required_plugins()); ?>" data-default="<?php _e( 'Import Demo', 'themify' ); ?>" data-success="<?php _e( 'Done', 'themify' ); ?>" data-importing="<?php _e( 'Importing', 'themify' ) ?>"> <i class="ti-arrow-down"></i> <span><?php _e( 'Import Demo', 'themify' ); ?></span> </a>
[619] Fix | Delete
</div>
[620] Fix | Delete
<p><?php _e( 'Import demo will replicate your site like our demo setup.', 'themify' ); ?> <br><br>
[621] Fix | Delete
[622] Fix | Delete
<small><?php _e( 'WARNING: Importing the demo content will override your Themify settings, menu and widget settings. It will also add the content (posts, pages, widgets, menus, etc.) to your site as per our demo setup. It is recommend to do on a fresh/development site.', 'themify' ); ?></small></p>
[623] Fix | Delete
<div>
[624] Fix | Delete
<a href="#" class="themify_button big-button erase-sample-content" data-default="<?php _e( 'Erase Demo', 'themify' ); ?>" data-erasing="<?php _e( 'Erasing', 'themify' ); ?>" data-success="<?php _e( 'Done', 'themify' ); ?>"> <i class="tf_close"></i> <span><?php _e( 'Erase Demo', 'themify' ); ?></span> </a>
[625] Fix | Delete
</div>
[626] Fix | Delete
<p><small><?php _e( 'Erase demo will delete all the imported posts/pages (either modified or unmodified). Themify panel settings, user&rsquo;s created content, and widgets will not be removed. You may import the content again later.', 'themify' ); ?></small></p>
[627] Fix | Delete
</div>
[628] Fix | Delete
[629] Fix | Delete
</div>
[630] Fix | Delete
<!--/demo import tab -->
[631] Fix | Delete
<?php endif; ?>
[632] Fix | Delete
[633] Fix | Delete
<?php if ( themify_allow_update() ) : ?>
[634] Fix | Delete
<!--update theme/framework tab -->
[635] Fix | Delete
<div id="update-check" class="maintab">
[636] Fix | Delete
<ul class="subtabnav">
[637] Fix | Delete
<li><a href="#update-main"><?php _e( 'Update', 'themify' ); ?></a></li>
[638] Fix | Delete
<li><a href="#child-theme"><?php _e( 'Child Theme', 'themify' ); ?></a></li>
[639] Fix | Delete
</ul>
[640] Fix | Delete
<div id="update-main" class="subtab update-main">
[641] Fix | Delete
<?php if ( defined('THEMIFY_UPDATER') ) :
[642] Fix | Delete
[643] Fix | Delete
$updater = Themify_Updater::get_instance();
[644] Fix | Delete
$theme = is_child_theme() ? $theme->parent() : $theme;
[645] Fix | Delete
if ( ! method_exists($updater, 'themify_reinstall_theme') ) : ?>
[646] Fix | Delete
[647] Fix | Delete
<div class="note">
[648] Fix | Delete
<?php _e( 'For theme re-installation feature, please update the Themify Updater plugin to latest version.', 'themify' ); ?>
[649] Fix | Delete
</div>
[650] Fix | Delete
[651] Fix | Delete
<?php
[652] Fix | Delete
elseif ( $updater->has_error() && !$updater->has_attribute( $theme->stylesheet, 'free') ) :
[653] Fix | Delete
printf( __('Error: please check <a class="license-link" data-src="update" href="#">Themify License</a> settings.', 'themify'));
[654] Fix | Delete
$license_modal=true;
[655] Fix | Delete
else:
[656] Fix | Delete
$updater->themify_reinstall_theme( $theme->stylesheet );
[657] Fix | Delete
endif;
[658] Fix | Delete
else : ?>
[659] Fix | Delete
<div class="note">
[660] Fix | Delete
<?php
[661] Fix | Delete
if(!empty($GLOBALS['tgmpa'])){
[662] Fix | Delete
$tgmpa_instance = call_user_func( array( get_class( $GLOBALS['tgmpa'] ), 'get_instance' ) );
[663] Fix | Delete
$action = ! $tgmpa_instance->is_plugin_installed( 'themify-updater' )?'install':'activate';
[664] Fix | Delete
$url='#';
[665] Fix | Delete
$ajax_url = wp_nonce_url(
[666] Fix | Delete
add_query_arg(
[667] Fix | Delete
array(
[668] Fix | Delete
'plugin' => urlencode( 'themify-updater' ),
[669] Fix | Delete
'tgmpa-' . $action => $action . '-plugin',
[670] Fix | Delete
'auto_activate' => 1,
[671] Fix | Delete
),
[672] Fix | Delete
$tgmpa_instance->get_tgmpa_url()
[673] Fix | Delete
),
[674] Fix | Delete
'tgmpa-' . $action,
[675] Fix | Delete
'tgmpa-nonce'
[676] Fix | Delete
);
[677] Fix | Delete
}else{
[678] Fix | Delete
$url=admin_url( 'admin.php?page=themify-install-plugins' );
[679] Fix | Delete
}
[680] Fix | Delete
?>
[681] Fix | Delete
<?php printf( __( 'To update theme automatically, please activate <a class="themify-ajax-installer" href="%s"%s>Themify Updater</a> plugin and insert your Themify username/license key.', 'themify' ), $url,('#'!==$url ? ' target="_blank" rel="noopener"' : ' data-ajax="'.esc_url($ajax_url).'"') ); ?>
[682] Fix | Delete
</div>
[683] Fix | Delete
<?php endif; ?>
[684] Fix | Delete
</div>
[685] Fix | Delete
<div id="child-theme" class="subtab">
[686] Fix | Delete
<?php if ( is_child_theme() ) : ?>
[687] Fix | Delete
<p><?php echo themify_get_icon( 'far thumbs-up' ); ?> <?php _e( 'You\'re already using a child theme. Well done!', 'themify' ); ?></p>
[688] Fix | Delete
<?php else : ?>
[689] Fix | Delete
<?php Themify_Child_Theme_Generator::form(); ?>
[690] Fix | Delete
<?php endif; ?>
[691] Fix | Delete
</div>
[692] Fix | Delete
</div>
[693] Fix | Delete
<!--/update theme/framework tab -->
[694] Fix | Delete
<?php endif; // user can update_themes ?>
[695] Fix | Delete
[696] Fix | Delete
<!------------------------------------------------------------------------------------>
[697] Fix | Delete
[698] Fix | Delete
</div>
[699] Fix | Delete
<!--/content -->
[700] Fix | Delete
[701] Fix | Delete
<?php if( get_option( get_template() . '_themify_import_notice', 1 ) ) : ?>
[702] Fix | Delete
<div id="demo-import-notice" class="themify-modal tf_scrollbar">
[703] Fix | Delete
[704] Fix | Delete
<?php if ( ! is_child_theme() ) : ?>
[705] Fix | Delete
<?php Themify_Child_Theme_Generator::form(); ?>
[706] Fix | Delete
<hr>
[707] Fix | Delete
<?php endif; ?>
[708] Fix | Delete
[709] Fix | Delete
<?php if( $skins_and_demos ) : ?>
[710] Fix | Delete
<h3><?php _e( 'Skins & Demos', 'themify' ); ?></h3>
[711] Fix | Delete
<p><?php _e( 'Select a skin and import the demo content as per our demo (optional). You can do this later at the Skins & Demos tab.', 'themify' ); ?></p>
[712] Fix | Delete
<div class="skins-demo-import-notice">
[713] Fix | Delete
<?php echo themify_get_skins_admin(); ?>
[714] Fix | Delete
</div>
[715] Fix | Delete
<?php else : ?>
[716] Fix | Delete
<h3><?php _e( 'Import Demo', 'themify' ); ?></h3>
[717] Fix | Delete
<p><?php _e( 'Would you like to import the demo content to have the exact look as our demo?', 'themify' ); ?></p>
[718] Fix | Delete
<p><?php _e( 'You may import or erase demo content later at the Import tab of the Themify panel.', 'themify' ); ?></p>
[719] Fix | Delete
<a href="#" class="themify_button import-sample-content" data-plugins="<?php echo esc_attr(themify_get_theme_required_plugins()); ?>" data-default="<?php _e( 'Import Demo', 'themify' ); ?>" data-success="<?php _e( 'Done', 'themify' ); ?>" data-importing="<?php _e( 'Importing', 'themify' ) ?>"> <i class="ti-arrow-down"></i> <span><?php _e( 'Yes, import', 'themify' ); ?></span> </a>
[720] Fix | Delete
<a href="#" class="thanks-button dismiss-import-notice"> <?php _e( 'No, thanks', 'themify' ); ?> </a>
[721] Fix | Delete
<div class="note"><?php _e( 'WARNING: Importing the demo content will override your Themify settings, menu and widget settings. It will also add the content (posts, pages, widgets, menus, etc.) to your site as per our demo setup. It is recommend to do on a fresh/development site.', 'themify' ); ?></div>
[722] Fix | Delete
<?php endif; ?>
[723] Fix | Delete
<a href="#" class="close dismiss-import-notice"><i class="tf_close"></i></a>
[724] Fix | Delete
</div>
[725] Fix | Delete
<?php
[726] Fix | Delete
// disable the demo import modal after first visit
[727] Fix | Delete
$_key=get_template() . '_themify_import_notice';
[728] Fix | Delete
delete_option($_key);
[729] Fix | Delete
add_option($_key,0, '', false );
[730] Fix | Delete
?>
[731] Fix | Delete
<?php endif; ?>
[732] Fix | Delete
[733] Fix | Delete
<!-- footer -->
[734] Fix | Delete
<div id="bottomtab">
[735] Fix | Delete
<p id="logo">v<?php echo THEMIFY_VERSION; ?></p>
[736] Fix | Delete
<div class="reset">
[737] Fix | Delete
<strong><a href="#" id="reset-setting" class="reset-button"><?php _e( 'Reset Settings', 'themify' ); ?></a></strong>
[738] Fix | Delete
</div>
[739] Fix | Delete
<p class="btm-save-btn">
[740] Fix | Delete
<a href="#" class="save-button"><?php _e('Save', 'themify'); ?></a>
[741] Fix | Delete
</p>
[742] Fix | Delete
</div>
[743] Fix | Delete
<!--/footer -->
[744] Fix | Delete
</form>
[745] Fix | Delete
<script>
[746] Fix | Delete
/**
[747] Fix | Delete
* Ensure checkboxes are included in the data sent to server
[748] Fix | Delete
* Fixes checkboxes not being saved
[749] Fix | Delete
*/
[750] Fix | Delete
const items=document.querySelectorAll('#themify input[type="checkbox"]');
[751] Fix | Delete
for(var i=items.length-1;i>-1;--i){
[752] Fix | Delete
let name=items[i].getAttribute('name');
[753] Fix | Delete
if(name && (!items[i].previousElementSibling || items[i].previousElementSibling.type!=='hidden')){
[754] Fix | Delete
let hidden=document.createElement('input');
[755] Fix | Delete
hidden.type='hidden';
[756] Fix | Delete
hidden.name=name;
[757] Fix | Delete
items[i].before(hidden);
[758] Fix | Delete
}
[759] Fix | Delete
}
[760] Fix | Delete
</script>
[761] Fix | Delete
<div class="clearBoth"></div>
[762] Fix | Delete
<!-- /html -->
[763] Fix | Delete
[764] Fix | Delete
<?php
[765] Fix | Delete
do_action('themify_settings_panel_end');
[766] Fix | Delete
}
[767] Fix | Delete
[768] Fix | Delete
/**
[769] Fix | Delete
* Return an array of available theme skins
[770] Fix | Delete
*
[771] Fix | Delete
* @since 2.7.8
[772] Fix | Delete
* @return array
[773] Fix | Delete
*/
[774] Fix | Delete
function themify_get_skins(){
[775] Fix | Delete
// Open Styles Folder
[776] Fix | Delete
$dir = trailingslashit( get_template_directory() ) . 'skins';
[777] Fix | Delete
[778] Fix | Delete
$skins = array(
[779] Fix | Delete
1 => array(
[780] Fix | Delete
array(
[781] Fix | Delete
'name' => __( 'Default', 'themify' ),
[782] Fix | Delete
'version' => null,
[783] Fix | Delete
'description' => null,
[784] Fix | Delete
'screenshot' => get_template_directory_uri() . '/themify/img/non-skin.gif',
[785] Fix | Delete
),
[786] Fix | Delete
),
[787] Fix | Delete
);
[788] Fix | Delete
if ( is_dir( $dir ) && ($handle = opendir( $dir ) )) {
[789] Fix | Delete
// Grab Folders
[790] Fix | Delete
while ( false !== ( $dirTwo = readdir($handle) ) ) {
[791] Fix | Delete
if( $dirTwo !== '.' && $dirTwo !== '..' ) {
[792] Fix | Delete
$path = trailingslashit( $dir ) . $dirTwo;
[793] Fix | Delete
if( is_file( $path . '/style.css' ) ) {
[794] Fix | Delete
$info = get_file_data( $path . '/style.css', array( 'Skin Name', 'Version', 'Description', 'Demo URI', 'Required Plugins', 'Display Order' ) );
[795] Fix | Delete
$order = empty( $info[5] ) ? 10 : $info[5];
[796] Fix | Delete
$skins[ $order ][ $dirTwo ] = array(
[797] Fix | Delete
'name' => $info[0],
[798] Fix | Delete
'version' => $info[1],
[799] Fix | Delete
'description' => $info[2],
[800] Fix | Delete
'demo_uri' => $info[3],
[801] Fix | Delete
'required_plugins' => $info[4],
[802] Fix | Delete
);
[803] Fix | Delete
}
[804] Fix | Delete
}
[805] Fix | Delete
}
[806] Fix | Delete
closedir($handle);
[807] Fix | Delete
}
[808] Fix | Delete
ksort( $skins ); // sort skin groups
[809] Fix | Delete
ksort( $skins[10] ); // sort by skin name
[810] Fix | Delete
$skins = call_user_func_array( 'array_merge', $skins );
[811] Fix | Delete
[812] Fix | Delete
return apply_filters( 'themify_theme_skins', $skins );
[813] Fix | Delete
}
[814] Fix | Delete
[815] Fix | Delete
/**
[816] Fix | Delete
* Display the admin field for the theme skins
[817] Fix | Delete
*
[818] Fix | Delete
* @return string
[819] Fix | Delete
*/
[820] Fix | Delete
function themify_get_skins_admin(){
[821] Fix | Delete
$skins = themify_get_skins();
[822] Fix | Delete
$output = '';
[823] Fix | Delete
$template = get_template();
[824] Fix | Delete
$skins_with_demos = current_theme_supports( 'themify-skins-and-demos' );
[825] Fix | Delete
[826] Fix | Delete
if( ! empty( $skins ) ) {
[827] Fix | Delete
$current=themify_get_skin();
[828] Fix | Delete
$canImport = current_user_can('manage_options');
[829] Fix | Delete
$hasDemo=current_user_can('delete_pages') && Themify_Import_Helper::has_demo_content();
[830] Fix | Delete
foreach( $skins as $id => $skin ) {
[831] Fix | Delete
$selected = $current === $id ? 'selected' : '';
[832] Fix | Delete
$screenshot = 0 === $id ? get_template_directory_uri() . '/themify/img/screenshot-na.png' : 'https://themify.org/public-api/screenshots/' . $template . '/' . $id . '/screenshot.jpg';
[833] Fix | Delete
[834] Fix | Delete
if( ($id === 'default' || 0 === $id) &&(!$current || $current==='default')) {
[835] Fix | Delete
$selected = 'selected';
[836] Fix | Delete
}
[837] Fix | Delete
[838] Fix | Delete
$output .= '
[839] Fix | Delete
<div class="skin-preview '. $selected .'" data-skin="'. $id .'">
[840] Fix | Delete
<a href="#"><img src="' . $screenshot . '" alt="' . esc_attr__( 'Skin', 'themify' ) . '" loading="lazy" decoding="async" width="300" height="225" /></a>
[841] Fix | Delete
<br />' . $skin['name'];
[842] Fix | Delete
if(! empty( $skin['demo_uri'] ) ) {
[843] Fix | Delete
$output .= sprintf( ' <span class="view-demo"><a href="%s" target="_blank" rel="noopener">%s</a></span>', $skin['demo_uri'], __( 'demo', 'themify' ) );
[844] Fix | Delete
}
[845] Fix | Delete
if( $skins_with_demos && $canImport) {
[846] Fix | Delete
$output .= '<div class="skin-demo-content" data-skin="' . esc_attr( $id ) . '">';
[847] Fix | Delete
$output .= __( 'Demo:', 'themify' );
[848] Fix | Delete
$output .= ' <a href="#" class="skin-demo-import" data-id="'.esc_attr($id).'" data-plugins="'.esc_attr($skin['required_plugins']).'">' . __( 'Import', 'themify' ).'</a>';
[849] Fix | Delete
if($hasDemo===true){
[850] Fix | Delete
$output.='<a href="#" class="skin-erase-link">' . __( 'Erase', 'themify' ) . '</a>';
[851] Fix | Delete
$output .='<div class="tf_erase_box tf_abs_t tf_hide" tabindex="-1"><label><input type="checkbox" class="tf_modify_demo" id="_tf_modify_demo" checked="checked">'.__('Keep modified posts/pages','themify').'</label><a href="#" class="skin-erase-demo">'.__( 'Erase Demo', 'themify' ).'</a></div>';
[852] Fix | Delete
}
[853] Fix | Delete
$output .= '</div>';
[854] Fix | Delete
}
[855] Fix | Delete
[856] Fix | Delete
$output .= '</div>';
[857] Fix | Delete
}
[858] Fix | Delete
}
[859] Fix | Delete
[860] Fix | Delete
return $output;
[861] Fix | Delete
}
[862] Fix | Delete
[863] Fix | Delete
/**
[864] Fix | Delete
* Create Settings Fieldset
[865] Fix | Delete
*
[866] Fix | Delete
* @param string $title
[867] Fix | Delete
* @param string $module
[868] Fix | Delete
* @param string $attr
[869] Fix | Delete
* @param bool $wrap whether to output the module wrapper
[870] Fix | Delete
*
[871] Fix | Delete
* @return string
[872] Fix | Delete
*/
[873] Fix | Delete
function themify_fieldset( $title = '', $module = '', $attr = '', $wrap = true ) {
[874] Fix | Delete
$data = themify_get_data();
[875] Fix | Delete
$data_param = isset( $data['setting'][$title] )? $data['setting'][$title] : '';
[876] Fix | Delete
if( is_array( $module ) && is_callable( $module ) ) {
[877] Fix | Delete
$function = $module;
[878] Fix | Delete
} else {
[879] Fix | Delete
$function = '';
[880] Fix | Delete
$module = trim( $module );
[881] Fix | Delete
$module = themify_scrub_func( $module );
[882] Fix | Delete
if ( function_exists( 'themify_' . $module ) ) {
[883] Fix | Delete
$function = 'themify_' . $module;
[884] Fix | Delete
} else if ( function_exists( $module ) ) {
[885] Fix | Delete
$function = $module;
[886] Fix | Delete
}
[887] Fix | Delete
if ( '' == $function ) {
[888] Fix | Delete
return '';
[889] Fix | Delete
}
[890] Fix | Delete
}
[891] Fix | Delete
$output = call_user_func( $function, array(
[892] Fix | Delete
'data' => $data_param,
[893] Fix | Delete
'attr' => $attr )
[894] Fix | Delete
);
[895] Fix | Delete
if ( $wrap ) {
[896] Fix | Delete
$tmp_id = is_string( $function ) ? 'id="'. esc_attr( $function ) .'"' : '' ;
[897] Fix | Delete
$output = '<fieldset '.$tmp_id.'><legend><span>' . esc_html( $title ) . '</span><i class="tf_plus_icon"></i></legend><div class="themify_panel_fieldset_wrap">'
[898] Fix | Delete
. $output
[899] Fix | Delete
. '</div></fieldset>';
[900] Fix | Delete
}
[901] Fix | Delete
return $output;
[902] Fix | Delete
}
[903] Fix | Delete
[904] Fix | Delete
[905] Fix | Delete
/**
[906] Fix | Delete
* Get details about a known plugin
[907] Fix | Delete
*
[908] Fix | Delete
* @param $name if omitted, returns the entire list
[909] Fix | Delete
* @since 2.8.6
[910] Fix | Delete
*/
[911] Fix | Delete
function themify_get_known_plugin_info( $name = '' ) {
[912] Fix | Delete
$plugins = array(
[913] Fix | Delete
'builder-ab-image' => array(
[914] Fix | Delete
'name' => __( 'Builder A/B Image', 'themify' ),
[915] Fix | Delete
'image' => 'https://themify.me/wp-content/product-img/addons/ab-image.jpg',
[916] Fix | Delete
'desc' => 'Compare 2 images side by side',
[917] Fix | Delete
'page' => 'https://themify.me/addons/ab-image',
[918] Fix | Delete
'path' => 'builder-ab-image/init.php',
[919] Fix | Delete
),
[920] Fix | Delete
'builder-audio' => array(
[921] Fix | Delete
'name' => __( 'Builder Audio', 'themify' ),
[922] Fix | Delete
'image' => 'https://themify.me/wp-content/product-img/addons/audio.jpg',
[923] Fix | Delete
'desc' => 'Elegant audio playlist',
[924] Fix | Delete
'page' => 'https://themify.me/addons/audio',
[925] Fix | Delete
'path' => 'builder-audio/init.php'
[926] Fix | Delete
),
[927] Fix | Delete
'builder-button' => array(
[928] Fix | Delete
'name' => __( 'Builder Button Pro', 'themify' ),
[929] Fix | Delete
'image' => 'https://themify.me/wp-content/product-img/addons/button.jpg',
[930] Fix | Delete
'desc' => 'Custom designed action buttons',
[931] Fix | Delete
'page' => 'https://themify.me/addons/button',
[932] Fix | Delete
'path' => 'builder-button/init.php'
[933] Fix | Delete
),
[934] Fix | Delete
'builder-contact' => array(
[935] Fix | Delete
'name' => __( 'Builder Contact', 'themify' ),
[936] Fix | Delete
'image' => 'https://themify.me/wp-content/product-img/addons/contact.jpg',
[937] Fix | Delete
'desc' => 'Simple contact form',
[938] Fix | Delete
'page' => 'https://themify.me/addons/contact',
[939] Fix | Delete
'path' => 'builder-contact/init.php'
[940] Fix | Delete
),
[941] Fix | Delete
'builder-countdown' => array(
[942] Fix | Delete
'name' => __( 'Builder Countdown', 'themify' ),
[943] Fix | Delete
'image' => 'https://themify.me/wp-content/product-img/addons/countdown.jpg',
[944] Fix | Delete
'desc' => 'Count down events and promotions',
[945] Fix | Delete
'page' => 'https://themify.me/addons/countdown',
[946] Fix | Delete
'path' => 'builder-countdown/init.php'
[947] Fix | Delete
),
[948] Fix | Delete
'builder-counter' => array(
[949] Fix | Delete
'name' => __( 'Builder Counter', 'themify' ),
[950] Fix | Delete
'image' => 'https://themify.me/wp-content/product-img/addons/counter.jpg',
[951] Fix | Delete
'desc' => 'Animated circles and number counters',
[952] Fix | Delete
'page' => 'https://themify.me/addons/counter',
[953] Fix | Delete
'path' => 'builder-counter/init.php'
[954] Fix | Delete
),
[955] Fix | Delete
'builder-fittext' => array(
[956] Fix | Delete
'name' => __( 'Builder FitText', 'themify' ),
[957] Fix | Delete
'image' => 'https://themify.me/wp-content/product-img/addons/fittext.jpg',
[958] Fix | Delete
'desc' => 'Auto fit text in the container',
[959] Fix | Delete
'page' => 'https://themify.me/addons/fittext',
[960] Fix | Delete
'path' => 'builder-fittext/init.php'
[961] Fix | Delete
),
[962] Fix | Delete
'builder-image-pro' => array(
[963] Fix | Delete
'name' => __( 'Builder Image Pro', 'themify' ),
[964] Fix | Delete
'image' => 'https://themify.me/wp-content/product-img/addons/image-pro.jpg',
[965] Fix | Delete
'desc' => 'Beautify images with image filters, color/image overlay, and animation effects',
[966] Fix | Delete
'page' => 'https://themify.me/addons/image-pro',
[967] Fix | Delete
'path' => 'builder-image-pro/init.php'
[968] Fix | Delete
),
[969] Fix | Delete
'builder-infinite-posts' => array(
[970] Fix | Delete
'name' => __( 'Builder Infinite Posts', 'themify' ),
[971] Fix | Delete
'image' => 'https://themify.me/wp-content/product-img/addons/infinite-posts.jpg',
[972] Fix | Delete
'desc' => 'Display posts in infinite scrolling on parallax, grid, overlay, or list view',
[973] Fix | Delete
'page' => 'https://themify.me/addons/infinite-posts',
[974] Fix | Delete
'path' => 'builder-infinite-posts/init.php'
[975] Fix | Delete
),
[976] Fix | Delete
'builder-bar-chart' => array(
[977] Fix | Delete
'name' => __( 'Builder Bat Chart', 'themify' ),
[978] Fix | Delete
'image' => 'https://themify.me/wp-content/product-img/addons/bar-chart.jpg',
[979] Fix | Delete
'desc' => 'Display bar graphs',
[980] Fix | Delete
'page' => 'https://themify.me/addons/bar-chart',
[981] Fix | Delete
'path' => 'builder-bar-chart/init.php'
[982] Fix | Delete
),
[983] Fix | Delete
'builder-maps-pro' => array(
[984] Fix | Delete
'name' => __( 'Builder Maps Pro', 'themify' ),
[985] Fix | Delete
'image' => 'https://themify.me/wp-content/product-img/addons/maps-pro.jpg',
[986] Fix | Delete
'desc' => 'Multiple markers, custom icons, tooltips, and 40+ map styles',
[987] Fix | Delete
'page' => 'https://themify.me/addons/maps-pro',
[988] Fix | Delete
'path' => 'builder-maps-pro/init.php'
[989] Fix | Delete
),
[990] Fix | Delete
'builder-pie-chart' => array(
[991] Fix | Delete
'name' => __( 'Builder Pie Chart', 'themify' ),
[992] Fix | Delete
'image' => 'https://themify.me/wp-content/product-img/addons/pie-chart.jpg',
[993] Fix | Delete
'desc' => '',
[994] Fix | Delete
'page' => 'https://themify.me/addons/pie-chart',
[995] Fix | Delete
'path' => 'builder-pie-chart/init.php'
[996] Fix | Delete
),
[997] Fix | Delete
'builder-pointers' => array(
[998] Fix | Delete
'name' => __( 'Builder Pointers', 'themify' ),
[999] Fix | Delete
It is recommended that you Edit text format, this type of Fix handles quite a lot in one request
Function