public static function table_name(){ //simple memoisation if(self::$_table_name!=null){ return self::$_table_name; } self::$_table_name = vidtrial_db_name(); return self::$_table_name; }
function vidtrial_step1($attr) { require_once plugin_dir_path(__FILE__) . "mail.php"; if ($_SERVER['REQUEST_METHOD'] === 'POST') { if (!isset($_POST['vidtrial_signup_nonce']) || !wp_verify_nonce($_POST['vidtrial_signup_nonce'], 'vidtrial_signup_step1')) { return vidtrial_signup_error("An Error Occurred."); } if (!all_keys_exist(array('vidtrial_signup_email', 'vidtrial_signup_display_name'), $_POST)) { return vidtrial_signup_error(__("No data was received.", VIDTRIAL_TD)); } $validator = new VIDTrialSignupValidator($_POST); if (!$validator->is_valid()) { return vidtrial_signup_error($validator->array_errs_str()) . vidtrial_step1_markup($attr); } try { $existing = VidyoTrialUserManager::get($_POST['vidtrial_signup_email'], 'email_address'); if ($existing->data['confirmed']) { return vidtrial_signup_error(__("An account already exists with that address.", VIDTRIAL_TD)); } else { return vidtrial_signup_error(__("Please check your email for account confirmation instructions.", VIDTRIAL_TD)); } } catch (DoesNotExist $e) { $expires = get_option('vidtrial_trial_days'); $expires = time() + $expires * 3600 * 24; $user = new VidyoTrialUser(array('username' => $validator->data['vidtrial_signup_email'], 'display_name' => $validator->data['vidtrial_signup_display_name'], 'email_address' => $validator->data['vidtrial_signup_email'], 'expires' => $expires, 'company' => $validator->data['vidtrial_signup_company'], 'phone' => $validator->data['vidtrial_signup_phone'])); $id = $user->save(); try { vidtrial_send_confirm($validator->data['vidtrial_signup_email'], $validator->data['vidtrial_signup_display_name'], get_permalink(), time() + 3600, array('step' => 2)); } catch (MailError $e) { $user->delete(true); //delete from the local database return vidtrial_signup_error(null); } } return vidtrial_step1_success($validator->data['vidtrial_signup_email'], $attr); } return vidtrial_step1_markup($attr); }