Example #1
0
 /**
  * Step load
  */
 public function load()
 {
     if (wpem_get_current_step()->name !== $this->name) {
         return;
     }
     $this->init();
 }
/**
 * Display template footer
 */
function wpem_template_footer()
{
    wp_print_scripts('jquery-blockui');
    wp_print_scripts('wpem');
    do_action('wpem_print_footer_scripts_' . wpem_get_current_step()->name);
    $fqdn = gethostname();
    if (false === strpos($fqdn, 'secureserver.net')) {
        return;
    }
    $host = false !== strpos($fqdn, '.prod.') ? 'secureserver.net' : 'test-secureserver.net';
    ?>
	<script>"undefined"==typeof _trfd&&(window._trfd=[]),_trfd.push({"tccl.baseHost":"<?php 
    echo esc_js($host);
    ?>
"}),_trfd.push({"ap":"MWPQSWv2"})</script>
	<script src="//img1.wsimg.com/tcc/tcc_l.combined.1.0.2.min.js"></script>
	<?php 
}
 /**
  * Register admin menu and assets
  *
  * @action admin_menu
  */
 public function menu()
 {
     add_dashboard_page(_x('WP Easy Mode', 'Main plugin title', 'wp-easy-mode'), _x('Easy Mode', 'Menu title', 'wp-easy-mode'), $this->cap, static::SLUG, array($this, 'screen'));
     wp_register_style('wpem-fullscreen', WPEM_URL . 'assets/css/fullscreen.css', array('dashicons', 'buttons', 'install'), WPEM_VERSION);
     wp_register_script('jquery-blockui', WPEM_URL . 'assets/js/jquery.blockui.min.js', array('jquery'), '2.70.0');
     wp_register_script('wpem', WPEM_URL . 'assets/js/common.js', array('jquery'), WPEM_VERSION);
     wp_register_script('wpem-theme', WPEM_URL . 'assets/js/theme.js', array('wpem'), WPEM_VERSION);
     wp_localize_script('wpem', 'wpem_vars', array('step' => wpem_get_current_step()->name, 'i18n' => array('exit_confirm' => esc_attr__('Are you sure you want to exit and configure WordPress on your own?', 'wp-easy-mode'))));
     /**
      * Filter the list of themes to display
      *
      * 1. The 'theme' step must be registered.
      * 2. Only themes available on WordPress.org are supported.
      * 3. If a user selects a theme that is not yet installed
      *    it will be downloaded and activated automatically.
      *
      * @param string $site_type
      *
      * @var   array
      */
     $themes = (array) apply_filters('wpem_themes', array('twentysixteen', 'twentyfifteen', 'twentyfourteen', 'twentythirteen', 'twentytwelve', 'twentyeleven'), wpem_get_site_type());
     wp_localize_script('wpem-theme', 'wpem_theme_vars', array('themes' => array_map('esc_js', array_values(array_unique($themes))), 'i18n' => array('expand' => esc_attr__('Expand Sidebar', 'wp-easy-mode'), 'collapse' => esc_attr__('Collapse Sidebar', 'wp-easy-mode'))));
 }
Example #4
0
 /**
  * Get current step for functions who needs it
  */
 private function get_step()
 {
     if (!isset($this->step)) {
         $this->step = wpem_get_current_step();
     }
 }
Example #5
0
					<?php 
wpem_get_current_step()->actions();
?>

					<input type="hidden" id="wpem_step_name" name="wpem_step_name" value="<?php 
echo esc_attr(wpem_get_current_step()->name);
?>
">

					<input type="hidden" id="wpem_step_took" name="wpem_step_took" value="">

					<input type="hidden" id="wpem_force_refresh" value="false">

					<?php 
wp_nonce_field(sprintf('wpem_step_nonce-%s-%d', wpem_get_current_step()->name, get_current_user_id()), 'wpem_step_nonce');
?>

				</div>

			</form>

		</div>

	</div>

	<?php 
wpem_template_footer();
?>

</body>
Example #6
0
 /**
  * Register admin menu and assets
  *
  * @action admin_menu
  */
 public function menu()
 {
     add_dashboard_page(_x('WP Easy Mode', 'Main plugin title', 'wp-easy-mode'), _x('Easy Mode', 'Menu title', 'wp-easy-mode'), $this->cap, wpem()->page_slug, [$this, 'screen']);
     $suffix = SCRIPT_DEBUG ? '' : '.min';
     wp_register_style('font-awesome', wpem()->assets_url . 'css/font-awesome.min.css', [], '4.5.0');
     wp_register_style('wpem-fullscreen', wpem()->assets_url . "css/fullscreen{$suffix}.css", ['dashicons', 'buttons', 'install'], wpem()->version);
     wp_register_script('jquery-blockui', wpem()->assets_url . 'js/jquery.blockui.min.js', ['jquery'], '2.70.0');
     wp_register_script('wpem', wpem()->assets_url . "js/common{$suffix}.js", ['jquery'], wpem()->version);
     wp_register_script('wpem-contact', wpem()->assets_url . "js/contact{$suffix}.js", ['wpem'], wpem()->version);
     wp_register_script('wpem-theme', wpem()->assets_url . "js/theme{$suffix}.js", ['wpem', 'wp-pointer', 'wpem-pointers'], wpem()->version);
     wp_localize_script('wpem', 'wpem_vars', ['step' => wpem_get_current_step()->name, 'i18n' => ['exit_confirm' => esc_attr__('Are you sure you want to exit and configure WordPress on your own?', 'wp-easy-mode')]]);
     /**
      * Filter the list of themes to display
      *
      * @var array
      */
     $themes = (array) apply_filters('wpem_themes', ['twentysixteen', 'twentyfifteen', 'twentyfourteen']);
     wp_localize_script('wpem-theme', 'wpem_theme_vars', ['themes' => array_map('esc_js', array_values(array_unique($themes))), 'i18n' => ['expand' => esc_attr__('Expand Sidebar', 'wp-easy-mode'), 'collapse' => esc_attr__('Collapse Sidebar', 'wp-easy-mode')], 'preview_url' => static::demo_site_url(['blogname' => get_option('blogname'), 'blogdescription' => get_option('blogdescription'), 'email' => wpem_get_contact_info('email'), 'phone' => wpem_get_contact_info('phone'), 'fax' => wpem_get_contact_info('fax'), 'address' => wpem_get_contact_info('address'), 'social' => implode(',', wpem_get_social_profiles())], false), 'ajax_url' => admin_url('admin-ajax.php'), 'customizer_url' => wpem_get_customizer_url(['return' => self_admin_url(), 'wpem' => 1])]);
 }
Example #7
0
/**
 * Return a step field value from the log
 *
 * @param  string $field
 * @param  string $step (optional)
 * @param  mixed  $default (optional)
 *
 * @return mixed
 */
function wpem_get_step_field($field, $step = null, $default = false)
{
    $step = !empty($step) ? $step : wpem_get_current_step()->name;
    $log = new \WPEM\Log();
    return !empty($log->steps[$step]['fields'][$field]) ? $log->steps[$step]['fields'][$field] : $default;
}
Example #8
0
 /**
  * Save fields
  *
  * @return array|bool
  */
 public function save()
 {
     $saved = [];
     $invalid = [];
     foreach ($this->fields as $field) {
         preg_match('/\\[(.*?)\\]/', $field['name'], $key);
         // Get key from brackets
         $key = isset($key[1]) ? $key[1] : null;
         $name = preg_replace('/[\\[].*[\\]]/', '', $field['name']);
         // Strip brackets
         $value = $key && isset($_POST[$name][$key]) ? $_POST[$name][$key] : (isset($_POST[$name]) ? $_POST[$name] : null);
         // Support arrays
         $sanitizer = empty($field['sanitizer']) ? null : $field['sanitizer'];
         // Maybe sanitize
         if ($value && $sanitizer && is_callable($sanitizer)) {
             $value = is_array($value) ? array_map($sanitizer, $value) : $sanitizer($value);
         }
         // Maybe validate
         if (!$value && !empty($field['required'])) {
             $invalid[] = $key ? sprintf('%s[%s]', $name, $key) : $name;
             continue;
         }
         // Maybe use default
         if (!$value && isset($field['default'])) {
             $value = $field['default'];
         }
         $result = false;
         // Only save WPEM options directly to the database
         if (0 === strpos($name, 'wpem_')) {
             if ($key) {
                 $option = (array) get_option($name, []);
                 $option[$key] = $value;
                 $value = $option;
             }
             $result = update_option($name, $value);
         }
         // Maybe save to log
         if (empty($field['skip_log'])) {
             $log = new Log();
             $result = $log->add_step_field($name, $value);
         }
         if ($result) {
             $saved[$name] = $value;
         }
     }
     if (!empty($invalid)) {
         wp_safe_redirect(add_query_arg(['step' => wpem_get_current_step()->name, 'error' => true, 'fields' => implode(',', $invalid)], wpem_get_wizard_url()));
         exit;
     }
     return $saved;
 }
Example #9
0
/**
 * Return the next step
 *
 * @return object
 */
function wpem_get_next_step()
{
    return wpem_get_step_by('position', wpem_get_current_step()->position + 1);
}