Exemple #1
0
 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;
  }
Exemple #2
0
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);
}