ModalController.php 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990
  1. <?php
  2. namespace App\Http\Controllers;
  3. use Illuminate\Http\Request;
  4. use App\Http\Controllers\Controller;
  5. use App\Proposal;
  6. use App\User;
  7. use App\StudentProposal;
  8. use Hash;
  9. use DB;
  10. use Session;
  11. use Auth;
  12. use Mail;
  13. class ModalController extends Controller{
  14. public function get(Request $req, $name){
  15. $user = Auth::user();
  16. $carbon=new \Carbon\Carbon;
  17. $data=[
  18. 'name'=>$name,
  19. 'carbon'=>$carbon
  20. ];
  21. if($name=="apply_student_proposal"){
  22. $data['teacher'] = User::find($req->id);
  23. $data['student'] = User::find($user->id);
  24. $data['proposal']= Proposal::where('student_id',$user->id)->get();
  25. }elseif($name=="view_apply_proposal"){
  26. $data['std_proposal'] =StudentProposal::find($req->id);
  27. }elseif($name=="add_destination"){
  28. } else $name='default';
  29. return view("modal_pages.{$name}", $data);
  30. }
  31. public function post(Request $req, $name){
  32. $user=\Auth::user();
  33. $carbon=new \Carbon\Carbon;
  34. if($name=='apply_student_proposal'){
  35. $validator=\Validator::make($req->all(), [
  36. 'proposal_id'=>'required',
  37. 'startdate'=>'required',
  38. 'startmonth'=>'required',
  39. ]);
  40. if($validator->fails()){
  41. $errors=$validator->errors()->all();
  42. return response(['msg'=>$errors[0]], 422);
  43. }
  44. $student_proposal =new StudentProposal;
  45. $student_proposal->student_id =$req->student_id;
  46. $student_proposal->teacher_id =$req->teacher_id;
  47. $student_proposal->proposal_id =$req->proposal_id;
  48. $student_proposal->start_year =$req->startdate;
  49. $student_proposal->start_month =$req->startmonth;
  50. $student_proposal->created_by =$user->id;
  51. $student_proposal->student_apply_ref =studentRefNoGenerate();
  52. $student_proposal->save();
  53. $user =User::find($req->id);
  54. if($user){
  55. $data['name'] = $user->first_name.' '.$user->last_name;
  56. $user_mail =$user->email;
  57. $from = 'test@mail.com';
  58. Mail::send('email.send_apply_student_teacher_email',$data, function ($message) use ($user_mail,$from) {
  59. $message->from($from);
  60. $message->to($user_mail)->subject('New Email Send to you');
  61. });
  62. }
  63. return response(['msg'=>'Proposal send successfully.']);
  64. }
  65. return response(['msg'=>'No name argument found.'], 403);
  66. }
  67. }