Beispiel #1
0
 public function getFirstNameWithDegree()
 {
     $degree = Degree::where('user_id', $this->id)->where('primary_degree', 1)->first();
     $degree_type = "";
     switch ($degree->type) {
         case "ba":
             $degree_type = "BA";
             break;
         case "bcmp":
             $degree_type = "BCMP";
             break;
         case "bfa":
             $degree_type = "BFA";
             break;
         case "bphe":
             $degree_type = "BPHE";
             break;
         case "bs":
             $degree_type = "BSc";
             break;
         case "bsce":
             $degree_type = "BScE";
             break;
         case "bcomm":
             $degree_type = "BComm";
             break;
         case "msc":
             $degree_type = "MSc";
             break;
         case "phd":
             $degree_type = "PhD";
             break;
     }
     return $this->first_name . ' (' . $degree_type . " '" . substr(strval($degree->year), 2) . ')';
 }
Beispiel #2
0
 Route::post('/profile', array('middleware' => 'auth', function (Request $request) {
     $data = $request->all();
     $validator = \Illuminate\Support\Facades\Validator::make($request->all(), ['first_name' => 'required|max:255', 'last_name' => 'required|max:255', 'email' => 'required|email|max:255|unique:users,email,' . Auth::id(), 'phone_number' => 'required', 'num_degrees' => 'required|numeric|integer|min:0|max:4', 'degree_year_one' => 'required|numeric|integer|min:1920|max:2020', 'degree_faculty_one' => 'required|in:arts_and_science,education,engineering_and_applied_science,health_science,law,business,graduate_studies,policy_studies', 'degree_type_one' => 'required|in:ba,bcmp,bfa,bphe,bs,bsce,bcomm,msc,phd', 'degree_year_two' => 'required_if:num_degrees,2|required_if:num_degrees,3|required_if:num_degrees,4|numeric|integer|min:1920|max:2020', 'degree_faculty_two' => 'required_if:num_degrees,2|required_if:num_degrees,3|required_if:num_degrees,4|in:arts_and_science,education,engineering_and_applied_science,health_science,law,business,graduate_studies,policy_studies', 'degree_type_two' => 'required_if:num_degrees,2|required_if:num_degrees,3|required_if:num_degrees,4|in:ba,bcmp,bfa,bphe,bs,bsce,bcomm,msc,phd', 'degree_year_three' => 'required_if:num_degrees,3|required_if:num_degrees,4|numeric|integer|min:1920|max:2020', 'degree_faculty_three' => 'required_if:num_degrees,3|required_if:num_degrees,4|in:arts_and_science,education,engineering_and_applied_science,health_science,law,business,graduate_studies,policy_studies', 'degree_type_three' => 'required_if:num_degrees,3|required_if:num_degrees,4|in:ba,bcmp,bfa,bphe,bs,bsce,bcomm,msc,phd', 'degree_year_four' => 'required_if:num_degrees,4|numeric|integer|min:1920|max:2020', 'degree_faculty_four' => 'required_if:num_degrees,4|in:arts_and_science,education,engineering_and_applied_science,health_science,law,business,graduate_studies,policy_studies', 'degree_type_four' => 'required_if:num_degrees,4|in:ba,bcmp,bfa,bphe,bs,bsce,bcomm,msc,phd']);
     if ($validator->fails()) {
         return redirect(url('/profile'))->withInput()->withErrors($validator);
     }
     /* Update the user account */
     $user = User::find(Auth::id());
     $user->first_name = $data['first_name'];
     $user->last_name = $data['last_name'];
     $user->email = $data['email'];
     $user->phone_number = $data['phone_number'];
     $user->number_of_degrees = $data['num_degrees'];
     $user->save();
     /* Scary! Delete all the existing degrees */
     $degrees = \App\Degree::where('user_id', $user->id)->orderBy('id', 'asc')->get();
     foreach ($degrees as $degree) {
         $degree->delete();
     }
     /* Recreate the degrees in the same way as AuthController */
     $num_degree_str = ['one', 'two', 'three', 'four'];
     for ($i = 0; $i < $data['num_degrees']; $i++) {
         $degree = new Degree();
         $degree->year = $data['degree_year_' . $num_degree_str[$i]];
         $degree->user_id = $user->id;
         $degree->faculty = $data['degree_faculty_' . $num_degree_str[$i]];
         $degree->type = $data['degree_type_' . $num_degree_str[$i]];
         if ($i == 0) {
             $degree->primary_degree = true;
         } else {
             $degree->primary_degree = false;
Beispiel #3
0
 public function addDegree(Request $request, Skill $skill)
 {
     //        if(!$request->hasFile('sample_file')) return response('No file was sent',404);
     $validator = Validator::make($request->all(), ['sample_file' => 'required | image']);
     if ($validator->fails()) {
         return ['hasCallback' => 0, 'callback' => '', 'hasMsg' => 1, 'msg' => trans('profile.invalidDegree'), 'msgType' => 'danger', 'returns' => ''];
     }
     $file = $request->file('sample_file');
     $input = $request->except('sample_file');
     $user = Auth::user();
     $extension = $file->getClientOriginalExtension();
     $base_name = $user->id . str_random(20);
     $imageName = $base_name . '.' . $extension;
     $file->move(public_path() . '/img/files/' . $user->id . '/', $imageName);
     $this->ImageProccess($base_name, $extension, $user, true);
     // resize and add watermark
     $real_name = $file->getClientOriginalName();
     $size = $file->getClientSize() / (1024 * 1024);
     //calculate the file size in MB
     $degree = $skill->degrees()->create($input);
     Degree::where('id', $degree->id)->first()->files()->create(['user_id' => $user->id, 'real_name' => $real_name, 'name' => $user->id . '/' . $imageName, 'size' => $size]);
     $input['file'] = $imageName;
     return ['hasCallback' => '1', 'callback' => 'skill_degrees', 'hasMsg' => 0, 'msg' => '', 'returns' => $skill->degrees()->with('files')->get()];
 }