/**
  * Main Instance
  */
 public static function instance()
 {
     if (is_null(self::$_instance)) {
         self::$_instance = new self();
     }
     return self::$_instance;
 }
Example #2
0
 function wprm()
 {
     if (!$this->wprm) {
         $this->wprm = WP_Resume_Manager_Form_Submit_Resume::instance();
     }
     return $this->wprm;
 }
 /**
  * Update or create a job listing from posted data
  *
  * @param  string $post_title
  * @param  string $post_content
  * @param  string $status
  */
 protected static function save_resume($post_title, $post_content, $status = 'preview', $values = array())
 {
     $resume_slug = array();
     // Prepend with unqiue key
     if (self::$resume_id) {
         $prefix = get_post_meta(self::$resume_id, '_resume_name_prefix', true);
         if (!$prefix) {
             $prefix = wp_generate_password(10);
         }
         $resume_slug[] = $prefix;
     } else {
         $prefix = wp_generate_password(10);
         $resume_slug[] = $prefix;
     }
     $resume_slug[] = $post_title;
     $data = apply_filters('submit_resume_form_save_resume_data', array('post_title' => $post_title, 'post_content' => $post_content, 'post_type' => 'resume', 'comment_status' => 'closed', 'post_password' => '', 'post_name' => sanitize_title(implode('-', $resume_slug))), $post_title, $post_content, $status, $values);
     if ($status) {
         $data['post_status'] = $status;
     }
     if (self::$resume_id) {
         $data['ID'] = self::$resume_id;
         wp_update_post($data);
     } else {
         self::$resume_id = wp_insert_post($data);
         update_post_meta(self::$resume_id, '_resume_name_prefix', $prefix);
         // Save profile fields
         $current_user = wp_get_current_user();
         $candidate_name = explode(' ', $post_title);
         if (empty($current_user->first_name) && empty($current_user->last_name) && sizeof($candidate_name) > 1) {
             wp_update_user(array('ID' => $current_user->ID, 'first_name' => current($candidate_name), 'last_name' => end($candidate_name)));
         }
     }
 }
				<fieldset class="fieldset-<?php 
    esc_attr_e($subkey);
    ?>
">
					<label for="<?php 
    esc_attr_e($subkey);
    ?>
"><?php 
    echo $subfield['label'] . ($subfield['required'] ? '' : ' <small>' . __('(optional)', 'wp-job-manager-resumes') . '</small>');
    ?>
</label>
					<div class="field">
						<?php 
    // Get name and value
    $subfield['name'] = 'candidate_education_' . $subkey . '[]';
    WP_Resume_Manager_Form_Submit_Resume::get_field_template($subkey, $subfield);
    ?>
					</div>
				</fieldset>
			<?php 
}
?>
		</div>
	<?php 
echo esc_attr(ob_get_clean());
?>
">+ <?php 
_e('Add Education', 'wp-job-manager-resumes');
?>
</a>
<?php 
 /**
  * Handle the form when the preview page is submitted
  */
 public static function preview_handler()
 {
     if (!$_POST) {
         return;
     }
     if (version_compare(RESUME_MANAGER_VERSION, '1.11.0', '<')) {
         // Edit = show submit form again
         if (!empty($_POST['edit_resume'])) {
             WP_Resume_Manager_Form_Submit_Resume::previous_step();
         }
         // Continue to the next step
         if (!empty($_POST['continue'])) {
             $resume = get_post(WP_Resume_Manager_Form_Submit_Resume::get_resume_id());
             // Update resume status to pending_payment
             if ($resume->post_status == 'preview') {
                 $update_resume = array();
                 $update_resume['ID'] = $resume->ID;
                 $update_resume['post_status'] = 'pending_payment';
                 wp_update_post($update_resume);
             }
             // If we're already chosen a package, apply its properties to the job here and add to cart
             if ('before' === get_option('resume_manager_paid_listings_flow')) {
                 // Validate Selected Package
                 $validation = self::validate_package(self::$package_id, self::$is_user_package);
                 if (is_wp_error($validation)) {
                     WP_Resume_Manager_Form_Submit_Resume::add_error($validation->get_error_message());
                     WP_Resume_Manager_Form_Submit_Resume::previous_step();
                     WP_Resume_Manager_Form_Submit_Resume::previous_step();
                 }
                 self::process_package(self::$package_id, self::$is_user_package, WP_Resume_Manager_Form_Submit_Resume::get_resume_id());
                 WP_Resume_Manager_Form_Submit_Resume::next_step();
                 // Proceeed to the choose package step if the above did not redirect
             } else {
                 WP_Resume_Manager_Form_Submit_Resume::next_step();
             }
         }
     } else {
         $form = WP_Resume_Manager_Form_Submit_Resume::instance();
         // Edit = show submit form again
         if (!empty($_POST['edit_resume'])) {
             $form->previous_step();
         }
         // Continue to the next step
         if (!empty($_POST['continue'])) {
             $resume = get_post($form->get_resume_id());
             // Update resume status to pending_payment
             if ($resume->post_status == 'preview') {
                 $update_resume = array();
                 $update_resume['ID'] = $resume->ID;
                 $update_resume['post_status'] = 'pending_payment';
                 wp_update_post($update_resume);
             }
             // If we're already chosen a package, apply its properties to the job here and add to cart
             if ('before' === get_option('resume_manager_paid_listings_flow')) {
                 // Validate Selected Package
                 $validation = self::validate_package(self::$package_id, self::$is_user_package);
                 if (is_wp_error($validation)) {
                     $form->add_error($validation->get_error_message());
                     $form->previous_step();
                     $form->previous_step();
                 }
                 self::process_package(self::$package_id, self::$is_user_package, $form->get_resume_id());
                 $form->next_step();
                 // Proceeed to the choose package step if the above did not redirect
             } else {
                 $form->next_step();
             }
         }
     }
 }