private function get_item_data() { $data = array('restrictedTypes' => $this->restricted_types); $options = $this->get_shortcode_options(); if ($options) { fw()->backend->enqueue_options_static($options); $data['options'] = $this->transform_options($options); } $config = $this->get_shortcode_config(); if (isset($config['popup_size'])) { $data['popup_size'] = $config['popup_size']; } $data['item_widths'] = fw_ext_builder_get_item_widths_for_js($this->get_builder_type()); $data['l10n'] = array('edit' => __('Edit', 'fw'), 'duplicate' => __('Duplicate', 'fw'), 'remove' => __('Remove', 'fw'), 'title' => __('Column', 'fw')); return $data; }
/** * @internal * {@inheritdoc} */ protected function _enqueue_static($id, $option, $data) { $option = $this->fix_base_defaults($option); $version = fw_ext('builder')->manifest->get_version(); do_action('fw_ext_builder:option_type:builder:before_enqueue', array('option' => $option, 'version' => $version)); wp_enqueue_style('fw-option-builder', $this->get_static_uri('/css/builder.css'), version_compare(fw()->manifest->get_version(), '2.4.0', '<') ? array('fw') : array('fw', 'fw-unycon'), $version); wp_enqueue_script('fw-option-builder', $this->get_static_uri('/js/builder.js'), array('jquery-ui-draggable', 'jquery-ui-sortable', 'fw', 'fw-events', 'backbone', 'backbone-relational'), $version, true); wp_enqueue_media(); wp_enqueue_style('fw-option-builder-helpers', $this->get_static_uri('/css/helpers.css'), array('fw-option-builder'), $version); wp_enqueue_script('fw-option-builder-helpers', $this->get_static_uri('/js/helpers.js'), array('fw-option-builder'), $version, true); wp_enqueue_script('fw-option-builder-qtips', $this->get_static_uri('/js/qtips.js'), array('fw-option-builder'), $version, true); wp_enqueue_script('fw-option-builder-initialize', $this->get_static_uri('/js/initialize-builder.js'), array('fw-option-builder'), $version, true); wp_localize_script('fw-option-builder-helpers', '_fw_option_type_builder_helpers', array('l10n' => array('save' => __('Save', 'fw')), 'item_widths' => fw_ext_builder_get_item_widths_for_js($this->get_type()))); if ($option['fullscreen']) { wp_enqueue_style('fw-option-builder-fullscreen', $this->get_static_uri('/css/fullscreen.css'), array('fw-option-builder'), $version); wp_enqueue_script('fw-option-builder-fullscreen', $this->get_static_uri('/js/fullscreen.js'), array('fw-option-builder'), $version, true); wp_localize_script('fw-option-builder-fullscreen', '_fw_option_type_builder_fullscreen', array('l10n' => array('fullscreen' => __('Full Screen', 'fw'), 'exit_fullscreen' => __('Exit Full Screen', 'fw')))); } if ($option['history']) { wp_enqueue_style('fw-option-builder-history', $this->get_static_uri('/css/history.css'), array('fw-option-builder'), $version); wp_enqueue_script('fw-option-builder-history', $this->get_static_uri('/js/history.js'), array('fw-option-builder'), $version, true); wp_localize_script('fw-option-builder-history', '_fw_option_type_builder_history', array('l10n' => array('undo' => __('Undo', 'fw'), 'redo' => __('Redo', 'fw')))); } do_action('fw_ext_builder:option_type:builder:enqueue', array('option' => $option, 'version' => $version, 'uri' => fw()->extensions->get('builder')->get_uri('/includes/option-types/builder'))); foreach ($this->get_item_types() as $item) { /** @var FW_Option_Type_Builder_Item $item */ $item->enqueue_static(); } }
/** * @internal * {@inheritdoc} */ protected function _enqueue_static($id, $option, $data) { $option = $this->fix_base_defaults($option); $version = fw_ext('builder')->manifest->get_version(); wp_enqueue_style('fw-option-builder', $this->get_static_uri('/css/builder.css'), array('fw'), $version); wp_enqueue_script('fw-option-builder', $this->get_static_uri('/js/builder.js'), array('jquery-ui-draggable', 'jquery-ui-sortable', 'fw', 'fw-events', 'backbone', 'backbone-relational'), $version, true); wp_enqueue_media(); wp_enqueue_style('fw-option-builder-helpers', $this->get_static_uri('/css/helpers.css'), array('fw-option-builder'), $version); wp_enqueue_script('fw-option-builder-helpers', $this->get_static_uri('/js/helpers.js'), array('fw-option-builder'), $version, true); wp_localize_script('fw-option-builder-helpers', '_fw_option_type_builder_helpers', array('l10n' => array('save' => __('Save', 'fw')), 'item_widths' => fw_ext_builder_get_item_widths_for_js($this->get_type()))); if ($option['fullscreen']) { wp_enqueue_style('fw-option-builder-fullscreen', $this->get_static_uri('/css/fullscreen.css'), array('fw-option-builder'), $version); wp_enqueue_script('fw-option-builder-fullscreen', $this->get_static_uri('/js/fullscreen.js'), array('fw-option-builder'), $version, true); wp_localize_script('fw-option-builder-fullscreen', '_fw_option_type_builder_fullscreen', array('l10n' => array('fullscreen' => __('Full Screen', 'fw'), 'exit_fullscreen' => __('Exit Full Screen', 'fw')))); } if ($option['template_saving']) { wp_enqueue_style('fw-option-builder-template-saving', $this->get_static_uri('/css/template-saving.css'), array('fw-option-builder'), $version); wp_enqueue_script('fw-option-builder-template-saving', $this->get_static_uri('/js/template-saving.js'), array('fw-option-builder'), $version, true); wp_localize_script('fw-option-builder-template-saving', '_fw_option_type_builder_templates', array('l10n' => array('templates' => __('Templates', 'fw'), 'no_templates_saved' => __('0 Templates Saved', 'fw'), 'template_name' => __('Template Name', 'fw'), 'template_name_desc' => __('Must have at least 3 characters (Whitespace, A-Z, 0-9, -_)', 'fw'), 'save_template' => __('Save Template', 'fw'), 'load_template' => __('Load Template', 'fw')))); } if ($option['history']) { wp_enqueue_style('fw-option-builder-history', $this->get_static_uri('/css/history.css'), array('fw-option-builder'), $version); wp_enqueue_script('fw-option-builder-history', $this->get_static_uri('/js/history.js'), array('fw-option-builder'), $version, true); wp_localize_script('fw-option-builder-history', '_fw_option_type_builder_history', array('l10n' => array('undo' => __('Undo', 'fw'), 'redo' => __('Redo', 'fw')))); } foreach ($this->get_item_types() as $item) { /** @var FW_Option_Type_Builder_Item $item */ $item->enqueue_static(); } }