コード例 #1
0
/**
 * Modifies registration form.
 * 
 * If currently loaded form is registration form then this function does few things:
 * - removes Username field (field with name "user_login")
 * - moves password fields to the end of the form
 * - validates user_email field as a usersname (and email) to make sure this email
 *   is not already being used as a username
 * 
 * @since 1.0
 * @param Daq_Form_ObjectAbstract $form
 * @return Daq_Form_ObjectAbstract 
 */
function register_using_email_as_login($form)
{
    if ($form->getId() > 0) {
        return $form;
    }
    if ($form->hasElement("user_login")) {
        $form->removeElement("user_login");
    }
    if ($form->getGroup("auth") !== null) {
        $form->getGroup("auth")->setOrder(10000);
    }
    if ($form->hasElement("user_email")) {
        $form->getElement("user_email")->addValidator(new Daq_Validate_WP_Username());
    }
    return $form;
}
コード例 #2
0
/**
 * Adds registration fields to Wpjb_Form_Resume form.
 * 
 * The form needs additional registration fields as by default it is not equipped
 * to handle user registration.
 * 
 * Functiona is applied using wpjr_form_init_resume filter.
 * 
 * @see wpjr_form_init_resume filter
 * 
 * @since 1.0
 * @param Daq_Form_ObjectAbstract $form
 * @return Daq_Form_ObjectAbstract
 */
function full_candidate_register_form_init($form)
{
    if ($form->getId() > 0) {
        return $form;
    }
    $form->addGroup("auth", __("Account", "wpjobboard"), 0);
    $e = $form->create("_wpjb_action", "hidden");
    $e->setValue("reg_candidate_alt");
    $form->addElement($e, "_internal");
    $e = $form->create("user_login");
    $e->setOrder(1);
    $e->setLabel(__("Username", "wpjobboard"));
    $e->setRequired(true);
    $e->addFilter(new Daq_Filter_Trim());
    $e->addFilter(new Daq_Filter_WP_SanitizeUser());
    $e->addValidator(new Daq_Validate_WP_Username());
    $form->addElement($e, "auth");
    $e = $form->create("user_password", "password");
    $e->setOrder(1.01);
    $e->setLabel(__("Password", "wpjobboard"));
    $e->addFilter(new Daq_Filter_Trim());
    $e->addValidator(new Daq_Validate_StringLength(4, 32));
    $e->addValidator(new Daq_Validate_PasswordEqual("user_password2"));
    $e->setRequired(true);
    $form->addElement($e, "auth");
    $e = $form->create("user_password2", "password");
    $e->setOrder(1.02);
    $e->setLabel(__("Password (repeat)", "wpjobboard"));
    $e->setRequired(true);
    $form->addElement($e, "auth");
    return $form;
}