File "slim.js"

Full Path: /home/theinspectionboy/public_html/suffolk/assets/slim.js
File size: 11.34 KB
MIME-type: text/plain
Charset: utf-8

jQuery(document).ready(function($) {
	// Back-end processing...
	$('#swis-slim-rules').on('click', '.swis-slim-rule-actions .button-link-edit', function() {
		var swis_slim_container = $(this).closest('.swis-slim-rule');
		swis_slim_container.find('.swis-slim-rule-actions').hide();
		swis_slim_container.find('.swis-slim-pretty-rule').hide();
		swis_slim_container.find('.swis-slim-hidden').show();
	});
	$('#swis-slim-rules').on('click', '.swis-slim-rule-save', function() {
		var swis_slim_container = $(this).closest('.swis-slim-rule');
		var swis_slim_rule_id = swis_slim_container.attr('data-slim-rule-id');
		var error_container = swis_slim_container.find('.swis-slim-error-message');
		error_container.hide();
                var swis_slim_handle = swis_slim_container.attr('data-slim-handle');
		var swis_slim_button_text = $(this).text();
		var swis_slim_button = $(this);
		swis_slim_button.text(swisperformance_vars.saving_message);
		swis_slim_button.prop('disabled', true);
		var swis_slim_rule_data = {
			action: 'swis_slim_rule_edit',
			swis_slim_action: 'update',
			swis_wpnonce: swisperformance_vars._wpnonce,
			swis_slim_handle: swis_slim_handle,
			swis_slim_exclusions: swis_slim_container.find('.swis-slim-raw-rule input').val(),
			swis_slim_mode: swis_slim_container.find('input[name=swis_slim_mode_' + swis_slim_rule_id + ']:checked').val(),
		};
		console.log(swis_slim_rule_data);
		$.post(ajaxurl, swis_slim_rule_data, function(response) {
			try {
				var swis_response = JSON.parse(response);
			} catch ( err ) {
				error_container.html(swisperformance_vars.invalid_response);
				error_container.show();
				console.log(err);
				console.log(response);
				swis_slim_button.text(swis_slim_button_text);
				swis_slim_button.prop('disabled', false);
				return false;
			}
			if (swis_response.success) {
				swis_slim_container.replaceWith(swis_response.message);
			} else {
				error_container.html(swis_response.error);
				error_container.show();
				swis_slim_button.text(swis_slim_button_text);
				swis_slim_button.prop('disabled', false);
			}
		});
		return false;
	});
	$('#swis-slim-rules').on('click', '.swis-slim-rule-actions .button-link-delete', function() {
		var swis_slim_container = $(this).closest('.swis-slim-rule');
		var error_container = swis_slim_container.find('.swis-slim-error-message');
		error_container.hide();
                var swis_slim_handle = swis_slim_container.attr('data-slim-handle');
		var swis_slim_button_text = $(this).text();
		var swis_slim_button = $(this);
                var really_remove = confirm(swisperformance_vars.remove_rule);
		if (really_remove) {
			swis_slim_button.text(swisperformance_vars.removing_message);
			swis_slim_button.prop('disabled', true);
			var swis_slim_rule_data = {
				action: 'swis_slim_rule_edit',
				swis_slim_action: 'delete',
				swis_wpnonce: swisperformance_vars._wpnonce,
				swis_slim_handle: swis_slim_handle,
			};
			console.log(swis_slim_rule_data);
			$.post(ajaxurl, swis_slim_rule_data, function(response) {
				try {
					var swis_response = JSON.parse(response);
				} catch ( err ) {
					error_container.html(swisperformance_vars.invalid_response);
					error_container.show();
					console.log(err);
					console.log(response);
					swis_slim_button.text(swis_slim_button_text);
					swis_slim_button.prop('disabled', false);
					return false;
				}
				if (swis_response.success) {
					swis_slim_container.fadeOut('slow').remove();
				} else {
					error_container.html(swis_response.error);
					error_container.show();
					swis_slim_button.text(swis_slim_button_text);
					swis_slim_button.prop('disabled', false);
				}
			});
		}
		return false;
	});
	$('#swis-slim-add-rule .swis-slim-rule-add').on('click', function() {
		var swis_slim_container = $(this).closest('#swis-slim-add-rule');
		var error_container = swis_slim_container.find('.swis-slim-error-message');
		error_container.hide();
		var swis_slim_button_text = $(this).text();
		var swis_slim_button = $(this);
		swis_slim_button.text(swisperformance_vars.saving_message);
		swis_slim_button.prop('disabled', true);
		var swis_slim_rule_data = {
			action: 'swis_slim_rule_edit',
			swis_slim_action: 'create',
			swis_wpnonce: swisperformance_vars._wpnonce,
			swis_slim_handle: $('#swis_slim_new_handle').val(),
			swis_slim_exclusions: $('#swis_slim_new_exclusions').val(),
			swis_slim_mode: $("input[name='swis_slim_new_mode']:checked").val(),
		};
		console.log(swis_slim_rule_data);
		$.post(ajaxurl, swis_slim_rule_data, function(response) {
			try {
				var swis_response = JSON.parse(response);
			} catch ( err ) {
				error_container.html(swisperformance_vars.invalid_response);
				error_container.show();
				console.log(err);
				console.log(response);
				swis_slim_button.text(swis_slim_button_text);
				swis_slim_button.prop('disabled', false);
				return false;
			}
			if (swis_response.success) {
				$('#swis-slim-rules').append(swis_response.message);
				$('#swis_slim_new_handle').val('');
				$('#swis_slim_new_exclusions').val('');
				$('#swis_slim_new_mode_all').prop('checked', true);
			} else {
				error_container.html(swis_response.error);
				error_container.show();
			}
			swis_slim_button.text(swis_slim_button_text);
			swis_slim_button.prop('disabled', false);
		});
		return false;
	});
	// Front-end processing...
	$('.swis-slim-assets').on('click', '.swis-slim-rule-customize', function() {
		var swis_slim_container = $(this).closest('.swis-slim-rule');
		swis_slim_container.find('input[type=text]').show();
		swis_slim_container.find('label').show();
		$(this).hide();
	});
	$('.swis-slim-assets').on('click', '.swis-slim-rule-actions .button-link-edit', function() {
		var swis_slim_container = $(this).closest('.swis-slim-rule');
		swis_slim_container.find('.swis-slim-rule-actions').hide();
		swis_slim_container.find('.swis-slim-pretty-rule').hide();
		swis_slim_container.find('.swis-slim-hidden').show();
	});
	$('.swis-slim-assets').on('click', '.swis-slim-rule-add', function() {
		var swis_slim_container = $(this).closest('.swis-slim-rule');
		var swis_slim_rule_id = swis_slim_container.attr('data-slim-rule-id');
		var error_container = swis_slim_container.find('.swis-slim-error-message');
		error_container.hide();
                var swis_slim_handle = swis_slim_container.attr('data-slim-handle');
		var swis_slim_button_text = $(this).text();
		var swis_slim_button = $(this);
		swis_slim_button.text(swisperformance_vars.saving_message);
		swis_slim_button.prop('disabled', true);
		var swis_slim_rule_data = {
			action: 'swis_slim_rule_edit',
			swis_slim_action: 'create',
			swis_wpnonce: swisperformance_vars._wpnonce,
			swis_slim_current_page: $('#swis-slim-current-page').text(),
			swis_slim_handle: swis_slim_handle,
			swis_slim_exclusions: swis_slim_container.find('.swis-slim-raw-rule input').val(),
			swis_slim_mode: swis_slim_container.find('input[name=swis_slim_mode_' + swis_slim_rule_id + ']:checked').val(),
			swis_slim_frontend: 1,
		};
		console.log(swis_slim_rule_data);
		$.post(swisperformance_vars.ajaxurl, swis_slim_rule_data, function(response) {
			try {
				var swis_response = JSON.parse(response);
			} catch ( err ) {
				error_container.html(swisperformance_vars.invalid_response);
				error_container.show();
				console.log(err);
				console.log(response);
				swis_slim_button.text(swis_slim_button_text);
				swis_slim_button.prop('disabled', false);
				return false;
			}
			if (swis_response.success) {
				swis_slim_container.closest('tr').find('.swis-slim-asset-status').html(swis_response.status);
				swis_slim_container.replaceWith(swis_response.message);
			} else {
				error_container.html(swis_response.error);
				error_container.show();
				swis_slim_button.text(swis_slim_button_text);
				swis_slim_button.prop('disabled', false);
			}
		});
		return false;
	});
	$('.swis-slim-assets').on('click', '.swis-slim-rule-save', function() {
		var swis_slim_container = $(this).closest('.swis-slim-rule');
		var swis_slim_rule_id = swis_slim_container.attr('data-slim-rule-id');
		var error_container = swis_slim_container.find('.swis-slim-error-message');
		error_container.hide();
                var swis_slim_handle = swis_slim_container.attr('data-slim-handle');
		var swis_slim_button_text = $(this).text();
		var swis_slim_button = $(this);
		swis_slim_button.text(swisperformance_vars.saving_message);
		swis_slim_button.prop('disabled', true);
		var swis_slim_rule_data = {
			action: 'swis_slim_rule_edit',
			swis_slim_action: 'update',
			swis_wpnonce: swisperformance_vars._wpnonce,
			swis_slim_current_page: $('#swis-slim-current-page').text(),
			swis_slim_handle: swis_slim_handle,
			swis_slim_exclusions: swis_slim_container.find('.swis-slim-raw-rule input').val(),
			swis_slim_mode: swis_slim_container.find('input[name=swis_slim_mode_' + swis_slim_rule_id + ']:checked').val(),
			swis_slim_frontend: 1,
		};
		console.log(swis_slim_rule_data);
		$.post(swisperformance_vars.ajaxurl, swis_slim_rule_data, function(response) {
			try {
				var swis_response = JSON.parse(response);
			} catch ( err ) {
				error_container.html(swisperformance_vars.invalid_response);
				error_container.show();
				console.log(err);
				console.log(response);
				swis_slim_button.text(swis_slim_button_text);
				swis_slim_button.prop('disabled', false);
				return false;
			}
			if (swis_response.success) {
				swis_slim_container.closest('tr').find('.swis-slim-asset-status').html(swis_response.status);
				swis_slim_container.replaceWith(swis_response.message);
			} else {
				error_container.html(swis_response.error);
				error_container.show();
				swis_slim_button.text(swis_slim_button_text);
				swis_slim_button.prop('disabled', false);
			}
		});
		return false;
	});
	$('.swis-slim-assets').on('click', '.button-link-delete', function() {
		var swis_slim_container = $(this).closest('.swis-slim-rule');
		var error_container = swis_slim_container.find('.swis-slim-error-message');
		error_container.hide();
                var swis_slim_handle = swis_slim_container.attr('data-slim-handle');
		var swis_slim_button_text = $(this).text();
		var swis_slim_button = $(this);
                var really_remove = confirm(swisperformance_vars.remove_rule);
		if (really_remove) {
			swis_slim_button.text(swisperformance_vars.removing_message);
			swis_slim_button.prop('disabled', true);
			var swis_slim_rule_data = {
				action: 'swis_slim_rule_edit',
				swis_slim_action: 'delete',
				swis_wpnonce: swisperformance_vars._wpnonce,
				swis_slim_current_page: $('#swis-slim-current-page').text(),
				swis_slim_handle: swis_slim_handle,
				swis_slim_frontend: 1,
			};
			console.log(swis_slim_rule_data);
			$.post(swisperformance_vars.ajaxurl, swis_slim_rule_data, function(response) {
				try {
					var swis_response = JSON.parse(response);
				} catch ( err ) {
					error_container.html(swisperformance_vars.invalid_response);
					error_container.show();
					console.log(err);
					console.log(response);
					swis_slim_button.text(swis_slim_button_text);
					swis_slim_button.prop('disabled', false);
					return false;
				}
				if (swis_response.success) {
					swis_slim_container.closest('tr').find('.swis-slim-asset-status').html(swis_response.status);
					swis_slim_container.replaceWith(swis_response.message);
				} else {
					error_container.html(swis_response.error);
					error_container.show();
					swis_slim_button.text(swis_slim_button_text);
					swis_slim_button.prop('disabled', false);
				}
			});
		}
		return false;
	});
});