public function promoteNow() { $returnResponse = array(); $promote = Input::get('promote'); if (count($promote) > 0) { $studentIdList = array(); $studentDetailsList = array(); while (list(, $value) = each($promote)) { $studentIdList[] = $value['id']; } $users = User::whereIn('id', $studentIdList)->get(); foreach ($users as $value) { if (studentAcademicYears::where('studentId', $value->id)->where('academicYearId', $promote[$value->id]['acYear'])->count() > 0) { $returnResponse[] = array("id" => $value->id, "fullName" => $value->fullName, "status" => "User already been in that academic year before"); } else { $studentAcademicYears = new studentAcademicYears(); $studentAcademicYears->studentId = $value->id; $studentAcademicYears->academicYearId = $promote[$value->id]['acYear']; $studentAcademicYears->classId = $promote[$value->id]['class']; $studentAcademicYears->save(); User::where('id', $value->id)->update(['studentClass' => $promote[$value->id]['class'], 'studentAcademicYear' => $promote[$value->id]['acYear']]); $returnResponse[] = array("id" => $value->id, "fullName" => $value->fullName, "status" => "User promoted successfully"); } } return $returnResponse; } }
function edit($id) { if ($this->data['users']->role != "admin") { exit; } if (User::where('username', trim(Input::get('username')))->where('id', '<>', $id)->count() > 0) { return $this->panelInit->apiOutput(false, $this->panelInit->language['editStudent'], $this->panelInit->language['usernameUsed']); } if (User::where('email', Input::get('email'))->where('id', '<>', $id)->count() > 0) { return $this->panelInit->apiOutput(false, $this->panelInit->language['editStudent'], $this->panelInit->language['mailUsed']); } $User = User::find($id); $User->email = Input::get('email'); $User->username = Input::get('username'); $User->fullName = Input::get('fullName'); if (Input::get('password') != "") { $User->password = Hash::make(Input::get('password')); } $User->studentRollId = Input::get('studentRollId'); $User->gender = Input::get('gender'); $User->address = Input::get('address'); $User->phoneNo = Input::get('phoneNo'); $User->mobileNo = Input::get('mobileNo'); $User->studentClass = Input::get('studentClass'); $User->transport = Input::get('transport'); if (Input::get('birthday') != "") { $birthday = explode("/", Input::get('birthday')); $birthday = mktime(0, 0, 0, $birthday['0'], $birthday['1'], $birthday['2']); $User->birthday = $birthday; } if (Input::hasFile('photo')) { $fileInstance = Input::file('photo'); $newFileName = "profile_" . $User->id . ".jpg"; $file = $fileInstance->move('uploads/profile/', $newFileName); $User->photo = "profile_" . $User->id . ".jpg"; } $User->save(); if (input::has('academicYear')) { $studentAcademicYears = input::get('academicYear'); $academicYear = studentAcademicYears::where('studentId', $id)->get(); foreach ($academicYear as $value) { if (isset($studentAcademicYears[$value->academicYearId]) and $studentAcademicYears[$value->academicYearId] != $value->classId) { $studentAcademicYearsUpdate = studentAcademicYears::where('studentId', $User->id)->where('academicYearId', $value->academicYearId)->first(); $studentAcademicYearsUpdate->classId = $studentAcademicYears[$value->academicYearId]; $studentAcademicYearsUpdate->save(); attendance::where('classId', $value->classId)->where('studentId', $User->id)->update(['classId' => $studentAcademicYears[$value->academicYearId]]); examMarks::where('classId', $value->classId)->where('studentId', $User->id)->update(['classId' => $studentAcademicYears[$value->academicYearId]]); if ($value->academicYearId == $User->studentAcademicYear) { $User->studentClass = $studentAcademicYears[$value->academicYearId]; $User->save(); } } } } return $this->panelInit->apiOutput(true, $this->panelInit->language['editStudent'], $this->panelInit->language['studentModified'], $User->toArray()); }