/** * Localize Script * Pass our imported list data, to the JS file * to build the drop down list in the modal */ public function tinymce_yikes_easy_mc() { // check capabilities if (!current_user_can(apply_filters('yikes-mailchimp-user-role-access', 'manage_options'))) { return; } $list_data = $this->form_interface->get_all_forms(); $lists = array(); if (!empty($list_data)) { // build an array to pass to our javascript foreach ($list_data as $id => $form) { $lists[] = array('text' => urlencode($form['form_name']), 'value' => $id); } } else { $lists[0] = array('text' => __('Please Import Some MailChimp Lists', 'yikes-inc-easy-mailchimp-extender'), 'value' => '-'); } /* Pass our form data to our JS file for use */ wp_localize_script('editor', 'localized_data', array('forms' => json_encode($lists), 'button_title' => __('Easy Forms for MailChimp by YIKES', 'yikes-inc-easy-mailchimp-extender'), 'popup_title' => __('Easy Forms for MailChimp by YIKES', 'yikes-inc-easy-mailchimp-extender'), 'list_id_label' => __('MailChimp Opt-In Form', 'yikes-inc-easy-mailchimp-extender'), 'show_title_label' => __('Display Form Title', 'yikes-inc-easy-mailchimp-extender'), 'show_description_label' => __('Display Form Description', 'yikes-inc-easy-mailchimp-extender'), 'submit_button_text_label' => __('Custom Submit Button Text', 'yikes-inc-easy-mailchimp-extender'), 'submit_button_message' => '<em>' . __('If left empty, the button will use the default submit button text .', 'yikes-inc-easy-mailchimp-extender') . '</em>', 'alert_translated' => sprintf(__('You need to <a href=%s title="%s">create a form</a> before you can add one to a page or post.', 'yikes-inc-easy-mailchimp-extender'), esc_url_raw(admin_url('admin.php?page=yikes-inc-easy-mailchimp')), __('Create a form', 'yikes-inc-easy-mailchimp-extender')))); }
public function form($instance) { $all_forms = $this->form_interface->get_all_forms(); if (empty($all_forms)) { ?> <section class="no-forms-widget"> <strong><span class="dashicons dashicons-no-alt no-forms-found-icon"></span><?php echo sprintf(__('No forms found. It looks like you need to <a href="%s" title="%s">%s</a>.', 'yikes-inc-easy-mailchimp-extender'), esc_url_raw(admin_url('admin.php?page=yikes-inc-easy-mailchimp')), __('Create a form', 'yikes-inc-easy-mailchimp-extender'), __('create a form', 'yikes-inc-easy-mailchimp-extender')); ?> </strong> </section> <?php return; } // Title if (isset($instance['title'])) { $title = $instance['title']; } else { $title = __('MailChimp Signup Form', 'yikes-inc-easy-mailchimp-extender'); } // Selected Form if (isset($instance['form_id'])) { $selected_form = $instance['form_id']; } else { $selected_form = ''; } // Submit Button Text if (isset($instance['submit_text'])) { $submit_text = $instance['submit_text']; } else { $submit_text = __('Submit', 'yikes-inc-easy-mailchimp-extender'); } if (get_option('yikes-mc-api-validation', 'invalid_api_key') == 'invalid_api_key') { ?> <p class="enter-valid-api-error-widget"><strong><?php _e('Please enter a valid MailChimp API key to connect your site to MailChimp.', 'yikes-inc-easy-mailchimp-extender'); ?> </strong></p> <?php return; } // Widget admin form ?> <p> <label for="<?php echo $this->get_field_id('title'); ?> "><?php _e('Title:'); ?> </label> <input class="widefat" id="<?php echo $this->get_field_id('title'); ?> " name="<?php echo $this->get_field_name('title'); ?> " type="text" value="<?php echo esc_attr($title); ?> " /> </p> <p> <label for="<?php echo $this->get_field_id('form_id'); ?> "><?php _e('Form:'); ?> </label> <select id="<?php echo $this->get_field_id('form_id'); ?> " name="<?php echo $this->get_field_name('form_id'); ?> " class="widefat"> <?php // build our array foreach ($all_forms as $id => $form) { ?> <option <?php selected($selected_form, $id); ?> name="<?php echo $this->get_field_name('form_id'); ?> " value="<?php echo $id; ?> "><?php echo stripslashes($form['form_name']); ?> </option> <?php } ?> </select> </p> <p> <label for="<?php echo $this->get_field_id('form_description'); ?> "><?php _e('Display Form Description:'); ?> </label> <input class="widefat" id="<?php echo $this->get_field_id('form_description'); ?> " name="<?php echo $this->get_field_name('form_description'); ?> " type="checkbox" value="1" <?php if (isset($instance['form_description'])) { checked($instance['form_description'], 1); } ?> /> </p> <p> <label for="<?php echo $this->get_field_id('submit_button_text'); ?> "><?php _e('Submit Button Text:'); ?> </label> <input class="widefat" id="<?php echo $this->get_field_id('submit_text'); ?> " name="<?php echo $this->get_field_name('submit_text'); ?> " type="text" value="<?php echo esc_attr($submit_text); ?> " /> </p> <?php }