get_data(); wp_enqueue_style( 'avada_admin_css', trailingslashit( Avada::$template_dir_url ) . 'assets/admin/css/avada-admin.css', [], AVADA_VERSION ); wp_register_script( 'fuse-script', FUSION_LIBRARY_URL . '/assets/min/js/library/fuse.js', [], AVADA_VERSION, true ); wp_enqueue_script( 'avada-studio', Avada::$template_dir_url . '/assets/admin/js/awb-studio.js', [ 'jquery', 'fuse-script', 'imagesloaded' ], FUSION_BUILDER_VERSION, false ); // Studio preview. wp_enqueue_script( 'awb-studio-preview-admin', trailingslashit( Fusion_Scripts::$js_folder_url ) . 'general/awb-studio-preview-admin.js', [ 'jquery' ], FUSION_BUILDER_VERSION, false ); wp_localize_script( 'avada-studio', 'fusionBuilderText', fusion_app_textdomain_strings() ); wp_localize_script( 'avada-studio', 'awbStudioData', (array) $data ); ?> registration->should_show( 'studio' ) ) : ?>

' . esc_attr__( 'Product Registration', 'fusion-builder' ) . '' ); ?>

check_nonce(); if ( is_multisite() && is_main_site() ) { $sites = get_sites(); foreach ( $sites as $site ) { switch_to_blog( $site->blog_id ); delete_transient( 'avada_studio' ); restore_current_blog(); } return; } delete_transient( 'avada_studio' ); echo wp_json_encode( AWB_Studio()->get_data() ); die(); } /** * Import Studio content from Admin page. */ public function ajax_import() { $this->check_nonce(); $data_type = sanitize_text_field( wp_unslash( $_GET['data']['dataType'] ) ); // phpcs:ignore WordPress.Security.NonceVerification.Recommended, WordPress.Security.ValidatedSanitizedInput.InputNotValidated $data_id = sanitize_text_field( wp_unslash( $_GET['data']['dataID'] ) ); // phpcs:ignore WordPress.Security.NonceVerification.Recommended, WordPress.Security.ValidatedSanitizedInput.InputNotValidated if ( ! $data_type || ! $data_id || ! $this->can_import( $data_type ) ) { echo wp_json_encode( [] ); die(); } // Set import options from $_REQUEST global array. AWB_Studio_Import()->set_import_options_from_request(); $post_details = AWB_Studio_Import()->import_post( [ 'post_id' => $data_id, 'post_type' => $data_type, ], [], false ); echo wp_json_encode( $post_details ); die(); } /** * Checks if current logged in use can import item. * * @access public * @since 3.9 * @param string $type The item type. * @return bool */ public function can_import( $type ) { $can_import = true; switch ( $type ) { case 'fusion_template': if ( ! current_user_can( apply_filters( 'awb_role_manager_access_capability', 'edit_posts', 'avada_library' ) ) ) { $can_import = false; } break; case 'fusion_tb_section': if ( ! current_user_can( apply_filters( 'awb_role_manager_access_capability', 'manage_options', 'fusion_tb_section' ) ) ) { $can_import = false; } break; case 'fusion_element': if ( ! current_user_can( apply_filters( 'awb_role_manager_access_capability', 'edit_posts', 'avada_library' ) ) ) { $can_import = false; } break; case 'fusion_icons': if ( ! current_user_can( apply_filters( 'awb_role_manager_access_capability', 'edit_posts', 'fusion_icons' ) ) ) { $can_import = false; } break; case 'fusion_form': if ( false === Fusion_Form_Builder::is_enabled() || ! current_user_can( apply_filters( 'awb_role_manager_access_capability', 'edit_posts', 'fusion_form' ) ) ) { $can_import = false; } break; case 'awb_off_canvas': if ( false === AWB_Off_Canvas::is_enabled() || ! current_user_can( apply_filters( 'awb_role_manager_access_capability', 'edit_posts', 'awb_off_canvas' ) ) ) { $can_import = false; } break; } return $can_import; } /** * Import Studio content media from Admin page. */ public function ajax_import_media() { $this->check_nonce(); $post_data = wp_unslash( $_POST['data']['postData'] ); // phpcs:ignore WordPress.Security.NonceVerification.Missing, WordPress.Security.ValidatedSanitizedInput.InputNotSanitized, WordPress.Security.ValidatedSanitizedInput.InputNotValidated // Dont import content if post was already imported. if ( 'false' === $post_data['was_imported'] ) { $post_id = absint( $post_data['post_id'] ); $media_key = sanitize_text_field( wp_unslash( $_POST['data']['mediaImportKey'] ) ); // phpcs:ignore WordPress.Security.NonceVerification.Missing, WordPress.Security.ValidatedSanitizedInput.InputNotValidated $overwrite = isset( $post_data['mapping'] ) ? $post_data['mapping'] : []; // We need it for post_content. $post = get_post( $post_id ); // Set import options from $_REQUEST global array. AWB_Studio_Import()->set_import_options_from_request(); // Import assets. AWB_Studio_Import()->import_post_media( $post_id, $post->post_content, [ $media_key => $post_data['avada_media'][ $media_key ] ], $overwrite ); } echo wp_json_encode( $post_data ); die(); } }