0byt3m1n1
Path:
/
var
/
www
/
clients
/
client38
/
web37
/
web
/
wp-content
/
plugins
/
tablepress
/
admin
/
js
/
[
Home
]
File: export.js
/** * JavaScript code for the "Export" screen * * @package TablePress * @subpackage Views JavaScript * @author Tobias Bäthge * @since 1.0.0 */ jQuery( function( $ ) { 'use strict'; /** * Check, whether inputs are valid * * @since 1.0.0 */ $( '#tablepress-page' ).find( 'form' ).on( 'submit', function( /* event */ ) { var selected_tables = $( '#tables-export' ).val(), num_selected = ( selected_tables ) ? selected_tables.length : 0; // only submit form, if at least one table was selected if ( 0 === num_selected ) { return false; } // at this point, the form is valid and will be submitted // add selected tables as a list to a hidden field $( '#tables-export-list' ).val( selected_tables.join( ',' ) ); // on form submit: Enable disabled fields, so that they are transmitted in the POST request $( '#tables-export-zip-file' ).prop( 'disabled', false ); } ); /** * Show export delimiter dropdown box only if export format is CSV * * @since 1.0.0 */ $( '#tables-export-format' ).on( 'change', function() { var non_csv_selected = ( 'csv' !== $(this).val() ); $( '#tables-export-csv-delimiter' ).prop( 'disabled', non_csv_selected ); $( '#tables-export-csv-delimiter-description' ).toggle( non_csv_selected ); } ) .trigger( 'change' ); /** * Automatically check and disable the "ZIP file" checkbox whenever more than one table is selected * * @since 1.0.0 */ var zip_file_manually_checked = false; $( '#tables-export-zip-file' ).on( 'change', function() { zip_file_manually_checked = $(this).prop( 'checked' ); } ); $( '#tables-export' ).on( 'change', function() { var selected_tables = $(this).val(), num_selected = ( selected_tables ) ? selected_tables.length : 0, zip_file_required = ( num_selected > 1 ); $( '#tables-export-zip-file' ) .prop( 'disabled', zip_file_required ) .prop( 'checked', zip_file_required || zip_file_manually_checked ); $( '#tables-export-zip-file-description' ).toggle( zip_file_required ); // set state of "Select all" checkbox $( '#tables-export-select-all' ).prop( 'checked', 0 === $(this).find( 'option' ).not( ':selected' ).length ); } ) .trigger( 'change' ); /** * Select all entries from the multiple-select dropdown on checkbox change * * @since 1.0.0 */ $( '#tables-export-select-all' ).on( 'change', function() { var $tables = $( '#tables-export' ); $tables.find( 'option' ).prop( 'selected', $(this).prop( 'checked' ) ); $tables.trigger( 'change' ); // to update ZIP file checkbox } ); /** * Automatically focus the tables dropdown * * @since 1.0.0 */ $( '#tables-export' ).trigger( 'focus' ); } );