jQuery( document ).ready( function( $ ) { // COLOR SCHEMES (Display) var customColorRow = $(".custom_color_row"); var presetSamples = $(".preset_samples"); var _class, k, i; $('select[name="color_set"]').change(function () { var n = $(this).val(); if (n == 0) { customColorRow.show(); presetSamples.hide(); } else { customColorRow.hide(); presetSamples.show(); for ( i in app_i10n.classes ) { if ( app_i10n.classes.hasOwnProperty( i ) ) { _class = []; for ( k = 1; k <= 3; k++ ) { _class[ k ] = app_i10n.presets[i][k]; } presetSamples.find("a." + i).css("background-color", "#" + _class[n]); } } } }); var colorpicker = $('.colorpicker_input'); colorpicker.each(function () { var id = this.id; $('#' + id).ColorPicker({ onSubmit: function (hsb, hex, rgb, el) { $(el).val(hex); $(el).ColorPickerHide(); }, onBeforeShow: function () { $(this).ColorPickerSetColor(this.value); }, onChange: function (hsb, hex, rgb) { var element = $('#' + id); element.val(hex); element.parent().find('a.pickcolor').css('background-color', '#' + hex); } }) .bind('keyup', function () { $(this).ColorPickerSetColor(this.value); }); }); colorpicker.keyup(function () { var a = $(this).val(); a = a.replace(/[^a-fA-F0-9]/, ''); if (a.length === 3 || a.length === 6) $(this).parent().find('a.pickcolor').css('background-color', '#' + a); }); /** * Check Services Provided on Appointments Settings page */ $('#app-settings-section-new-worker form.add-new-service-provider').on( "submit", function() { var form = $(this); if( null == $("#services_provided", form).val()) { alert( app_i10n.messages.select_service_provider); return false; } }); /** * Create a page */ $('.appointment-create-page a.button').on( 'click', function() { var value = $('select', $(this).closest('td') ).val(); var data = { action: $(this).data('action'), _wpnonce: $(this).data('nonce'), app_page_type: value }; $.post(ajaxurl, data, function(response) { var html = '

'+response.data.message+'

'; $('.appointments-settings h1').after(html); }); return false; }); /** * Delete helper * * @since 2.3.0 */ function appointments_delete_helper( data, parent ) { $.post( ajaxurl, data, function( response ) { if ( response.success ) { parent.detach(); } var html = '

'+response.data.message+'

'; $('.appointments-settings h1').after(html); }); } /** * handle delete services * * @since 2.2.6 */ $(document).on('click', '.wp-list-table.services .delete a', function() { if ( window.confirm( app_i10n.messages.service.delete_confirmation ) ) { var parent = $(this).closest('tr'); var data = { 'action': 'delete_service', 'nonce': $(this).data('nonce'), 'id': $(this).data('id') }; appointments_delete_helper( data, parent ); } }); /** * handle bulk action Services * * @since 2.3.0 */ $(document).on('click', '#app-settings-section-services input.action', function() { var parent = $(this).closest('form'); var list = $('.check-column input:checked'); var action = $('select', $(this).parent() ).val(); if ( 0 === list.length ) { window.alert( app_i10n.messages.bulk_actions.no_items ); return false; } if ( '-1' === action ) { window.alert( app_i10n.messages.bulk_actions.no_action ); return false; } if ( !window.confirm( app_i10n.messages.services.delete_confirmation ) ) { return false; } }); /** * handle delete service provider * * @since 2.2.6 */ $(document).on('click', '.wp-list-table.workers .delete a', function() { if ( window.confirm( app_i10n.messages.workers.delete_confirmation ) ) { var parent = $(this).closest('tr'); var data = { 'action': 'delete_worker', 'nonce': $(this).data('nonce'), 'id': $(this).data('id') }; appointments_delete_helper( data, parent ); } }); /** * handle bulk action workers * * @since 2.3.0 */ $(document).on('click', '#app-settings-section-workers input.action', function() { var parent = $(this).closest('form'); var list = $('.check-column input:checked'); var action = $('select', $(this).parent() ).val(); if ( 0 === list.length ) { window.alert( app_i10n.messages.bulk_actions.no_items ); return false; } if ( '-1' === action ) { window.alert( app_i10n.messages.bulk_actions.no_action ); return false; } if ( !window.confirm( app_i10n.messages.workers.delete_confirmation ) ) { return false; } }); /** * Slider widget * * @since 2.3.2 */ if ( $.fn.slider ) { $('div.app-ui-slider').each( function() { var id = $(this).data('target-id'); if ( id ) { var target = $('#'+id); var value = target.val(); var max = $(this).data('max') || 100; var min = $(this).data('min') || 0; $(this).slider({ value: value, min: min, max: max, slide: function( event, ui ) { target.val( ui.value ); } }); } }); } /** * add tab to request "hidden-columns". * * @since 2.4.0 */ columns.saveManageColumnsState = function() { var hidden = this.hidden(); $.post(ajaxurl, { action: 'hidden-columns', hidden: hidden, screenoptionnonce: $('#screenoptionnonce').val(), page: pagenow, tab: $('input[name=app-current-tab]').val() }); }; });