function definition_after_data() { global $USER, $CFG, $DB, $PAGE; $mform = $this->_form; $requestid = new requests(); $id = $this->_customdata['id']; $school = $mform->getElementValue('school_name'); $countvalue = $mform->getElementValue('count'); $fid = $school[0]; if ($countvalue == 1) { $pro_count = $mform->getElementValue('count_pros'); if ($pro_count > 1) { // single school and more than one program assigned to a user $program1 = $mform->getElementValue('program_name1'); $schoolid = $mform->getElementValue('schoolid'); $pro_index = $program1[0]; if ($pro_index > 0 && $pro_count > 1) { $semesteres = $requestpro->semester($schoolid, $pro_index); $semesteres = $requestid->semester($schoolid, $pro_index); foreach ($semesteres as $s) { $value2 = $s->fullname; } $ser_id = $mform->createElement('static', 'serviceid', get_string('student_id', 'local_request'), $serviceid->serviceid); $mform->insertElementBefore($ser_id, 'program_name'); $sem_name = $mform->createElement('static', 'semester_name', get_string('semester_name', 'local_request'), $value2); $mform->insertElementBefore($sem_name, 'addschool'); } } } // more than one school assiged to a user if ($school[0] > 0 && isset($school) && $countvalue > 1) { $service = $requestid->service($fid); $users = $requestid->users($fid); $programses = $requestid->program($fid); $mypro = array(); $mypro[''] = get_string('selectprogram', 'local_programs'); foreach ($programses as $p) { $mypro[$p->id] = $p->fullname; } $ser_id = $mform->createElement('static', 'serviceid', get_string('student_id', 'local_request'), $service->serviceid); $mform->insertElementBefore($ser_id, 'addschool'); $name = $mform->createElement('static', 'name', get_string('name', 'local_request'), $users->fullname); $mform->insertElementBefore($name, 'addschool'); if (count($mypro) == 2) { // more than school and one program to user $pro_name = $mform->createElement('static', 'program_name', get_string('program_name', 'local_request'), $mypro[$p->id]); $mform->insertElementBefore($pro_name, 'addschool'); $pro_id = $mform->createElement('hidden', 'programid', $p->id); $mform->insertElementBefore($pro_id, 'addschool'); $semesteres = $requestid->semester($fid, $p->id); foreach ($semesteres as $s) { $mysemvalue = $s->fullname; $mysemid = $s->id; } $sems_name = $mform->createElement('static', 'semester_name', get_string('semester_name', 'local_request'), $mysemvalue); $mform->insertElementBefore($sems_name, 'addschool'); $sem_id = $mform->createElement('hidden', 'semesterid', $mysemid); $mform->insertElementBefore($sem_id, 'addschool'); $school_programs = $requestid->school_programs($fid); $programs = array(); $programs[''] = get_string("select", "local_request"); foreach ($school_programs as $sch_pro) { $programs[$sch_pro->id] = $sch_pro->fullname; } $sch_pro = $mform->createElement('select', 'toprogramid', get_string('to_program_name', 'local_request'), $programs); $mform->insertElementBefore($sch_pro, 'addschool'); $mform->addRule('toprogramid', get_string('error_request_transfer', 'local_request'), 'required', null, 'server'); } else { // more than one program and school assined to user $pro_name = $mform->createElement('select', 'program_name', get_string('program_name', 'local_request'), $mypro); $mform->insertElementBefore($pro_name, 'addschool'); $mform->addRule('program_name', get_string('programid', 'local_prefix'), 'required', null, 'client'); } $formatvalue3 = $mform->getElementValue('program_name'); if ($formatvalue3[0] > 0) { $semesteres = $requestid->semester($fid, $formatvalue3[0]); foreach ($semesteres as $s) { $mysemvalue = $s->fullname; } $sem_name = $mform->createElement('static', 'semester_name', get_string('semester_name', 'local_request'), $mysemvalue); $mform->insertElementBefore($sem_name, 'addschool'); } } }