function JB_display_candidate_signup_form($form_id = 5, $mode, $data, $admin)
{
    if ($admin) {
        $user_id = $_REQUEST['user_id'];
    } else {
        $user_id = $_SESSION['JB_ID'];
    }
    global $error;
    global $label;
    if ($data == '') {
        JB_candidate_signup_form_init($data);
    }
    if ($mode == 'EDIT') {
        echo "Note: Fields with a black label cannot be removed. You can edit their labels by editing the strings from the 'Langauge' menu. You can also add extra new fields to this form.";
    }
    JB_template_candidate_signup_form($mode, $admin, $user_id);
}
 function display_form($mode, $admin = false)
 {
     if (!is_numeric($_REQUEST['user_id'])) {
         $_REQUEST['user_id'] = $_SESSION['JB_ID'];
     }
     if (sizeof($this->data) == 0) {
         $data = array();
         $this->init_data_from_request($data);
         $this->set_values($data);
     }
     switch ($this->form_id) {
         case 1:
             JB_template_posting_form($mode, $admin);
             break;
         case 2:
             JB_template_resume_form($mode, $admin);
             break;
         case 3:
             if ($this->get_value('profile_id') || $mode != 'view') {
                 JB_template_profile_form($mode, $admin);
             }
             break;
         case 4:
             if ($admin) {
                 $user_id = $_REQUEST['user_id'];
             } else {
                 $user_id = $_SESSION['JB_ID'];
             }
             JB_template_employer_signup_form($mode, $admin, $user_id);
             break;
         case 5:
             if ($admin) {
                 $user_id = $_REQUEST['user_id'];
             } else {
                 $user_id = $_SESSION['JB_ID'];
             }
             JB_template_candidate_signup_form($mode, $admin, $user_id);
             break;
         default:
             $this->display_form_section($mode, 1, $admin);
             break;
     }
 }