if ($is_editing_self == 'yes') { // fix up the session information $_SESSION['user_first_name'] = $_REQUEST['first_name']; $_SESSION['user_last_name'] = $_REQUEST['last_name']; $_SESSION['portal']['member_interface'] = $_REQUEST['interface']; if (isset($_REQUEST['email'])) { $_SESSION['user_email'] = $_REQUEST['email']; } if ($_REQUEST['password'] != '') { $_SESSION['portal']['member_password_ue'] = $_REQUEST['password']; } } // update class information if provided if (isset($_REQUEST['class_id'])) { if (!in_array($_REQUEST['class_id'], $member_info['classes']['student'])) { portal_add_member_to_class($member_id, $_REQUEST['class_id']); } } // redirect back to the admin page mystery_redirect($return_page); exit; } } else { // FIXME - show admin option for admin/superuser $member_info = portal_web_output_filter($member_info); $email_field = ''; $class_field = ''; $type_field = ''; $grade_field = ''; if ($member_info['member_type'] == 'student') { if ($_SESSION['portal']['member_type'] != 'student') {
function portal_process_student_registration($request) { global $_PORTAL; if (isset($request['class_id'])) { $request['member_interface'] = $request['interface']; } else { // check that the class_key is valid $query = 'SELECT pcw.class_id, pm.member_school, member_interface FROM portal_class_words AS pcw LEFT JOIN portal_classes AS pc ON pcw.class_id=pc.class_id LEFT JOIN portal_members AS pm ON pc.class_teacher=pm.member_id WHERE class_word = ?'; $params = array($request['class_word']); $results = mystery_select_query($query, $params, 'portal_dbh'); if (count($results) == 0) { $_PORTAL['errors'][] = 'Your Sign-up Word is not correct. Please double check with your teacher.'; if (preg_match('~(shit|piss|bitch|f**k|c**t|c**k|suck|t**s|crap|damn|merde|mierda|puta|cabron|pendejo)~i', $request['class_word'])) { $_PORTAL['errors'][] = 'You also have a potty mouth… Please wash it out with soap!'; } return 0; } else { $request['class_id'] = $results[0]['class_id']; $request['school_id'] = $results[0]['member_school']; $request['member_interface'] = $results[0]['member_interface']; } } $request['type'] = 'student'; // add the student as a member $member_id = portal_process_member_registration($request); if ($member_id > 0) { // add the student to the selected class $record_id = portal_add_member_to_class($member_id, $request['class_id']); } return $member_id; }