/* global FusionApp, fusionAppConfig */ var FusionPageBuilder = FusionPageBuilder || {}; FusionPageBuilder.options = FusionPageBuilder.options || {}; FusionPageBuilder.options.fusionExport = { optionExport: function( $element ) { var self = this, $export, $exportMode, $fileDownload, $copyButton, $saveButton; $element = 'undefined' !== typeof $element && $element.length ? $element : this.$el; $export = $element.find( '.fusion-builder-option.export' ); if ( $export.length ) { $exportMode = $export.find( '#fusion-export-mode' ); $fileDownload = $export.find( '#fusion-export-file' ); $copyButton = $export.find( '#fusion-export-copy' ); $saveButton = $export.find( '#fusion-page-options-save' ); $exportMode.on( 'change', function( event ) { event.preventDefault(); $export.find( '.fusion-export-options > div' ).hide(); $export.find( '.fusion-export-options > div[data-id="' + jQuery( event.target ).val() + '"]' ).show(); } ); $copyButton.on( 'click', function( event ) { event.preventDefault(); jQuery( event.target ).prev( 'textarea' )[ 0 ].select(); document.execCommand( 'copy' ); } ); $fileDownload.on( 'click', function( event ) { event.preventDefault(); self.exportOptions( event ); } ); $saveButton.on( 'click', function( event ) { if ( event ) { event.preventDefault(); } if ( '' !== jQuery( '#fusion-new-page-options-name' ).val() ) { $export.addClass( 'partial-refresh-active' ); self.ajaxPOSave( $export ); } } ); } }, updateExportCode: function() { var $textArea = this.$el.find( '.fusion-builder-option.export #export-code-value' ), context = $textArea.attr( 'data-context' ), data = 'TO' === context ? JSON.stringify( FusionApp.settings ) : JSON.stringify( this.getFusionMeta() ); $textArea.val( data ); }, exportOptions: function( event ) { var dataStr, dlAnchorElem, context = jQuery( event.target ).attr( 'data-context' ), data, today = new Date(), date = today.getFullYear() + '-' + ( today.getMonth() + 1 ) + '-' + today.getDate(), fileName = 'fusion-theme-options-' + date; if ( 'TO' === context || 'FBE' === context ) { data = FusionApp.settings; // So import on back-end works. data.fusionredux_import_export = ''; data[ 'fusionredux-backup' ] = 1; } else { data = this.getFusionMeta(); fileName = 'avada-page-options-' + date; } dataStr = 'data:text/json;charset=utf-8,' + encodeURIComponent( JSON.stringify( data ) ); dlAnchorElem = document.createElement( 'a' ); dlAnchorElem.setAttribute( 'href', dataStr ); dlAnchorElem.setAttribute( 'download', fileName + '.json' ); dlAnchorElem.click(); dlAnchorElem.remove(); }, ajaxPOSave: function( $export ) { var data = { action: 'fusion_page_options_save', fusion_po_nonce: jQuery( '#fusion-page-options-nonce' ).val(), post_id: FusionApp.data.postDetails.post_id, custom_fields: this.getFusionMeta(), options_title: jQuery( '#fusion-new-page-options-name' ).val() }; jQuery.get( { url: fusionAppConfig.ajaxurl, data: data, dataType: 'json' } ) .done( function( response ) { jQuery( '.fusion-select-options' ).append( '' ); jQuery( '#fusion-new-page-options-name' ).val( '' ); $export.removeClass( 'partial-refresh-active' ); // This is temp ID, not used anywhere really. FusionApp.data.savedPageOptions[ response.saved_po_dataset_id ] = { id: response.saved_po_dataset_id, title: response.saved_po_dataset_title, data: response.saved_po_data }; } ) .fail( function() { $export.removeClass( 'partial-refresh-active' ); } ); }, getFusionMeta: function() { return { _fusion: FusionApp.data.postMeta._fusion }; }, setFusionMeta: function( newMeta ) { jQuery.each( newMeta, function( key, value ) { FusionApp.data.postMeta[ key ] = value; } ); } }; import FormControl from '@elementor/ui/FormControl'; import Button from '@elementor/ui/Button'; import Typography from '@elementor/ui/Typography'; import { __ } from '@wordpress/i18n'; import useStorage from '../hooks/use-storage'; import { WORDPRESS_REVIEW_LINK } from '../constants'; const ReviewForm = ( { close } ) => { const { save, get } = useStorage(); const handleSubmit = async () => { await save( { image_optimizer_review_data: { ...get.data.image_optimizer_review_data, repo_review_clicked: true, }, } ); close(); window.open( WORDPRESS_REVIEW_LINK, '_blank' ); }; return ( { __( 'It would mean a lot if you left us a quick review, so others can discover it too.', 'image-optimization' ) } ); }; export default ReviewForm;

Italian Restaurants in Sherman Oaks with Impressive Authentic Dishes

italian restaurants sherman oaks

When it comes to experiencing the rich flavors of Italy right in the heart of Sherman Oaks, there’s no better place to indulge your taste buds than Napoli’s Pizza Kitchen. Our artisan pizzeria and authentic Italian food haven has been serving the community for years, delighting locals and visitors alike with our impressive array of […]

An Italian Restaurant that Serves True Italian Ingredients and Dishes

best Italian restaurants Sherman Oaks

The best Italian restaurants in Sherman Oaks offer true Italian dishes. Napoli’s Pizza Kitchen is a good stop if you want to experience the Italian way of life. Italian dishes are revered worldwide because they are some of the best. They are exquisite and too irresistible, just like the dishes offered here at Napoli’s Pizza Kitchen.  […]