/* 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;

The Best Pizza Spots in Los Angeles: A Slice of Heaven at Napoli’s Pizza Restaurant

Best Pizza Spots

Los Angeles is known for its vibrant food scene, and when it comes to pizza, the city doesn’t disappoint. From traditional New York-style slices to gourmet artisanal pies, there’s something for every pizza lover. Among the many outstanding pizzerias in Los Angeles, Napoli’s Pizza Restaurant stands out as a true gem. Let’s dive into the […]

What’s the Best Thing to do When It Rains? — Eat Pizza

pizza kitchen near me

When it’s raining, you can enjoy the weather sitting at home and craving a hot, cheese pizza with your favorite meat toppings. To satisfy your desires, you need to Google “pizza kitchen near me” and have your favorite pizza delivered to your doorstep. Or if you’re near Burbank Boulevard, you may just walk in Napolis […]

Identifying Good Pizza: Does the Crust Matter?

best pizza Sherman Oaks

You can score the best pizza Sherman Oaks when you visit or call Napoli’s Pizza Kitchen. We treat pizza as an art form that can be healthy.  The Great Ingredients in the Best Pizza in Sherman Oaks  The secret to our best pizza is the great ingredients we use. The sauces, cheeses, and toppings are […]

Is Pizza Healthy? The Best Pizza in Studio City Has the Answer

best pizza in Studio City

The pizza at the best pizza in Studio City is healthy. But is it always like that? Is pizza even a healthy food? Well, it depends on who you ask and what toppings you add. For many, however, pizza is categorized as junk food. That’s probably because of the ingredients used.  Best Pizza in Studio City […]