| Server IP : 80.74.154.100 / Your IP : 216.73.217.0 Web Server : Apache System : Linux marissa.metanet.ch 4.18.0-553.141.2.lve.el7h.x86_64 #1 SMP Wed Jul 8 17:20:31 UTC 2026 x86_64 User : onlineadmin ( 10487) PHP Version : 8.5.7 Disable Function : opcache_get_status MySQL : OFF | cURL : ON | WGET : OFF | Perl : OFF | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /home/httpd/vhosts/comeonline.ch/httpdocs/wp-content/plugins/wptouch/admin/js/ |
Upload File : |
/* WPtouch 4 Main Admin js */
// Admin tabs handler
function wptouchSetupAdminMenu(){
var adminMenuArea = jQuery( '#wptouch-admin-menu' );
if ( adminMenuArea.length ) {
adminMenuArea.on( 'click', 'a', function( e ) {
var targetSlug = jQuery( this ).attr( 'data-page-slug' );
jQuery( '.wptouch-settings-sub-page:not(#' + targetSlug + ')' ).hide();
jQuery( '#' + targetSlug ).show();
adminMenuArea.find( 'a' ).removeClass( 'active' );
jQuery( this ).addClass( 'active' );
jQuery.cookie( 'wptouch-4-admin-menu', targetSlug );
e.preventDefault();
});
// Update selected menu item if hash updates.
// This is used when the 'Subscribe to Newsletter' admin notice is clicked
// while already viewing the settings for the WPtouch plugin.
jQuery(window).on('hashchange', function() {
var hash = window.location.hash.replace('#', '');
if ( hash ) {
adminMenuArea.find( 'a.' + hash ).click();
}
});
var menuHandled = 0;
// Check to see if the URL is requesting a specific tab.
var hash = window.location.hash.replace('#', '');
if ( hash ) {
adminMenuArea.find( 'a.' + hash ).click();
menuHandled = 1;
}
// If the URL hash isn't set, check to see if the menu cookie has been set previously.
var previousCookie = jQuery.cookie( 'wptouch-4-admin-menu' );
if ( !menuHandled && previousCookie ) {
if ( jQuery( '#wptouch-admin-menu a.' + previousCookie ).length ) {
menuHandled = 1;
}
}
// If neither of the above, then click the first element.
if ( !menuHandled ) {
adminMenuArea.find( 'a:first' ).click();
}
}
}
function wptouchTooltipSetup() {
jQuery( 'i.wptouch-tooltip' ).tooltip( { placement:'top' } );
}
function wptouchSetupSelects(){
jQuery( '#wptouch-settings-area select' ).select2({
minimumResultsForSearch: '20'
});
}
function wptouchDownloadUploadSettings(){
// Download settings button
var backupButton = jQuery( '#backup-button' );
if ( backupButton.length ) {
backupButton.on( 'click', function( e ) {
var ajaxParams = {};
wptouchAdminAjax( 'prep-settings-download', ajaxParams, function( result ) {
if ( result ) {
var newUrl = WPtouchCustom.plugin_url + '&action=wptouch-download-settings&backup_file=' + result + '&nonce=' + WPtouchCustom.admin_nonce + '&redirect=' + WPtouchCustom.plugin_url;
document.location.href = newUrl;
}
});
e.preventDefault();
});
// Upload settings button
var backupUploader = new AjaxUpload( '#restore-button', {
action: ajaxurl,
allowedExtensions: [ 'txt' ],
debug: false,
data: {
action: 'upload_file',
file_type: 'settings_backup',
wp_nonce: WPtouchCustom.admin_nonce
},
name: 'myfile',
onComplete: function( fileName, response ) {
// Reload the page
wptouchAdminTriggerReload();
}
});
}
}
function WPtouchRefreshCustomIconArea() {
jQuery( 'ul.custom-uploads-display', '#setting-custom_icon_management' ).load( document.location.href + ' #setting-custom_icon_management li' );
}
function wptouchHandleCustomIconUpload() {
if ( jQuery( '.custom-icon-uploader' ).length ) {
var thisUploader = jQuery( '#custom_icon_uploader' );
var thisSpinner = thisUploader.find( '.spinner' );
var iconUploader = new AjaxUpload( '#custom_icon_upload_button', {
action: ajaxurl,
allowedExtensions: [ 'png', 'jpg' ],
debug: false,
data: {
action: 'upload_file',
file_type: 'custom_image',
wp_nonce: WPtouchCustom.admin_nonce
},
name: 'myfile',
onSubmit: function( fileName, extension ) {
thisSpinner.show();
jQuery( '.wpt-spinner', thisUploader ).animate({
opacity: 1
}, 100 );
},
onComplete: function( fileName, response ) {
jQuery( '.wpt-spinner', thisUploader ).animate({
opacity: 0
}, 500 );
WPtouchRefreshCustomIconArea();
},
onCancel: function( id, fileName ) {
jQuery( '.wpt-spinner', thisUploader ).animate({
opacity: 0
}, 500 );
},
showMessage: function( message ) {
// Nothin'
}
});
}
// Handle delete custom Icon
if ( jQuery( 'ul.custom-uploads-display' ).length ) {
jQuery( '#setting-custom_icon_management' ).on( 'click', 'ul.custom-uploads-display li', function( e ) {
var iconName = jQuery( this ).find( 'p.name' ).attr( 'data-name' );
var ajaxParams = {
icon_name: iconName
};
jQuery( this ).fadeOut( 'fast' );
wptouchAdminAjax( 'delete-custom-icon', ajaxParams, function( result ) {
if ( result == 0 ) {
WPtouchRefreshCustomIconArea();
}
});
e.preventDefault();
});
}
// Handle delete fade-in/fade-out
jQuery( 'ul.custom-uploads-display' ).on( 'mouseenter', 'li', function() {
jQuery( this ).find( 'a' ).fadeIn( 'fast' );
}).on( 'mouseleave', 'li', function() {
jQuery( this ).find( 'a' ).fadeOut( 'fast' );
});
// Setup the show/hide for the whole menu icons area based on whether they're used or not
wptouchCheckToggle( '#enable_menu_icons', '#section-admin_menu_icon_sets, #section-admin_menu_icon_upload' );
}
function wptouchHandlePluginCompat() {
var pluginCompatDiv = jQuery( '#plugin-compat-setting .content' );
if ( pluginCompatDiv.length ) {
var ajaxParams = {};
wptouchAdminAjax( 'load-plugin-compat-list', ajaxParams, function( result ) {
pluginCompatDiv.html( result );
});
}
}
// Function that holds toggle settings
function wptouchSetupSettingsToggles() {
wptouchCheckToggle('#enable_custom_post_types', '#section-foundation-web-custom-post-types' );
// General Settings: Analytics
jQuery( '#analytics_embed_method' ).on( 'change', function() {
var google = jQuery( '#setting-analytics_google_id' );
var stats = jQuery( '#setting-custom_stats_code' );
switch( jQuery( this ).val() ) {
case 'simple':
google.slideDown();
stats.hide();
break;
case 'custom':
stats.slideDown();
google.hide();
break;
default:
jQuery( '#setting-analytics_google_id, #setting-custom_stats_code' ).hide();
break;
}
} ).trigger( 'change' );
// General Settings: Filter URLs
jQuery( '#setting-url_filter_behaviour' ).find( 'select' ).on( 'change', function() {
var filteredEls = jQuery( '#setting-filtered_urls, #setting-filtered_urls_exact' );
switch( jQuery( this ).val() ) {
case 'disabled':
filteredEls.hide();
break;
default:
filteredEls.slideDown( 'fast' );
break;
}
} ).trigger( 'change' );
// General Settings: WPtouch Homepage
jQuery( '#setting-homepage_landing' ).find( 'select' ).on( 'change', function() {
var redirectTargetDiv = jQuery( '#setting-homepage_redirect_wp_target' );
var customTargetDiv = jQuery( '#setting-homepage_redirect_custom_target' );
switch( jQuery( this ).val() ) {
case 'none':
redirectTargetDiv.hide();
customTargetDiv.hide();
break;
case 'select':
redirectTargetDiv.show();
customTargetDiv.hide();
break;
case 'custom':
customTargetDiv.show();
redirectTargetDiv.hide();
break;
}
} ).trigger( 'change' );
}
function wptouchLoadUpgradeArea() {
jQuery( 'button#upgrade-to-pro' ).on( 'click', function(){
window.location = jQuery( this ).attr( 'data-target' );
});
var upgrade = jQuery( '#upgrade-area' );
if ( upgrade.length ) {
var ajaxParams = {};
wptouchAdminAjax( 'load-upgrade-area', ajaxParams, function( result ) {
upgrade.html( result );
if ( jQuery( '#license-settings-area' ).length ) {
var goProHref = jQuery( '#upgrade-area .button' ).attr( 'href' );
goProHref = goProHref + '&callback=' + encodeURIComponent( window.location );
jQuery( '#upgrade-area .button' ).attr( 'href', goProHref );
}
});
}
}
function wptouchHandleDownloadIconSets() {
var iconSetArea = jQuery( '#manage-icon-sets' );
if ( iconSetArea.length ) {
var ajaxParams = {};
wptouchAdminAjax( 'get-icon-set-info', ajaxParams, function( result ) {
iconSetArea.html( result );
jQuery( 'ul.manage-sets' ).on( 'click', 'button', function( e ) {
var pressedButton = jQuery( this );
var installURL = jQuery( this ).attr( 'data-install-url' );
var basePath = jQuery( this ).attr( 'data-base-path' );
var loadingText = jQuery( this ).attr( 'data-loading-text' );
var ajaxParams = {
url: installURL,
base: basePath
};
pressedButton.html( loadingText ).addClass( 'disabled' );
wptouchAdminAjax( 'download-icon-set', ajaxParams, function( result ) {
if ( result == '1' ) {
// Succeeded
pressedButton.parent().find( '.installed' ).show();
pressedButton.hide();
} else {
// Failed
pressedButton.parent().find( '.error' ).show();
pressedButton.hide();
}
});
e.preventDefault();
});
});
}
}
function wptouchHandleResetSettings() {
jQuery( '#reset, #erase-settings' ).click( function( e ) {
if ( !confirm( WPtouchCustom.reset_settings ) ) {
e.preventDefault();
}
});
jQuery( '#erase-and-delete' ).click( function( e ) {
if ( !confirm( WPtouchCustom.reset_delete ) ) {
e.preventDefault();
}
});
jQuery( '#erase-delete-deactivate' ).click( function( e ) {
if ( !confirm( WPtouchCustom.reset_delete_deactivate ) ) {
e.preventDefault();
}
});
}
function wptouchThemesAddonsAjaxInstall() {
var canAjaxInstall = typeof new XMLHttpRequest().responseType === 'string';
if ( canAjaxInstall ) {
jQuery( '.cloud-update-issue' ).remove();
jQuery( '#section-updates-available' ).addClass( 'ajax-install' );
}
jQuery( '.action-buttons.no-install, #section-updates-available' ).each( function() {
if ( jQuery( 'a', this ).length == 2 ) {
jQuery( '.activate', this ).hide();
}
if ( canAjaxInstall ) {
jQuery( '.download', this ).text( WPtouchCustom.install ).addClass( 'ajax-install' );
}
});
jQuery( '.action-buttons.no-install' ).on( 'click', 'a.ajax-install', function(e){
if ( jQuery( this ).hasClass( 'theme' ) ) { fileType = 'theme'; } else { fileType = 'extension'; }
downloadLink = jQuery( this ).attr( 'href' );
wptouchAdminAjaxInstall( this, fileType, downloadLink, wptouchEnableDownload, wptouchRemoveAjaxInstall );
e.preventDefault();
});
jQuery( '#section-updates-available' ).on( 'click', 'a.ajax-install', function(e){
if ( jQuery( this ).hasClass( 'theme' ) ) { fileType = 'theme'; } else { fileType = 'extension'; }
downloadLink = jQuery( this ).attr( 'href' );
wptouchAdminAjaxInstall( this, fileType, downloadLink, false, wptouchRemoveAjaxInstall );
e.preventDefault();
});
}
function wptouchEnableDownload( targetButton ) {
jQuery( targetButton ).prev().show().end().remove();
}
function wptouchRemoveAjaxInstall( targetButton ) {
jQuery( targetButton ).removeClass( 'ajax-install' ).text( WPtouchCustom.download );
}
function wptouchLoadThemes() {
jQuery( '#setup-themes-browser' ).on( 'click', 'a.button.install, a.button.upgrade', function( e ) {
var pressedButton = jQuery( this );
var installURL = jQuery( this ).attr( 'data-url' );
var basePath = jQuery( this ).attr( 'data-name' );
var loadingText = jQuery( this ).attr( 'data-loading-text' );
var ajaxParams = {
url: installURL,
base: basePath
};
pressedButton.html( loadingText ).addClass( 'disabled' );
wptouchAdminAjax( 'download-theme', ajaxParams, function( result ) {
ourResult = jQuery.parseJSON( result );
if ( ourResult.status == '1' ) {
// Succeeded
wptouchAdminTriggerReload();
} else {
var str = WPtouchCustom.cloud_download_fail;
alert( str.replace( '%reason%', ourResult.error ) );
}
});
e.preventDefault();
});
}
function wptouchLoadAddons() {
jQuery( '#setup-addons-browser' ).on( 'click', 'a.install, a.upgrade', function( e ) {
var pressedButton = jQuery( this );
var installURL = jQuery( this ).attr( 'data-url' );
var basePath = jQuery( this ).attr( 'data-name' );
var loadingText = jQuery( this ).attr( 'data-loading-text' );
var ajaxParams = {
url: installURL,
base: basePath
};
var oldText = pressedButton.html();
pressedButton.html( loadingText ).addClass( 'disabled' );
wptouchAdminAjax( 'download-addon', ajaxParams, function( result ) {
ourResult = jQuery.parseJSON( result );
if ( ourResult.status == '1' ) {
// Succeeded
location.reload( true );
} else {
var str = WPtouchCustom.cloud_download_fail;
alert( str.replace( '%reason%', ourResult.error ) );
pressedButton.html( loadingText ).removeClass( 'disabled' ).html( oldText );
}
});
e.preventDefault();
});
}
function wptouchHandleMultilineFields() {
var multiLine = jQuery( '.multiline' );
multiLine.on( 'wptouch-rebuild-value', function() {
var values = [];
jQuery( 'li', this ).each( function() {
values.push( jQuery( this ).data( 'text-value' ) );
});
if ( jQuery( this ).hasClass( 'comma' ) ) {
var glue = ',';
} else {
var glue = '\n';
}
jQuery( 'textarea', this ).val( values.join( glue ) );
});
multiLine.find( 'li' ).each( function() {
jQuery( this ).data( 'text-value', jQuery( this ).text() ).append( '<a href="#" class="remove icon-cancel-circled"></a>');
});
multiLine.on( 'click', 'a.remove', function( e ) {
e.preventDefault();
multiline_group = jQuery( this ).parents( '.multiline' );
jQuery( this ).parent().remove();
multiline_group.trigger( 'wptouch-rebuild-value' );
if ( jQuery( 'li', multiline_group ).length == 0 ) {
jQuery( 'ul', multiline_group ).remove();
}
});
multiLine.on( 'click', 'a.add', function( e ) {
e.preventDefault();
new_value = jQuery( this ).siblings( 'input' ).val();
if ( new_value != '' ) {
// create UL if it doesn't exist
parent = jQuery( this ).parents( '.multiline' );
if ( parent.has( 'ul' ).length == 0 ) {
parent.append( '<ul></ul>' );
}
new_element = jQuery( '<li>' + new_value + '<a href="#" class="remove icon-cancel-circled"></a></li>').data( 'text-value', new_value );
jQuery( this ).parents( '.multiline' ).find( 'ul' ).append( new_element );
multiline_group = jQuery( this ).parents( '.multiline' );
multiline_group.trigger( 'wptouch-rebuild-value' );
jQuery( this ).siblings( 'input' ).val( '' );
}
});
// trap enter keys and make them add the item instead of returning on the whole form
jQuery( 'input.add-entry' ).keydown( function( e ) {
if( e.which && e.which == 13 || e.keyCode && e.keyCode == 13 ) {
e.preventDefault();
jQuery( this ).next( 'a.add' ).click();
return false;
}
});
}
function wptouchHandleCustomizerLink() {
jQuery( '#foundation-page-theme-customizer' ).click( 'a', function( e ) {
jQuery.cookie( 'wptouch_customizer_mode', 'mobile', { expires: 0, path: '/' } );
});
}
function wptouchThemesExtensionsPanels(){
// Themes Panels
var themeSlideView = jQuery( '.theme-panels' ).css( 'visibility', 'visible' ).simpleSlideView({
duration: 400,
scrollToContainerTop: false,
easing: 'easeInOutCubic'
});
// Extension Panels
var extensionlideView = jQuery( '.extension-panels' ).css( 'visibility', 'visible' ).simpleSlideView({
duration: 400,
scrollToContainerTop: false,
easing: 'easeInOutQuint'
});
jQuery( 'a.setup-themes-browser' ).on( 'click', function(){
themeSlideView.popView( '#main-theme-panel' );
jQuery( 'html, body' ).animate({ scrollTop: '0' }, 400 );
});
jQuery( 'a.setup-addons-browser' ).on( 'click', function(){
extensionlideView.popView( '#main-extension-panel' );
jQuery( 'html, body' ).animate({ scrollTop: '0' }, 400 );
});
}
function wptouchSetupOldUploaders() {
if ( jQuery( '.uploader' ).length ) {
jQuery( '.uploader' ).each( function() {
var thisUploader = jQuery( this );
var baseId = jQuery( this ).find( 'button.upload' ).parent().attr( 'id' );
var settingName = jQuery( '#' + baseId + '_upload' ).attr( 'data-esn' );
var deleteButton = jQuery( '#' + baseId ).find( 'button.delete' );
var uploader = new AjaxUpload( baseId + '_upload', {
action: ajaxurl,
allowedExtensions: [ 'png' ],
debug: false,
data: {
action: 'upload_file',
file_type: 'homescreen_image',
setting_name: settingName,
wp_nonce: WPtouchCustom.admin_nonce
},
name: 'myfile',
onSubmit: function( fileName, extension ) {
thisUploader.find( '.progress .bar' ).css( 'width', '20%' );
thisUploader.find( '.progress' ).show();
},
onComplete: function( fileName, response ) {
// success
if ( response != 'invalid image' ) {
thisUploader.find( '.progress .bar' ).css( 'width', '100%' );
thisUploader.find( '.progress' ).removeClass( 'bar-fail' ).addClass( 'bar-success' );
setTimeout( function() {
thisUploader.find( '.image-placeholder' ).append( '<img src="' + response + '" />');
deleteButton.fadeIn( 'fast' );
thisUploader.find( '.progress' ).hide();
},
1500 );
} else {
// failed
thisUploader.find( '.progress .bar' ).css( 'width', '50%' );
thisUploader.find( '.progress' ).attr( 'title', WPtouchCustom.upload_invalid );
thisUploader.find( '.progress' ).attr( 'data-original-title', WPtouchCustom.upload_invalid );
thisUploader.find( '.progress' ).removeClass( 'bar-success' ).addClass( 'bar-fail' );
}
//cleanup & reset
setTimeout( function() {
thisUploader.find( '.progress .bar' ).removeClass( 'bar-fail bar-success' );
thisUploader.find( '.progress' )
.attr( 'title', WPtouchCustom.upload_complete )
.attr( 'data-original-title', WPtouchCustom.upload_complete );
},
3500 );
},
onCancel: function( id, fileName ) {},
showMessage: function( message ) {
}
});
jQuery( '#' + baseId + '_upload' ).on( 'click', function( e ) {
jQuery( '#' + baseId + '_spot' ).trigger( 'click' );
e.preventDefault();
});
deleteButton.on( 'click', function( e ) {
var deleteButton = jQuery( this );
var placeHolder = jQuery( this ).parent().find( '.image-placeholder' );
placeHolder.find( 'img' ).remove();
var baseId = jQuery( this ).parent().attr( 'id' );
var settingName = jQuery( '#' + baseId + '_upload' ).attr( 'data-esn' );
var ajaxParams = {
setting_name: settingName
};
wptouchAdminAjax( 'delete-image-upload', ajaxParams, function( result ) {
if ( result == 0 ) {
deleteButton.fadeOut( 'fast' );
}
});
e.preventDefault();
});
});
}
}
function wptouchSetupFreeSettings(){
if ( jQuery( '.wptouch-free' ).length ) {
// Sharing Links on/off
var sharingCheckbox = jQuery( '[id$=show_share]' );
sharingCheckbox.on( 'change', 'input', function(){
if ( jQuery( this ).is( ':checked' ) ) {
sharingCheckbox.nextAll( 'li' ).show();
} else {
sharingCheckbox.nextAll( 'li' ).hide();
}
}).change();
// Featured Slider on/off
var featuredCheckbox = jQuery( '[id$=featured_enabled]' );
var ignoreItems = '#setting-featured_tag, #setting-featured_category, #setting-featured_post_ids';
featuredCheckbox.on( 'change', 'input', function(){
if ( jQuery( this ).is( ':checked' ) ) {
featuredCheckbox.nextAll( 'li' ).not( ignoreItems ).show();
} else {
featuredCheckbox.nextAll( 'li' ).not( ignoreItems ).hide();
}
}).change();
// Featured slider source select
jQuery( '[id$="featured_type"]' ).on( 'change', 'select', function() {
var tagSetting = jQuery( '[id$=featured_tag]' );
var catSetting = jQuery( '[id$=featured_category]' );
var posttySetting = jQuery( '[id$=featured_post_type]' );
var postSetting = jQuery( '[id$=featured_post_ids]' );
switch( jQuery( this ).val() ) {
case 'tag':
tagSetting.show();
catSetting.hide();
posttySetting.hide();
postSetting.hide();
break;
case 'category':
tagSetting.hide();
catSetting.show();
posttySetting.hide();
postSetting.hide();
break;
case 'post_type':
tagSetting.hide();
catSetting.hide();
posttySetting.show();
postSetting.hide();
break;
case 'posts':
tagSetting.hide();
catSetting.hide();
posttySetting.hide();
postSetting.show();
break;
case 'latest':
default:
tagSetting.hide();
catSetting.hide();
posttySetting.hide();
postSetting.hide();
break;
}
}).change();
// Featured Thumbs on/off
var featuredThumb = jQuery( '[id$=use_thumbnails]' );
featuredThumb.on( 'change', 'select', function(){
var thumbType = jQuery( '[id$=thumbnail_type]' );
switch( jQuery( this ).val() ) {
case 'none':
thumbType.hide();
break;
default:
thumbType.show();
break;
}
}).change();
// Featured Thumb Type on/off
var featuredThumbType = jQuery( '[id$=thumbnail_type]' );
featuredThumbType.on( 'change', 'select', function(){
var thumbCustomType = jQuery( '[id$=thumbnail_custom_field]' );
switch( jQuery( this ).val() ) {
case 'custom_field':
thumbCustomType.show();
break;
default:
thumbCustomType.hide();
break;
}
}).change();
}
}
function wptouchAdminMultisite(){
if ( jQuery( '#multisite_deployment_source' ).is( 'select' ) ) {
jQuery( '#multisite-select-all' ).on( 'click', function( e ){
jQuery( '#multisite-deploy-sites input:not(input:disabled)' ).prop( 'checked', 'checked' );
e.preventDefault();
});
jQuery( '#multisite-select-none' ).on( 'click', function( e ){
jQuery( '#multisite-deploy-sites input' ).prop( 'checked', '' );
e.preventDefault();
});
var deployment_modal = jQuery('[data-remodal-id=modal-deployment]').remodal();
jQuery( '#multisite-deploy' ).on( 'click', function( e ){
e.preventDefault();
if ( jQuery( '#multisite-deploy-sites input' ).is( ':checked' ) ) {
jQuery( '.deploy-to-sites' ).show();
jQuery( '.icon-ok-circle, .button-close' ).remove();
jQuery( 'p.deploy-text' ).text( jQuery( 'p.deploy-text' ).attr( 'data-text' ) );
deployment_modal.open();
}
});
jQuery( '#multisite_deployment_source' ).change( function(){
// what's the current selected site?
var currentSite = jQuery( this ).val();
// reset all checkboxes to enabled
jQuery( '#multisite-deploy-sites input' ).attr( 'disabled', false );
// disabled the selected site's checkbox and uncheck it
var destinationSite = jQuery( '#multisite-deploy-sites' ).find( 'input#site-' + currentSite );
destinationSite.prop( 'checked', false ).attr( 'disabled', true );
}).change();
jQuery( '.deploy-to-sites' ).on( 'click', function( e ){
jQuery( this ).hide();
e.preventDefault();
var sourceSite = jQuery( '#multisite_deployment_source' ).val();
var deployGeneral = jQuery( "#multisite_deploy_general_settings" ).is( ":checked" );
var deployCompat = jQuery( "#multisite_deploy_site_compat" ).is( ":checked" );
var deployDevices = jQuery( "#multisite_deploy_devices" ).is( ":checked" );
var deployMenus = jQuery( "#multisite_deploy_menus" ).is( ":checked" );
var deployThemes = jQuery( "#multisite_deploy_themes" ).is( ":checked" );
var deployExtensions = jQuery( "#multisite_deploy_extensions" ).is( ":checked" );
var deployColors = jQuery( "#multisite_deploy_colors" ).is( ":checked" );
var deploySocialMedia = jQuery( "#multisite_deploy_social_media" ).is( ":checked" );
var deploySocialSharing = jQuery( "#multisite_deploy_social_sharing" ).is( ":checked" );
var sites = [];
jQuery( '#multisite-deploy-sites input' ).each( function( index, value ) {
if ( jQuery( this ).is( ":checked" ) ) {
sites.push( jQuery( this ).attr( 'id' ) );
}
});
var ajaxParams = {
source_site: sourceSite,
deploy_general: deployGeneral ? '1' : '0',
deploy_compat: deployCompat ? '1' : '0',
deploy_devices: deployDevices ? '1' : '0',
deploy_menus: deployMenus ? '1' : '0',
deploy_themes: deployThemes ? '1' : '0',
deploy_extensions: deployExtensions ? '1' : '0',
deploy_colors: deployColors ? '1' : '0',
deploy_social_media: deploySocialMedia ? '1' : '0',
deploy_social_sharing: deploySocialSharing ? '1' : '0',
deploy_sites: sites
};
jQuery( 'p.deploy-text' ).text( jQuery( 'p.deploy-text' ).attr( 'data-deploying-text' ) );
wptouchAdminAjax( 'multisite_deploy', ajaxParams, function( result ) {
setTimeout( function(){
jQuery( 'p.deploy-text' )
.text( jQuery( 'p.deploy-text' ).attr( 'data-completed-text' ) )
.prepend( '<i class="icon-ok-circle"></i>' )
.append( '<br /><br /><button class="button button-close" data-remodal-action="cancel">Close</button>' );
}, 1000 );
});
});
}
}
function wptouchControlReturn(){
// Intercept enter key, which strangely causes the first button in the DOM to be pressed
// in our case this might result in a backup file download!
jQuery( 'input' ).keypress( function ( e ) {
if ( ( e.which && e.which == 13 ) || ( e.keyCode && e.keyCode == 13 ) ) {
return false;
}
});
}
// Handy helper function to add Checkbox + target element(s) toggles
function wptouchCheckToggle( checkBox, toggleElements ) {
if ( jQuery( checkBox ).prop( 'checked' ) ) {
jQuery( toggleElements ).show();
} else {
jQuery( toggleElements ).hide();
}
jQuery( checkBox ).on( 'change', function() {
if ( jQuery( checkBox ).prop( 'checked' ) ) {
jQuery( toggleElements ).animate( {
height: 'toggle',
opacity: 'toggle'
}, 230 );
} else {
jQuery( toggleElements ).hide();
}
});
}
function wptouchUpdateAll() {
jQuery( '#setting-theme-extension-updates-available' ).on( 'click', 'button', function( e ) {
e.preventDefault();
jQuery( this ).text( jQuery( this ).attr( 'data-loading-text' ) ).attr( 'disabled', true ).addClass( 'disabled' );
wptouchAdminAjax( 'update-themes-addons', {}, function( result ) {
ourResult = jQuery.parseJSON( result );
if ( ourResult.status == '1' ) {
// Succeeded
location.reload( true );
} else {
var str = WPtouchCustom.cloud_download_fail;
alert( str.replace( '%reason%', ourResult.error ) );
jQuery( this ).attr( 'disabled', false ).removeClass( 'disabled' );
}
});
});
}
function wptouchAddPlaceholders(){
jQuery( '#wptouch-settings-content input[type="text"]' ).not( '#license-settings-area input[type="text"]' ).each( function(){
var placeholder = jQuery( this ).parents( 'li' ).find( 'span' ).not( '.pro' ).text();
jQuery( this ).attr( 'placeholder', placeholder );
});
}
function wptouchTriggerSave( callback ) {
// Will stop reloads during saving
var saving = true;
window.onbeforeunload = function(){
if ( saving ) {
return WPtouchCustom.saving_settings;
}
};
// Animate the admin spinner in
jQuery( '#admin-spinner' ).animate({
opacity: 1
}, 330 );
jQuery.ajax( {
method: 'POST',
data: 'wptouch-submit-3=1&' + jQuery( '#wptouch-settings-form' ).serialize(),
success: function() {
// Done saving, allow reload
saving = false;
// Animate the admin spinner out
jQuery( '#admin-spinner' ).animate({
opacity: 0
}, 330 );
if ( typeof( callback ) !== 'undefined' ) {
callback();
return false;
}
},
cache: false
});
}
function wptouchAdminSetupSave(){
var wptouchAdminForm = jQuery( '#wptouch-settings-form' );
if ( wptouchAdminForm.length ) {
// text inputs, debounced to save after 250 millisecond delay
var debounceSave = wptouchAdminDebounce( function(){
if ( !jQuery( this ).hasClass( 'no-save' ) ){
wptouchTriggerSave();
}
}, 1000 );
jQuery( window ).load( function(){
// Toggles, textareas & selects
wptouchAdminForm.on( 'change.autosave keyup.autosave', 'input[type="checkbox"]:not(.no-save):not(#translate_admin):not(#multisite_control):not(#wptouch-addon-deployment input), textarea, select:not(#force_locale):not(#force_network_locale):not(#wptouch-addon-deployment select), input[type="text"]:not(.add-entry,.license-inputs)', debounceSave );
// Multiline / Newline
jQuery( '.multiline' ).on( 'click', 'a.add, a.remove', debounceSave );
});
}
// Handle special case of saving setting relatedto the admin language
var languageSelect = jQuery( '#force_locale, #force_network_locale' );
var languageInAdmin = jQuery( '#translate_admin' );
var networkControl = jQuery( '#multisite_control' );
languageSelect.on( 'change', function(){
if ( languageInAdmin.is( ':checked' ) ) {
wptouchTriggerSave( wptouchAdminTriggerReload );
} else {
wptouchTriggerSave();
}
});
languageInAdmin.on( 'change', function(){
wptouchTriggerSave( wptouchAdminTriggerReload );
});
networkControl.on( 'change', function(){
wptouchTriggerSave( wptouchAdminTriggerReload );
});
}
function wptouchAdminTriggerReload(){
// Reload and refresh the cache
window.location.reload();
}
function wptouchAdminDebounce( func, wait, immediate ) {
var timeout;
return function() {
var context = this, args = arguments;
var later = function() {
timeout = null;
if ( !immediate ) func.apply( context, args );
};
var callNow = immediate && !timeout;
clearTimeout( timeout );
timeout = setTimeout( later, wait );
if ( callNow ) func.apply( context, args );
};
};
function showPreviewWindow(){
var width = '375', height = '667';
topPosition = ( screen.height ) ? ( screen.height - height ) / 2:0;
leftPosition = ( screen.width ) ? ( screen.width - width ) / 2:0;
options = 'scrollbars=no, titlebar=no, status=no, menubar=no';
previewUrl = jQuery( 'input#wptouch-preview-theme' ).attr( 'data-url' );
wptouchPreviewWindow = window.open( previewUrl, 'preview', 'width=' + width + ', height=' + height + ',' + options + ', top=' + topPosition + ',left=' + leftPosition + '' );
}
function showCustomizerWindow(){
var width = '800', height = '500';
topPosition = ( screen.height ) ? ( screen.height - height ) / 2:0;
leftPosition = ( screen.width ) ? ( screen.width - width ) / 2:0;
options = 'scrollbars=no, titlebar=no, status=no, menubar=no';
windowUrl = '//wptouch-pro-4.s3.amazonaws.com/free/free-customizer-promo.html';
wptouchCustomizerWindow = window.open( windowUrl, 'customizermsg', 'width=' + width + ', height=' + height + ',' + options + ', top=' + topPosition + ',left=' + leftPosition + '' );
}
// The Preview Pop-Up Window
function wptouchPreviewWindow(){
jQuery( 'input#wptouch-preview-theme' ).on( 'click', function( e ) {
showPreviewWindow();
e.preventDefault();
});
}
function wptouchCreateForm() {
var $ = jQuery,
$formSubmit = $( '.js-form-submit' );
$formSubmit.click( function(event) {
event.preventDefault();
var $createForm = $( this ).parents( '.js-create-form' ),
$createdForm = $( '<form></form>' ).hide(),
valid = true;
$createForm.find( '.js-required' ).each( function( index, item ) {
var $this = $( item );
if ( '' === $this.val() ) {
$this.css( { 'border' : '1px solid red' } );
valid = false;
}
} );
if (! valid) {
return;
}
$createdForm.attr( 'action', $createForm.data( 'form-action' ) );
$createdForm.attr( 'method', $createForm.data( 'form-method' ) );
$createdForm.html( $createForm.clone() );
$('body').append( $createdForm );
$createdForm.submit();
} );
}
function wptouchAdminReady() {
wptouchDownloadUploadSettings();
wptouchSetupAdminMenu();
wptouchTooltipSetup();
wptouchSetupSelects();
wptouchAddPlaceholders();
wptouchHandleCustomIconUpload();
wptouchHandlePluginCompat();
wptouchLoadUpgradeArea();
wptouchHandleDownloadIconSets();
wptouchLoadThemes();
wptouchUpdateAll();
wptouchLoadAddons();
wptouchHandleMultilineFields();
wptouchHandleCustomizerLink();
wptouchThemesExtensionsPanels();
wptouchHandleResetSettings();
wptouchAdminMultisite();
wptouchControlReturn();
wptouchSetupOldUploaders();
wptouchSetupFreeSettings();
wptouchSetupSettingsToggles();
wptouchAdminSetupSave();
wptouchThemesAddonsAjaxInstall();
wptouchPreviewWindow();
wptouchCreateForm();
}
jQuery( document ).ready( function() {
wptouchAdminReady();
jQuery("a:contains('Upgrade to Pro')").parent('li').addClass('wptouch-submenu-highlight');
});