BusinessBioLink.php 3.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101
  1. <?php
  2. namespace App\Http\Controllers;
  3. use App\Helpers\CommonMethods;
  4. use App\Models\BusinessBioLinks;
  5. use App\Models\BusinessBioMetaLinks;
  6. use App\Models\Restaurants;
  7. use Carbon\Carbon;
  8. use Illuminate\Http\Request;
  9. use Illuminate\Support\Facades\Storage;
  10. use Illuminate\Support\Str;
  11. use Image;
  12. use File;
  13. class BusinessBioLink extends Controller
  14. {
  15. //
  16. public function index(){
  17. $resto_id = CommonMethods::getRestuarantID();
  18. $businessLinks = BusinessBioMetaLinks::with('business_links')->where('resto_id',$resto_id)->first();
  19. return view('bio-link.bio-links',['businessLinks'=>$businessLinks]);
  20. }
  21. public function save_bio_link(Request $request){
  22. $social_media_type = $request->social_media_type;
  23. $social_media_link = $request->social_media_link;
  24. $social_label = $request->social_label;
  25. $resto_id = CommonMethods::getRestuarantID();
  26. if(count($social_media_type) > 0 && count($social_media_link) > 0){
  27. $businessMeta = BusinessBioMetaLinks::where('resto_id',$resto_id)->first();
  28. if(!isset($businessMeta))
  29. $businessMeta = new BusinessBioMetaLinks();
  30. $businessMeta->resto_id = $resto_id;
  31. $backgroundImage = "";
  32. if($request->hasFile('background_image')) {
  33. $resto = Restaurants::find($resto_id);
  34. $bg_image = $request->file('background_image');
  35. $file_name = "social-bg-image".'-'.time().'-'.$resto_id.'-'.rand(1000,9999);
  36. $extension = $bg_image->getClientOriginalExtension();
  37. $allow_extensions = ['jpg','jpeg'];
  38. if(!in_array(strtolower($extension),$allow_extensions)){
  39. return response()->json(array('type' => 'error', 'message' => "Only jpg, jpeg extensions are allowed."),200);
  40. exit;
  41. }
  42. Storage::disk('logo')->put($file_name.'.'.$extension, File::get($bg_image));
  43. $destinationPath = public_path('/uploads/logo/');
  44. $img = Image::make($destinationPath . '/' . $file_name.'.'.$extension)->resize(1400, null, function ($constraint) {
  45. $constraint->aspectRatio();
  46. });
  47. $img->save($destinationPath . '/' . $file_name.'.'.$extension);
  48. /* $img = Image::make($destinationPath . '/' . $file_name.'.'.$extension)->resize(85, null, function ($constraint) {
  49. $constraint->aspectRatio();
  50. });
  51. $img->save($destinationPath . '/thumbnails/' . $file_name.'.'.$extension);*/
  52. $file = public_path('/uploads/logo/'.$file_name.'.'.$extension);
  53. $result = CommonMethods::uploadFileToAWSCDN('meemapp-order',$resto_id, \Illuminate\Support\Str::slug($resto->name),$file,$file_name);
  54. $backgroundImage = $result['url'];
  55. $businessMeta->background_image = $backgroundImage;
  56. }
  57. $businessMeta->save();
  58. $meta_id = $businessMeta->id;
  59. BusinessBioLinks::where('resto_id',$resto_id)->delete();
  60. foreach($social_media_type as $k=>$value){
  61. if(!empty($social_media_link[$k])){
  62. $socialLink = new BusinessBioLinks();
  63. $socialLink->resto_id = $resto_id;
  64. $socialLink->bio_link_meta_id = $meta_id;
  65. $socialLink->social_type = $value;
  66. $socialLink->social_link = $social_media_link[$k];
  67. $socialLink->social_label = $social_label[$k];
  68. $socialLink->status = 1;
  69. $socialLink->save();
  70. }
  71. }
  72. return response()->json(array('type'=>'success','message'=>'Links are saved'),200);
  73. }
  74. return response()->json(array('type'=>'error','message'=>'No Links are found with request'),200);
  75. }
  76. }