LittleDemon WebShell


Linux hkvL61zh9Vexzf 3.10.0-957.1.3.el7.x86_64 #1 SMP Thu Nov 29 14:49:43 UTC 2018 x86_64
Path : /www/wwwroot/fashion-kingdom.com/wp-content/plugins/kitify/assets/js/
File Upload :
Command :
Current File : /www/wwwroot/fashion-kingdom.com/wp-content/plugins/kitify/assets/js/kitify-admin-vue-components.js

'use strict';

Vue.component( 'kitify-general-settings', {

	template: '#kitify-dashboard-kitify-general-settings',

	data: function() {
		return {
			pageOptions: window.KitifySettingsConfig.settingsData,
			preparedOptions: {},
			savingStatus: false,
			ajaxSaveHandler: null,
		};
	},

	watch: {
		pageOptions: {
			handler( options ) {
				let prepared = {};

				for ( let option in options ) {

					if ( options.hasOwnProperty( option ) ) {
						prepared[ option ] = options[option]['value'];
					}
				}

				this.preparedOptions = prepared;
				this.saveOptions();
			},
			deep: true
		}
	},

	methods: {

		updateSetting: function ( value, setting ){
			this.preparedOptions[setting] = value;
			this.saveOptions();
		},

		saveOptions: function() {

			var self = this;

			self.savingStatus = true;

			self.ajaxSaveHandler = jQuery.ajax( {
				type: 'POST',
				headers: {
					'X-WP-Nonce': wpApiSettings.nonce,
				},
				url: window.KitifySettingsConfig.settingsApiUrl,
				dataType: 'json',
				data: self.preparedOptions,
				beforeSend: function( jqXHR, ajaxSettings ) {

					if ( null !== self.ajaxSaveHandler ) {
						self.ajaxSaveHandler.abort();
					}
				},
				success: function( responce, textStatus, jqXHR ) {
					self.savingStatus = false;

					if ( 'success' === responce.status ) {
						self.$CXNotice.add( {
							message: responce.message,
							type: 'success',
							duration: 3000,
						} );
					}

					if ( 'error' === responce.status ) {
						self.$CXNotice.add( {
							message: responce.message,
							type: 'error',
							duration: 3000,
						} );
					}
				}
			} );
		},
	}
} );

Vue.component( 'kitify-integrations-settings', {

	template: '#kitify-dashboard-kitify-integrations-settings',

	data: function() {
		return {
			pageOptions: window.KitifySettingsConfig.settingsData,
			preparedOptions: {},
			savingStatus: false,
			ajaxSaveHandler: null,
		};
	},

	watch: {
		pageOptions: {
			handler( options ) {
				let prepared = {};

				for ( let option in options ) {

					if ( options.hasOwnProperty( option ) ) {
						prepared[ option ] = options[option]['value'];
					}
				}

				this.preparedOptions = prepared;

				this.saveOptions();
			},
			deep: true
		}
	},

	methods: {

		saveOptions: function() {

			var self = this;

			self.savingStatus = true;

			self.ajaxSaveHandler = jQuery.ajax( {
				type: 'POST',
				headers: {
					'X-WP-Nonce': wpApiSettings.nonce,
				},
				url: window.KitifySettingsConfig.settingsApiUrl,
				dataType: 'json',
				data: self.preparedOptions,
				beforeSend: function( jqXHR, ajaxSettings ) {

					if ( null !== self.ajaxSaveHandler ) {
						self.ajaxSaveHandler.abort();
					}
				},
				success: function( responce, textStatus, jqXHR ) {
					self.savingStatus = false;

					if ( 'success' === responce.status ) {
						self.$CXNotice.add( {
							message: responce.message,
							type: 'success',
							duration: 3000,
						} );
					}

					if ( 'error' === responce.status ) {
						self.$CXNotice.add( {
							message: responce.message,
							type: 'error',
							duration: 3000,
						} );
					}
				}
			} );
		},
	}
} );

Vue.component( 'kitify-avaliable-addons', {

	template: '#kitify-dashboard-kitify-avaliable-addons',

	data: function() {
		return {
			pageOptions: window.KitifySettingsConfig.settingsData,
			preparedOptions: {},
			savingStatus: false,
			ajaxSaveHandler: null,
			shouldReload: false,
		};
	},

	watch: {
		pageOptions: {
			handler( options ) {
				let prepared = {};

				for ( let option in options ) {

					if ( options.hasOwnProperty( option ) ) {
						prepared[ option ] = options[option]['value'];
					}
				}
				this.preparedOptions = prepared;
				this.saveOptions();
			},
			deep: true
		}
	},

	methods: {

		updateSetting: function ( value, settings, root_key, model ){
			if( ['portfolio_content_type', 'event_content_type', 'album_content_type'].includes(settings) ){
				this.shouldReload = true;
			}
			model[settings] = value;
			this.preparedOptions[root_key] = model;
			this.saveOptions();
		},

		saveOptions: function() {

			var self = this;

			self.savingStatus = true;

			self.ajaxSaveHandler = jQuery.ajax( {
				type: 'POST',
				headers: {
					'X-WP-Nonce': wpApiSettings.nonce,
				},
				url: window.KitifySettingsConfig.settingsApiUrl,
				dataType: 'json',
				data: self.preparedOptions,
				beforeSend: function( jqXHR, ajaxSettings ) {

					if ( null !== self.ajaxSaveHandler ) {
						self.ajaxSaveHandler.abort();
					}
				},
				success: function( responce, textStatus, jqXHR ) {
					self.savingStatus = false;

					if ( 'success' === responce.status ) {
						self.$CXNotice.add( {
							message: responce.message,
							type: 'success',
							duration: 3000,
						} );

						if(self.shouldReload){
							window.location.reload();
						}
					}

					if ( 'error' === responce.status ) {
						self.$CXNotice.add( {
							message: responce.message,
							type: 'error',
							duration: 3000,
						} );
					}
				}
			} );
		},
	}
} );

Vue.component( 'kitify-fonts-manager', {

	template: '#kitify-dashboard-kitify-fonts-manager',

	data: function() {
		return {
			preparedOptions: {},
			savingStatus: false,
			ajaxSaveHandler: null,
			customFonts: window.KitifySettingsConfig.settingsData.custom_fonts.value
		};
	},

	computed: {
		fieldsList: function() {
			var result = [];
			for ( var i = 0; i < this.customFonts.length; i++ ) {
				result.push( {
					title: this.customFonts[ i ].title || '',
					name: this.customFonts[ i ].name || '',
					type: this.customFonts[ i ].type || '',
					url: this.customFonts[ i ].url || '',
					variations: this.customFonts[ i ].variations || [],
				} );
			}
			return result;
		},
	},

	methods: {
		onInput: function ( value ){
			this.preparedOptions = {
				custom_fonts: value
			};
		},
		saveOptions: function() {

			var self = this;

			self.savingStatus = true;


			self.ajaxSaveHandler = jQuery.ajax( {
				type: 'POST',
				headers: {
					'X-WP-Nonce': wpApiSettings.nonce,
				},
				url: window.KitifySettingsConfig.settingsApiUrl,
				dataType: 'json',
				data: JSON.stringify(self.preparedOptions),
				contentType: 'application/json',
				beforeSend: function( jqXHR, ajaxSettings ) {
					if ( null !== self.ajaxSaveHandler ) {
						self.ajaxSaveHandler.abort();
					}
				},
				success: function( responce, textStatus, jqXHR ) {
					self.savingStatus = false;

					if ( 'success' === responce.status ) {
						self.$CXNotice.add( {
							message: responce.message,
							type: 'success',
							duration: 3000,
						} );
					}

					if ( 'error' === responce.status ) {
						self.$CXNotice.add( {
							message: responce.message,
							type: 'error',
							duration: 3000,
						} );
					}
				}
			} );
		},
	}
} );

Vue.component( 'kitify-swatches', {

	template: '#kitify-dashboard-kitify-swatches',

	data: function() {
		return {
			pageOptions: window.KitifySettingsConfig.settingsData,
			preparedOptions: {},
			savingStatus: false,
			ajaxSaveHandler: null,
		};
	},

	watch: {
		pageOptions: {
			handler( options ) {
				let prepared = {};

				for ( let option in options ) {

					if ( options.hasOwnProperty( option ) ) {
						prepared[ option ] = options[option]['value'];
					}
				}

				this.preparedOptions = prepared;

				this.saveOptions();
			},
			deep: true
		}
	},

	methods: {

		saveOptions: function() {

			var self = this;

			self.savingStatus = true;

			self.ajaxSaveHandler = jQuery.ajax( {
				type: 'POST',
				headers: {
					'X-WP-Nonce': wpApiSettings.nonce,
				},
				url: window.KitifySettingsConfig.settingsApiUrl,
				dataType: 'json',
				data: self.preparedOptions,
				beforeSend: function( jqXHR, ajaxSettings ) {

					if ( null !== self.ajaxSaveHandler ) {
						self.ajaxSaveHandler.abort();
					}
				},
				success: function( responce, textStatus, jqXHR ) {
					self.savingStatus = false;

					if ( 'success' === responce.status ) {
						self.$CXNotice.add( {
							message: responce.message,
							type: 'success',
							duration: 3000,
						} );
					}

					if ( 'error' === responce.status ) {
						self.$CXNotice.add( {
							message: responce.message,
							type: 'error',
							duration: 3000,
						} );
					}
				}
			} );
		},
	}
} );

LittleDemon - FACEBOOK
[ KELUAR ]