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;
     }
 }
Example #2
0
 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());
 }