get_fields(); echo "
"; $this->build_tabs($selected_tab, $fields); } private function build_tabs($selected_tab, $fields) { $tab_list = ''; $field_list = []; $prelude = ''; $user = get_current_user_id(); if (0 === $user) { $user = wp_rand(1); } foreach ($fields as $tab => $field_group) { $tab_list .= "
  • $tab, 'nonce' => wp_create_nonce('photonic-vanilla-form-' . $user)])) . "' class='" . ($tab === $selected_tab ? 'current' : '') . "'>" . esc_attr($field_group['name']) . " |
  • "; if ($tab === $selected_tab) { $field_list = $field_group['fields']; $prelude = $field_group['prelude'] ?? ''; } } echo ""; if (!empty($prelude)) { echo "

    "; echo wp_kses_post($prelude); echo "

    "; } $this->build_table($field_list); $this->show_shortcode_preview(); } private function build_table($field_list) { echo ""; foreach ($field_list as $field) { echo ""; echo wp_kses_post(""); switch ($field['type']) { case 'text': echo ""; break; case 'select': echo ""; break; case 'raw': echo ""; break; } echo ""; echo ""; } echo "
    {$field['name']} " . (isset($field['req']) && $field['req'] ? '(*)' : '') . " " . wp_kses($field['std'], ['select' => ['name'], 'option' => ['value', 'selected']]) . "" . wp_kses_post($field['hint'] ?? '') . "
    "; } private function show_shortcode_preview() { echo "
    "; echo ""; echo "

    " . esc_html__('Shortcode preview', 'photonic') . "

    "; echo "
    ";
    		echo "";
    		echo "
    "; echo "
    "; echo wp_kses(get_submit_button(esc_html__('Insert into post', 'photonic'), 'primary', 'photonic-submit', false), Photonic::$safe_tags); echo wp_kses(get_submit_button(esc_html__('Cancel', 'photonic'), 'delete', 'photonic-cancel', false), Photonic::$safe_tags); echo "
    "; } } if (current_user_can('edit_posts') && isset($_REQUEST['nonce']) && wp_verify_nonce($_REQUEST['nonce'], 'photonic-vanilla-form-' . get_current_user_id())) { if (isset($_POST['photonic-submit'])) { $photonic_user_shortcode = stripslashes(sanitize_text_field($_POST['photonic-shortcode'] ?? '')); media_send_to_editor($photonic_user_shortcode); return; } elseif (isset($_POST['photonic-cancel'])) { media_send_to_editor(''); return; } } $photonic_add_gallery_form = Add_Gallery::get_instance(); $photonic_add_gallery_form->build_form();