Compare commits
57 Commits
Author | SHA1 | Date |
---|---|---|
tribikram | 261c2a7830 | 2 years ago |
Mahesh Sharma | 05224827b2 | 2 years ago |
tribikram | d8f54dde16 | 2 years ago |
tribikram | eefca9f805 | 2 years ago |
Mahesh Sharma | 03a6955528 | 2 years ago |
Mahesh Sharma | 25ba8f6b78 | 2 years ago |
Mahesh Sharma | a21bc7dc07 | 2 years ago |
Mahesh Sharma | 80739d640b | 2 years ago |
Mahesh Sharma | 8682614dcc | 2 years ago |
tribikram | adc6170d09 | 2 years ago |
Mahesh Sharma | c24c537779 | 2 years ago |
Mahesh Sharma | afe69b3ece | 2 years ago |
tribikram | ccb1885902 | 2 years ago |
Mahesh Sharma | 5cdf8d2d80 | 2 years ago |
Mahesh Sharma | a02f4c55ea | 2 years ago |
Mahesh Sharma | 71ba48df89 | 2 years ago |
tribikram | 04a6dc0ec7 | 2 years ago |
tribikram | b6c5010521 | 2 years ago |
Mahesh Sharma | cb9d3aa285 | 2 years ago |
Mahesh Sharma | a6e81c2200 | 2 years ago |
tribikram | dcad18e339 | 2 years ago |
tribikram | ebc821b0d5 | 2 years ago |
tribikram | 4aacfc0308 | 2 years ago |
Mahesh Sharma | c3b6a866fb | 2 years ago |
Mahesh Sharma | b486862ed7 | 2 years ago |
tribikram | a809b34a7b | 2 years ago |
Mahesh Sharma | d250c19200 | 2 years ago |
tribikram | f4ed183a9a | 2 years ago |
Mahesh Sharma | a365114914 | 2 years ago |
Mahesh Sharma | 29990fe901 | 2 years ago |
tribikram | ea8c7325c3 | 2 years ago |
tribikram | 6036444980 | 2 years ago |
Mahesh Sharma | ee0ca8ea1d | 2 years ago |
Mahesh Sharma | d75688595a | 2 years ago |
Mahesh Sharma | c2cae4470c | 2 years ago |
tribikram | 99fb3be395 | 2 years ago |
tribikram | b64e6fcdd6 | 2 years ago |
Mahesh Sharma | 05a0def7f3 | 2 years ago |
Mahesh Sharma | 2b0b516388 | 2 years ago |
Mahesh Sharma | 4ec8e1e9e4 | 2 years ago |
tribikram | a68301a942 | 2 years ago |
tribikram | 47f997cadc | 2 years ago |
tribikram | 0d4c1b560b | 2 years ago |
Mahesh Sharma | 55ee2f3c11 | 2 years ago |
Mahesh Sharma | a5d87fdcf7 | 2 years ago |
Mahesh Sharma | 71f113a5e6 | 2 years ago |
tribikram | e1a6b3babb | 2 years ago |
tribikram | a09e98af9b | 2 years ago |
tribikram | 3e9c93f076 | 2 years ago |
Mahesh Sharma | 9cf20e3473 | 2 years ago |
tribikram | 12e28b6465 | 2 years ago |
tribikram | 32cabf31c5 | 2 years ago |
Mahesh Sharma | 094ad44531 | 2 years ago |
Mahesh Sharma | 5f2ec796c8 | 2 years ago |
tribikram | a9e4ec15ca | 2 years ago |
Mahesh Sharma | 6755783f66 | 2 years ago |
Mahesh Sharma | e978d94232 | 2 years ago |
@ -0,0 +1,265 @@ |
|||||||
|
<?php |
||||||
|
|
||||||
|
namespace App\Http\Controllers\Admin; |
||||||
|
|
||||||
|
use App\Http\Controllers\Controller; |
||||||
|
use App\Models\VisaService; |
||||||
|
use App\Models\ServicePoint; |
||||||
|
use App\Models\Setting; |
||||||
|
use Illuminate\Http\Request; |
||||||
|
use App\Models\User; |
||||||
|
use Illuminate\Support\Facades\Auth; |
||||||
|
use Illuminate\Support\Facades\Session; |
||||||
|
|
||||||
|
class VisaServiceController extends Controller |
||||||
|
{ |
||||||
|
/** |
||||||
|
* Display a listing of the resource. |
||||||
|
* |
||||||
|
* @return \Illuminate\Http\Response |
||||||
|
*/ |
||||||
|
|
||||||
|
protected $view = 'admin.visa_service.'; |
||||||
|
protected $redirect = 'admin/visa_services'; |
||||||
|
|
||||||
|
public function index() |
||||||
|
{ |
||||||
|
$services = VisaService::orderBy('order_by','ASC'); |
||||||
|
|
||||||
|
if(\request('name')){ |
||||||
|
$key = \request('name'); |
||||||
|
$services = $services->where('name','like','%'.$key.'%'); |
||||||
|
} |
||||||
|
if(\request('status')){ |
||||||
|
$key = \request('status'); |
||||||
|
$services = $services->where('status',$key); |
||||||
|
} |
||||||
|
$services = $services->paginate(config('custom.per_page')); |
||||||
|
return view($this->view.'index',compact('services')); |
||||||
|
} |
||||||
|
|
||||||
|
/** |
||||||
|
* Show the form for creating a new resource. |
||||||
|
* |
||||||
|
* @return \Illuminate\Http\Response |
||||||
|
*/ |
||||||
|
public function create() |
||||||
|
{ |
||||||
|
return view($this->view.'create'); |
||||||
|
} |
||||||
|
|
||||||
|
/** |
||||||
|
* Store a newly created resource in storage. |
||||||
|
* |
||||||
|
* @param \Illuminate\Http\Request $request |
||||||
|
* @return \Illuminate\Http\Response |
||||||
|
*/ |
||||||
|
public function store(Request $request) |
||||||
|
{ |
||||||
|
|
||||||
|
$this->validate(\request(),[ |
||||||
|
'name' => 'required', |
||||||
|
'seo_title' => 'required', |
||||||
|
'short_description' => 'required', |
||||||
|
'keywords'=>'required', |
||||||
|
'icon' => 'file|mimes:jpeg,png,jpg,svg,' |
||||||
|
]); |
||||||
|
$service = new VisaService(); |
||||||
|
$service->name = \request('name'); |
||||||
|
// $service->image = \request('image'); |
||||||
|
// $service->image_title = \request('image_title'); |
||||||
|
// $service->top_description = \request('top_description'); |
||||||
|
// $service->image_description = \request('image_description'); |
||||||
|
// $service->bottom_description = \request('bottom_description'); |
||||||
|
$service->seo_description = strip_tags(\request('seo_description')); |
||||||
|
$service->seo_title = \request('seo_title'); |
||||||
|
$service->keywords = \request('keywords'); |
||||||
|
// $service->icon = \request('icon'); |
||||||
|
$service->meta_keywords = strip_tags(\request('meta_keywords')); |
||||||
|
$service->short_description = strip_tags(\request('short_description')); |
||||||
|
// $service->point_title = \request('point_title'); |
||||||
|
// $service->description_title = \request('description_title'); |
||||||
|
$service->status = \request('status'); |
||||||
|
$service->order_by = \request('order_by'); |
||||||
|
// $service->image_alt = \request('image_alt'); |
||||||
|
$service->slug = Setting::create_slug(\request('seo_title')); |
||||||
|
|
||||||
|
|
||||||
|
if($request->hasFile('icon')){ |
||||||
|
$extension = \request()->file('icon')->getClientOriginalExtension(); |
||||||
|
$image_folder_type = array_search('visa_service',config('custom.image_folders')); //for image saved in folder |
||||||
|
|
||||||
|
$count = rand(100,999); |
||||||
|
|
||||||
|
$out_put_path = User::save_image(\request('icon'),$extension,$count,$image_folder_type); |
||||||
|
is_array($out_put_path) ? $service->icon = $out_put_path[0] : $service->icon = $out_put_path; |
||||||
|
} |
||||||
|
if($request->hasFile('image')){ |
||||||
|
$extension = \request()->file('image')->getClientOriginalExtension(); |
||||||
|
$image_folder_type = array_search('visa_service',config('custom.image_folders')); //for image saved in folder |
||||||
|
|
||||||
|
$count = rand(100,999); |
||||||
|
|
||||||
|
$out_put_path = User::save_image(\request('image'),$extension,$count,$image_folder_type); |
||||||
|
is_array($out_put_path) ? $service->image = $out_put_path[0] : $service->image = $out_put_path; |
||||||
|
} |
||||||
|
|
||||||
|
if($service->save()){ |
||||||
|
// $points = $request->points; |
||||||
|
// foreach($points as $point){ |
||||||
|
// $service_point = new ServicePoint(); |
||||||
|
// $service_point->service_id = $service->id; |
||||||
|
// $service_point->point = $point; |
||||||
|
// $service_point->save(); |
||||||
|
// } |
||||||
|
Session::flash('success','Visa Service has been created!'); |
||||||
|
return redirect($this->redirect); |
||||||
|
|
||||||
|
} |
||||||
|
|
||||||
|
} |
||||||
|
|
||||||
|
/** |
||||||
|
* Display the specified resource. |
||||||
|
* |
||||||
|
* @param int $id |
||||||
|
* @return \Illuminate\Http\Response |
||||||
|
*/ |
||||||
|
public function show($id) |
||||||
|
{ |
||||||
|
$service = new VisaService(); |
||||||
|
|
||||||
|
|
||||||
|
$service = $service->findorfail($id); |
||||||
|
|
||||||
|
|
||||||
|
return view($this->view . 'show', compact('service')); |
||||||
|
} |
||||||
|
|
||||||
|
/** |
||||||
|
* Show the form for editing the specified resource. |
||||||
|
* |
||||||
|
* @param int $id |
||||||
|
* @return \Illuminate\Http\Response |
||||||
|
*/ |
||||||
|
public function edit($id) |
||||||
|
{ |
||||||
|
$service = new VisaService(); |
||||||
|
|
||||||
|
|
||||||
|
$service = $service->findorfail($id); |
||||||
|
|
||||||
|
|
||||||
|
return view($this->view . 'edit', compact('service')); |
||||||
|
} |
||||||
|
|
||||||
|
/** |
||||||
|
* Update the specified resource in storage. |
||||||
|
* |
||||||
|
* @param \Illuminate\Http\Request $request |
||||||
|
* @param int $id |
||||||
|
* @return \Illuminate\Http\Response |
||||||
|
*/ |
||||||
|
public function update(Request $request, $id) |
||||||
|
{ |
||||||
|
$this->validate(\request(),[ |
||||||
|
|
||||||
|
'name' => 'required', |
||||||
|
'short_description' => 'required', |
||||||
|
'seo_title' => 'required', |
||||||
|
'keywords'=>'required', |
||||||
|
|
||||||
|
]); |
||||||
|
$service = new VisaService(); |
||||||
|
$service = $service->findorfail($id); |
||||||
|
$service->name = \request('name'); |
||||||
|
$service->short_description = \request('short_description'); |
||||||
|
$service->seo_description = \request('seo_description'); |
||||||
|
$service->seo_title = \request('seo_title'); |
||||||
|
$service->keywords = \request('keywords'); |
||||||
|
|
||||||
|
$service->meta_keywords = \request('meta_keywords'); |
||||||
|
$service->status = \request('status'); |
||||||
|
$service->order_by = \request('order_by'); |
||||||
|
$service->slug = Setting::create_slug(\request('seo_title')); |
||||||
|
|
||||||
|
if($request->hasFile('icon')){ |
||||||
|
|
||||||
|
$extension = \request()->file('icon')->getClientOriginalExtension(); |
||||||
|
|
||||||
|
$image_folder_type = array_search('visa_service',config('custom.image_folders')); //for image saved in folder |
||||||
|
$count = rand(100,999); |
||||||
|
$out_put_path = User::save_image(\request('icon'),$extension,$count,$image_folder_type); |
||||||
|
|
||||||
|
|
||||||
|
if (is_file(public_path().'/'.$service->icon) && file_exists(public_path().'/'.$service->icon)){ |
||||||
|
unlink(public_path().'/'.$service->icon); |
||||||
|
} |
||||||
|
is_array($out_put_path) ? $service->icon = $out_put_path[0] : $service->icon = $out_put_path; |
||||||
|
|
||||||
|
|
||||||
|
} |
||||||
|
if($request->hasFile('image')){ |
||||||
|
|
||||||
|
$extension = \request()->file('image')->getClientOriginalExtension(); |
||||||
|
|
||||||
|
$image_folder_type = array_search('visa_service',config('custom.image_folders')); //for image saved in folder |
||||||
|
$count = rand(100,999); |
||||||
|
$out_put_path = User::save_image(\request('image'),$extension,$count,$image_folder_type); |
||||||
|
|
||||||
|
|
||||||
|
if (is_file(public_path().'/'.$service->image) && file_exists(public_path().'/'.$service->image)){ |
||||||
|
unlink(public_path().'/'.$service->image); |
||||||
|
} |
||||||
|
is_array($out_put_path) ? $service->image = $out_put_path[0] : $service->image = $out_put_path; |
||||||
|
|
||||||
|
|
||||||
|
} |
||||||
|
if($service->update()){ |
||||||
|
Session::flash('success','Visa Service has been successfully updated!'); |
||||||
|
return redirect($this->redirect); |
||||||
|
// $service_point = $service->service_point(); |
||||||
|
// $service_point->delete(); |
||||||
|
// $points = $request->points; |
||||||
|
// foreach($points as $point){ |
||||||
|
// $service_point = new ServicePoint(); |
||||||
|
// $service_point->service_id = $service->id; |
||||||
|
// $service_point->point = $point; |
||||||
|
// $service_point->save(); |
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
} |
||||||
|
|
||||||
|
|
||||||
|
} |
||||||
|
|
||||||
|
/** |
||||||
|
* Remove the specified resource from storage. |
||||||
|
* |
||||||
|
* @param int $id |
||||||
|
* @return \Illuminate\Http\Response |
||||||
|
*/ |
||||||
|
public function delete($id) |
||||||
|
{ |
||||||
|
$setting=VisaService::findorfail($id); |
||||||
|
if (is_file(public_path().'/'.$setting->icon) && file_exists(public_path().'/'.$setting->icon)){ |
||||||
|
unlink(public_path().'/'.$setting->icon); |
||||||
|
} |
||||||
|
$setting->delete(); |
||||||
|
Session::flash('success','Service has been sucessfully deleted!'); |
||||||
|
return redirect($this->redirect); |
||||||
|
//dd("here"); |
||||||
|
} |
||||||
|
|
||||||
|
|
||||||
|
public function service_point($service_point_id){ |
||||||
|
if(Auth::user()){ |
||||||
|
$setting = VisaServicePoint::findorfail($service_point_id); |
||||||
|
$setting->delete(); |
||||||
|
return response()->json(['service_point_id' => $service_point_id]); |
||||||
|
} |
||||||
|
|
||||||
|
} |
||||||
|
} |
@ -0,0 +1,281 @@ |
|||||||
|
<?php |
||||||
|
|
||||||
|
namespace App\Http\Controllers\Admin; |
||||||
|
|
||||||
|
use App\Http\Controllers\Controller; |
||||||
|
use App\Models\VisaService; |
||||||
|
use App\Models\VisaServiceSection; |
||||||
|
use App\Models\VisaServiceSectionPoint; |
||||||
|
use App\Models\Setting; |
||||||
|
use Illuminate\Http\Request; |
||||||
|
use App\Models\User; |
||||||
|
use Illuminate\Support\Facades\Auth; |
||||||
|
use Illuminate\Support\Facades\Session; |
||||||
|
|
||||||
|
class VisaServiceSectionController extends Controller |
||||||
|
{ |
||||||
|
/** |
||||||
|
* Display a listing of the resource. |
||||||
|
* |
||||||
|
* @return \Illuminate\Http\Response |
||||||
|
*/ |
||||||
|
|
||||||
|
protected $view = 'admin.visa_service_section.'; |
||||||
|
protected $redirect = 'admin/visa_services/{id}/sections'; |
||||||
|
|
||||||
|
public function index($id) |
||||||
|
{ |
||||||
|
$service_name = VisaService::findorfail($id)->name; |
||||||
|
$service_section = VisaServiceSection::where('visa_service_id',$id); |
||||||
|
|
||||||
|
|
||||||
|
// if(\request('name')){ |
||||||
|
// $key = \request('name'); |
||||||
|
// $services = $services->where('name','like','%'.$key.'%'); |
||||||
|
// } |
||||||
|
// if(\request('status')){ |
||||||
|
// $key = \request('status'); |
||||||
|
// $services = $services->where('status',$key); |
||||||
|
// } |
||||||
|
$service_sections = $service_section->paginate(config('custom.per_page')); |
||||||
|
return view($this->view.'index',compact('service_sections','service_name','id')); |
||||||
|
} |
||||||
|
|
||||||
|
/** |
||||||
|
* Show the form for creating a new resource. |
||||||
|
* |
||||||
|
* @return \Illuminate\Http\Response |
||||||
|
*/ |
||||||
|
public function create($id) |
||||||
|
{ |
||||||
|
$service_name = VisaService::findorfail($id)->name; |
||||||
|
return view($this->view.'create',compact('service_name','id')); |
||||||
|
} |
||||||
|
|
||||||
|
/** |
||||||
|
* Store a newly created resource in storage. |
||||||
|
* |
||||||
|
* @param \Illuminate\Http\Request $request |
||||||
|
* @return \Illuminate\Http\Response |
||||||
|
*/ |
||||||
|
public function store(Request $request,$id) |
||||||
|
{ |
||||||
|
|
||||||
|
|
||||||
|
$this->validate(\request(),[ |
||||||
|
|
||||||
|
// 'title' => 'required', |
||||||
|
'status' => 'required', |
||||||
|
'order_by' => 'required' |
||||||
|
|
||||||
|
]); |
||||||
|
$service_section = new VisaServiceSection(); |
||||||
|
|
||||||
|
$service_section->right_title = \request('right_title'); |
||||||
|
$service_section->right_sub_title = \request('right_sub_title'); |
||||||
|
$service_section->left_title = \request('left_title'); |
||||||
|
$service_section->left_sub_title = \request('left_sub_title'); |
||||||
|
$service_section->top_description = strip_tags(\request('top_description')); |
||||||
|
$service_section->left_description = strip_tags(\request('left_description')); |
||||||
|
$service_section->point_title = strip_tags(\request('point_title')); |
||||||
|
$service_section->visa_length = strip_tags(\request('visa_length')); |
||||||
|
|
||||||
|
$service_section->visa_service_id = $id; |
||||||
|
$service_section->status = \request('status'); |
||||||
|
$service_section->order_by = \request('order_by'); |
||||||
|
// $service->image_alt = \request('image_alt'); |
||||||
|
// $service->slug = Setting::create_slug(\request('seo_title')); |
||||||
|
|
||||||
|
|
||||||
|
if($request->hasFile('image')){ |
||||||
|
$extension = \request()->file('image')->getClientOriginalExtension(); |
||||||
|
$image_folder_type = array_search('visa_service',config('custom.image_folders')); //for image saved in folder |
||||||
|
// dd($image_folder_type); |
||||||
|
$count = rand(100,999); |
||||||
|
$out_put_path = User::save_image(\request('image'),$extension,$count,$image_folder_type); |
||||||
|
$image_path = $out_put_path[0]; |
||||||
|
$service_section->image = $image_path; |
||||||
|
} |
||||||
|
|
||||||
|
|
||||||
|
if($service_section->save()){ |
||||||
|
$points = $request->points; |
||||||
|
// $point_descriptions = $request->point_descriptions ?? []; |
||||||
|
// $icons = $request->icons ?? []; |
||||||
|
|
||||||
|
if($points[0] != null){ |
||||||
|
|
||||||
|
foreach($points as $key => $point){ |
||||||
|
|
||||||
|
$service_section_point = new VisaServiceSectionPoint(); |
||||||
|
|
||||||
|
$service_section_point->visa_service_section_id = $service_section->id; |
||||||
|
|
||||||
|
$service_section_point->point = $point; |
||||||
|
$service_section_point->save(); |
||||||
|
} |
||||||
|
} |
||||||
|
Session::flash('success','Visa Service Section has been created!'); |
||||||
|
return redirect('admin/visa_services/'.$id.'/sections'); |
||||||
|
|
||||||
|
} |
||||||
|
|
||||||
|
} |
||||||
|
|
||||||
|
/** |
||||||
|
* Display the specified resource. |
||||||
|
* |
||||||
|
* @param int $id |
||||||
|
* @return \Illuminate\Http\Response |
||||||
|
*/ |
||||||
|
public function show($id,$secId) |
||||||
|
{ |
||||||
|
|
||||||
|
|
||||||
|
// $service = new Service(); |
||||||
|
// $service_section = new ServiceSection(); |
||||||
|
$service = VisaService::findorfail($id); |
||||||
|
|
||||||
|
$service_section = VisaServiceSection::findorfail($secId); |
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
return view($this->view . 'show', compact('service','service_section')); |
||||||
|
} |
||||||
|
|
||||||
|
/** |
||||||
|
* Show the form for editing the specified resource. |
||||||
|
* |
||||||
|
* @param int $id |
||||||
|
* @return \Illuminate\Http\Response |
||||||
|
*/ |
||||||
|
public function edit($id,$secId) |
||||||
|
{ |
||||||
|
$service = new VisaService(); |
||||||
|
$service_section = new VisaServiceSection(); |
||||||
|
$service = $service->findorfail($id); |
||||||
|
$service_section = $service_section->findorfail($secId); |
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
return view($this->view . 'edit', compact('service','service_section')); |
||||||
|
} |
||||||
|
|
||||||
|
/** |
||||||
|
* Update the specified resource in storage. |
||||||
|
* |
||||||
|
* @param \Illuminate\Http\Request $request |
||||||
|
* @param int $id |
||||||
|
* @return \Illuminate\Http\Response |
||||||
|
*/ |
||||||
|
public function update(Request $request, $id, $secId) |
||||||
|
{ |
||||||
|
$this->validate(\request(),[ |
||||||
|
'top_description' => 'required', |
||||||
|
'status' => 'required', |
||||||
|
'order_by' => 'required' |
||||||
|
]); |
||||||
|
$service_section = VisaServiceSection::findOrFail($secId); |
||||||
|
$service_section->right_title = \request('right_title'); |
||||||
|
$service_section->right_sub_title = \request('right_sub_title'); |
||||||
|
$service_section->left_title = \request('left_title'); |
||||||
|
$service_section->left_sub_title = \request('left_sub_title'); |
||||||
|
$service_section->top_description = strip_tags(\request('top_description')); |
||||||
|
$service_section->left_description = strip_tags(\request('left_description')); |
||||||
|
$service_section->point_title = strip_tags(\request('point_title')); |
||||||
|
$service_section->visa_length = strip_tags(\request('visa_length')); |
||||||
|
|
||||||
|
$service_section->visa_service_id = $id; |
||||||
|
$service_section->status = \request('status'); |
||||||
|
$service_section->order_by = \request('order_by'); |
||||||
|
|
||||||
|
// if($request->hasFile('image')){ |
||||||
|
// $extension = \request()->file('image')->getClientOriginalExtension(); |
||||||
|
// $image_folder_type = array_search('service',config('custom.image_folders')); //for image saved in folder |
||||||
|
// $count = rand(100,999); |
||||||
|
// $out_put_path = User::save_image(\request('image'),$extension,$count,$image_folder_type); |
||||||
|
// $image_path = $out_put_path[0]; |
||||||
|
// if (is_file(public_path().'/'.$service_section->image) && file_exists(public_path().'/'.$service_section->image)){ |
||||||
|
// unlink(public_path().'/'.$service_section->image); |
||||||
|
// } |
||||||
|
// $service_section->image = $image_path; |
||||||
|
// } |
||||||
|
if($service_section->update()){ |
||||||
|
$points = $request->points; |
||||||
|
if($points[0] != null){ |
||||||
|
|
||||||
|
if($request['point_ids'] !== null){ |
||||||
|
|
||||||
|
foreach($request['point_ids'] as $key => $pid){ |
||||||
|
$service_section_point = new VisaServiceSectionPoint(); |
||||||
|
$service_section_point = $service_section_point->find($pid); |
||||||
|
// $service_section_point = ServiceSectionPoint::find($id); |
||||||
|
|
||||||
|
$service_section_point->point = $points[$key]; |
||||||
|
$service_section_point->update(); |
||||||
|
} |
||||||
|
}else{ |
||||||
|
foreach($points as $key => $point){ |
||||||
|
|
||||||
|
$service_section_point = new VisaServiceSectionPoint(); |
||||||
|
|
||||||
|
$service_section_point->visa_service_section_id = $service_section->id; |
||||||
|
|
||||||
|
$service_section_point->point = $point; |
||||||
|
$service_section_point->save(); |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
} |
||||||
|
// $service_point = $service_section->service_section_point(); |
||||||
|
// $service_point->delete(); |
||||||
|
// foreach($points as $key => $point){ |
||||||
|
|
||||||
|
// $service_section_point = new ServiceSectionPoint(); |
||||||
|
// $service_section_point->service_section_id = $service_section->id; |
||||||
|
// if(array_key_exists($key,$point_descriptions)){ |
||||||
|
// $service_section_point->point_description = $point_descriptions[$key]; |
||||||
|
// } |
||||||
|
// if(array_key_exists($key,$icons)){ |
||||||
|
// $extension = $icons[$key]->getClientOriginalExtension(); |
||||||
|
// $image_folder_type = array_search('service',config('custom.image_folders')); //for image saved in folder |
||||||
|
|
||||||
|
// $count = rand(100,999); |
||||||
|
|
||||||
|
// $out_put_path = User::save_image($icons[$key],$extension,$count,$image_folder_type); |
||||||
|
// is_array($out_put_path) ? $service_section_point->icon = $out_put_path[0] : $service_section_point->icon = $out_put_path; |
||||||
|
// // $service_section_point->icon = $points_descriptions[$key]; |
||||||
|
// } |
||||||
|
// $service_section_point->point = $point; |
||||||
|
// $service_section_point->update(); |
||||||
|
// } |
||||||
|
|
||||||
|
Session::flash('success','Visa Service Section has been successfully updated!'); |
||||||
|
return redirect('admin/visa_services/'.$id.'/sections'); |
||||||
|
|
||||||
|
} |
||||||
|
|
||||||
|
|
||||||
|
} |
||||||
|
|
||||||
|
/** |
||||||
|
* Remove the specified resource from storage. |
||||||
|
* |
||||||
|
* @param int $id |
||||||
|
* @return \Illuminate\Http\Response |
||||||
|
*/ |
||||||
|
public function destroy($id) |
||||||
|
{ |
||||||
|
// |
||||||
|
} |
||||||
|
|
||||||
|
public function service_point($service_point_id){ |
||||||
|
if(Auth::user()){ |
||||||
|
$setting = ServiceSectionPoint::findorfail($service_point_id); |
||||||
|
$setting->delete(); |
||||||
|
return response()->json(['service_point_id' => $service_point_id]); |
||||||
|
} |
||||||
|
|
||||||
|
} |
||||||
|
} |
@ -0,0 +1,14 @@ |
|||||||
|
<?php |
||||||
|
|
||||||
|
namespace App\Http\Controllers; |
||||||
|
|
||||||
|
use App\Models\NewsAndUpdate; |
||||||
|
use Illuminate\Http\Request; |
||||||
|
|
||||||
|
class NewsController extends Controller |
||||||
|
{ |
||||||
|
public function news_detail($slug){ |
||||||
|
$news = NewsAndUpdate::where('slug',$slug)->get(); |
||||||
|
return view('news_detail',compact('news')); |
||||||
|
} |
||||||
|
} |
@ -0,0 +1,33 @@ |
|||||||
|
<?php |
||||||
|
|
||||||
|
namespace App\Http\Controllers; |
||||||
|
|
||||||
|
use App\Models\Service; |
||||||
|
use App\Models\Accomodation; |
||||||
|
use App\Models\VisaService; |
||||||
|
use Illuminate\Http\Request; |
||||||
|
|
||||||
|
class ServiceController extends Controller |
||||||
|
{ |
||||||
|
public function single_service($slug){ |
||||||
|
$service = Service::where(['slug' => $slug,'status' => 1])->orderby('order_by','asc')->first(); |
||||||
|
$services = Service::where('status',1)->get(); |
||||||
|
// $accomodations = Accomodation::where('status',1)->get(); |
||||||
|
|
||||||
|
return view('service_view',compact('service','services')); |
||||||
|
} |
||||||
|
|
||||||
|
public function list(){ |
||||||
|
$services = Service::where('status',1)->get(); |
||||||
|
$visa_services = VisaService::where('status',1)->get(); |
||||||
|
return view('services',compact('services','visa_services')); |
||||||
|
} |
||||||
|
|
||||||
|
public function single_visa_service($slug){ |
||||||
|
$service = VisaService::where(['slug' => $slug,'status' => 1])->orderby('order_by','asc')->first(); |
||||||
|
$services = VisaService::where('status',1)->get(); |
||||||
|
// $accomodations = Accomodation::where('status',1)->get(); |
||||||
|
|
||||||
|
return view('service_detail',compact('service','services')); |
||||||
|
} |
||||||
|
} |
@ -0,0 +1,47 @@ |
|||||||
|
<?php |
||||||
|
|
||||||
|
namespace App\Http\Requests; |
||||||
|
|
||||||
|
use Illuminate\Foundation\Http\FormRequest; |
||||||
|
|
||||||
|
class ContactRequest extends FormRequest |
||||||
|
{ |
||||||
|
/** |
||||||
|
* Determine if the user is authorized to make this request. |
||||||
|
* |
||||||
|
* @return bool |
||||||
|
*/ |
||||||
|
public function authorize() |
||||||
|
{ |
||||||
|
return true; |
||||||
|
} |
||||||
|
|
||||||
|
/** |
||||||
|
* Get the validation rules that apply to the request. |
||||||
|
* |
||||||
|
* @return array<string, mixed> |
||||||
|
*/ |
||||||
|
public function rules() |
||||||
|
{ |
||||||
|
return [ |
||||||
|
'fullname' => ['required'], |
||||||
|
'phone' => ['required'], |
||||||
|
'email' => ['required'], |
||||||
|
'service_id' => ['required'], |
||||||
|
'entered_captcha_code' => ['required','same:displayed_captcha_code'] |
||||||
|
]; |
||||||
|
} |
||||||
|
|
||||||
|
public function messages(){ |
||||||
|
return[ |
||||||
|
|
||||||
|
'fullname.required' => 'Full name is required.', |
||||||
|
'phone.required' => 'Phone number is required.', |
||||||
|
'email.required' => 'Email is required.', |
||||||
|
'service_id.required' => 'Please select a service.', |
||||||
|
'entered_captcha_code.required' => 'Please enter captcha.', |
||||||
|
'entered_captcha_code.same' => 'Captcha is incorrect.' |
||||||
|
|
||||||
|
]; |
||||||
|
} |
||||||
|
} |
@ -0,0 +1,51 @@ |
|||||||
|
<?php |
||||||
|
|
||||||
|
namespace App\Http\Requests\Recruitment; |
||||||
|
|
||||||
|
use Illuminate\Foundation\Http\FormRequest; |
||||||
|
|
||||||
|
class ApplyRequest extends FormRequest |
||||||
|
{ |
||||||
|
/** |
||||||
|
* Determine if the user is authorized to make this request. |
||||||
|
* |
||||||
|
* @return bool |
||||||
|
*/ |
||||||
|
public function authorize() |
||||||
|
{ |
||||||
|
return true; |
||||||
|
} |
||||||
|
|
||||||
|
/** |
||||||
|
* Get the validation rules that apply to the request. |
||||||
|
* |
||||||
|
* @return array<string, mixed> |
||||||
|
*/ |
||||||
|
public function rules() |
||||||
|
{ |
||||||
|
return [ |
||||||
|
'full_name' => 'required', |
||||||
|
'phone' => 'required', |
||||||
|
'email' => 'required', |
||||||
|
'file' => 'required', |
||||||
|
'country' => 'required', |
||||||
|
'has_visa_permit' => 'required', |
||||||
|
'has_skill_assessed' => 'required', |
||||||
|
'entered_captcha_code' => ['required','same:displayed_captcha_code'] |
||||||
|
]; |
||||||
|
} |
||||||
|
public function messages() |
||||||
|
{ |
||||||
|
return [ |
||||||
|
'full_name.required' => 'Full name is required.', |
||||||
|
'phone.required' => 'Phone number is required.', |
||||||
|
'email.required' => 'Email is required.', |
||||||
|
'file.required' => 'Please upload your resume.', |
||||||
|
'country.required' => 'Please select your country.', |
||||||
|
'has_visa_permit.required' => 'Please specify your visa permit position.', |
||||||
|
'has_skill_assesed.required' => 'Please specify your TRA skill assessment.', |
||||||
|
'entered_captcha_code.required' => 'Please enter captcha.', |
||||||
|
'entered_captcha_code.same' => 'Captcha is incorrect.' |
||||||
|
]; |
||||||
|
} |
||||||
|
} |
@ -0,0 +1,45 @@ |
|||||||
|
<?php |
||||||
|
|
||||||
|
namespace App\Http\Requests\Recruitment; |
||||||
|
|
||||||
|
use Illuminate\Foundation\Http\FormRequest; |
||||||
|
|
||||||
|
class VacancyRequest extends FormRequest |
||||||
|
{ |
||||||
|
/** |
||||||
|
* Determine if the user is authorized to make this request. |
||||||
|
* |
||||||
|
* @return bool |
||||||
|
*/ |
||||||
|
public function authorize() |
||||||
|
{ |
||||||
|
return true; |
||||||
|
} |
||||||
|
|
||||||
|
/** |
||||||
|
* Get the validation rules that apply to the request. |
||||||
|
* |
||||||
|
* @return array<string, mixed> |
||||||
|
*/ |
||||||
|
public function rules() |
||||||
|
{ |
||||||
|
return [ |
||||||
|
'full_name' => 'required', |
||||||
|
'company' => 'required', |
||||||
|
'email' => 'required', |
||||||
|
'no_of_position' => 'required', |
||||||
|
'entered_captcha_code' => ['required','same:displayed_captcha_code'] |
||||||
|
]; |
||||||
|
} |
||||||
|
public function messages() |
||||||
|
{ |
||||||
|
return [ |
||||||
|
'full_name.required' => 'Full name is required.', |
||||||
|
'company.required' => 'Your company is required.', |
||||||
|
'email.required' => 'Email is required.', |
||||||
|
'no_of_position.required' => 'Number of position is required', |
||||||
|
'entered_captcha_code.required' => 'Please enter captcha.', |
||||||
|
'entered_captcha_code.same' => 'Captcha is incorrect.' |
||||||
|
]; |
||||||
|
} |
||||||
|
} |
@ -0,0 +1,15 @@ |
|||||||
|
<?php |
||||||
|
|
||||||
|
namespace App\Models; |
||||||
|
|
||||||
|
use Illuminate\Database\Eloquent\Factories\HasFactory; |
||||||
|
use Illuminate\Database\Eloquent\Model; |
||||||
|
|
||||||
|
class VisaService extends Model |
||||||
|
{ |
||||||
|
use HasFactory; |
||||||
|
|
||||||
|
public function visa_service_sections(){ |
||||||
|
return $this->hasMany(VisaServiceSection::class); |
||||||
|
} |
||||||
|
} |
@ -0,0 +1,18 @@ |
|||||||
|
<?php |
||||||
|
|
||||||
|
namespace App\Models; |
||||||
|
|
||||||
|
use Illuminate\Database\Eloquent\Factories\HasFactory; |
||||||
|
use Illuminate\Database\Eloquent\Model; |
||||||
|
|
||||||
|
class VisaServiceSection extends Model |
||||||
|
{ |
||||||
|
use HasFactory; |
||||||
|
|
||||||
|
public function visa_service(){ |
||||||
|
return $this->belongsTo(VisaService::class); |
||||||
|
} |
||||||
|
public function visa_service_section_point(){ |
||||||
|
return $this->hasMany(VisaServiceSectionPoint::class); |
||||||
|
} |
||||||
|
} |
@ -0,0 +1,16 @@ |
|||||||
|
<?php |
||||||
|
|
||||||
|
namespace App\Models; |
||||||
|
|
||||||
|
use Illuminate\Database\Eloquent\Factories\HasFactory; |
||||||
|
use Illuminate\Database\Eloquent\Model; |
||||||
|
|
||||||
|
class VisaServiceSectionPoint extends Model |
||||||
|
{ |
||||||
|
use HasFactory; |
||||||
|
|
||||||
|
public function visa_service_section() |
||||||
|
{ |
||||||
|
return $this->belongsTo(VisaServiceSection::class); |
||||||
|
} |
||||||
|
} |
@ -0,0 +1,33 @@ |
|||||||
|
<?php |
||||||
|
|
||||||
|
use Illuminate\Database\Migrations\Migration; |
||||||
|
use Illuminate\Database\Schema\Blueprint; |
||||||
|
use Illuminate\Support\Facades\Schema; |
||||||
|
|
||||||
|
class AddDesIconToServiceSectionPointsTable extends Migration |
||||||
|
{ |
||||||
|
/** |
||||||
|
* Run the migrations. |
||||||
|
* |
||||||
|
* @return void |
||||||
|
*/ |
||||||
|
public function up() |
||||||
|
{ |
||||||
|
Schema::table('service_section_points', function (Blueprint $table) { |
||||||
|
$table->string('point_description')->nullable(); |
||||||
|
$table->string('icon')->nullable(); |
||||||
|
}); |
||||||
|
} |
||||||
|
|
||||||
|
/** |
||||||
|
* Reverse the migrations. |
||||||
|
* |
||||||
|
* @return void |
||||||
|
*/ |
||||||
|
public function down() |
||||||
|
{ |
||||||
|
Schema::table('service_section_points', function (Blueprint $table) { |
||||||
|
// |
||||||
|
}); |
||||||
|
} |
||||||
|
} |
@ -0,0 +1,33 @@ |
|||||||
|
<?php |
||||||
|
|
||||||
|
use Illuminate\Database\Migrations\Migration; |
||||||
|
use Illuminate\Database\Schema\Blueprint; |
||||||
|
use Illuminate\Support\Facades\Schema; |
||||||
|
|
||||||
|
return new class extends Migration |
||||||
|
{ |
||||||
|
/** |
||||||
|
* Run the migrations. |
||||||
|
* |
||||||
|
* @return void |
||||||
|
*/ |
||||||
|
public function up() |
||||||
|
{ |
||||||
|
Schema::table('about_us', function (Blueprint $table) { |
||||||
|
$table->string('point_title')->nullable(); |
||||||
|
$table->string('bottom_title')->nullable(); |
||||||
|
}); |
||||||
|
} |
||||||
|
|
||||||
|
/** |
||||||
|
* Reverse the migrations. |
||||||
|
* |
||||||
|
* @return void |
||||||
|
*/ |
||||||
|
public function down() |
||||||
|
{ |
||||||
|
Schema::table('about_us', function (Blueprint $table) { |
||||||
|
// |
||||||
|
}); |
||||||
|
} |
||||||
|
}; |
@ -0,0 +1,41 @@ |
|||||||
|
<?php |
||||||
|
|
||||||
|
use Illuminate\Database\Migrations\Migration; |
||||||
|
use Illuminate\Database\Schema\Blueprint; |
||||||
|
use Illuminate\Support\Facades\Schema; |
||||||
|
|
||||||
|
return new class extends Migration |
||||||
|
{ |
||||||
|
/** |
||||||
|
* Run the migrations. |
||||||
|
* |
||||||
|
* @return void |
||||||
|
*/ |
||||||
|
public function up() |
||||||
|
{ |
||||||
|
Schema::create('visa_services', function (Blueprint $table) { |
||||||
|
$table->id(); |
||||||
|
$table->string('name'); |
||||||
|
$table->string('seo_title'); |
||||||
|
$table->longText('seo_description'); |
||||||
|
$table->string('keywords'); |
||||||
|
$table->longText('meta_keywords'); |
||||||
|
$table->enum('status',[1,2]); |
||||||
|
$table->longText('short_description'); |
||||||
|
$table->string('icon')->nullable(); |
||||||
|
$table->string('order_by'); |
||||||
|
$table->string('slug'); |
||||||
|
$table->timestamps(); |
||||||
|
}); |
||||||
|
} |
||||||
|
|
||||||
|
/** |
||||||
|
* Reverse the migrations. |
||||||
|
* |
||||||
|
* @return void |
||||||
|
*/ |
||||||
|
public function down() |
||||||
|
{ |
||||||
|
Schema::dropIfExists('visa_services'); |
||||||
|
} |
||||||
|
}; |
@ -0,0 +1,45 @@ |
|||||||
|
<?php |
||||||
|
|
||||||
|
use Illuminate\Database\Migrations\Migration; |
||||||
|
use Illuminate\Database\Schema\Blueprint; |
||||||
|
use Illuminate\Support\Facades\Schema; |
||||||
|
|
||||||
|
return new class extends Migration |
||||||
|
{ |
||||||
|
/** |
||||||
|
* Run the migrations. |
||||||
|
* |
||||||
|
* @return void |
||||||
|
*/ |
||||||
|
public function up() |
||||||
|
{ |
||||||
|
Schema::create('visa_service_sections', function (Blueprint $table) { |
||||||
|
$table->id(); |
||||||
|
$table->bigInteger('visa_service_id')->unsigned(); |
||||||
|
$table->foreign('visa_service_id')->references('id')->on('visa_services')->onDelete('cascade'); |
||||||
|
$table->longText('top_description')->nullable(); |
||||||
|
$table->string('image')->nullable(); |
||||||
|
$table->string('left_title'); |
||||||
|
$table->string('left_sub_title'); |
||||||
|
$table->longText('left_description'); |
||||||
|
$table->string('right_title')->nullable(); |
||||||
|
$table->string('right_sub_title')->nullable(); |
||||||
|
// $table->longText('sub_description')->nullable(); |
||||||
|
$table->longText('point_title')->nullable(); |
||||||
|
$table->string('visa_length')->nullable(); |
||||||
|
$table->enum('status',[1,2]); |
||||||
|
$table->string('order_by'); |
||||||
|
$table->timestamps(); |
||||||
|
}); |
||||||
|
} |
||||||
|
|
||||||
|
/** |
||||||
|
* Reverse the migrations. |
||||||
|
* |
||||||
|
* @return void |
||||||
|
*/ |
||||||
|
public function down() |
||||||
|
{ |
||||||
|
Schema::dropIfExists('visa_service_sections'); |
||||||
|
} |
||||||
|
}; |
@ -0,0 +1,34 @@ |
|||||||
|
<?php |
||||||
|
|
||||||
|
use Illuminate\Database\Migrations\Migration; |
||||||
|
use Illuminate\Database\Schema\Blueprint; |
||||||
|
use Illuminate\Support\Facades\Schema; |
||||||
|
|
||||||
|
return new class extends Migration |
||||||
|
{ |
||||||
|
/** |
||||||
|
* Run the migrations. |
||||||
|
* |
||||||
|
* @return void |
||||||
|
*/ |
||||||
|
public function up() |
||||||
|
{ |
||||||
|
Schema::create('visa_service_section_points', function (Blueprint $table) { |
||||||
|
$table->id(); |
||||||
|
$table->bigInteger('visa_service_section_id')->unsigned(); |
||||||
|
$table->foreign('visa_service_section_id')->references('id')->on('visa_service_sections')->onDelete('cascade'); |
||||||
|
$table->text('point'); |
||||||
|
$table->timestamps(); |
||||||
|
}); |
||||||
|
} |
||||||
|
|
||||||
|
/** |
||||||
|
* Reverse the migrations. |
||||||
|
* |
||||||
|
* @return void |
||||||
|
*/ |
||||||
|
public function down() |
||||||
|
{ |
||||||
|
Schema::dropIfExists('visa_service_section_points'); |
||||||
|
} |
||||||
|
}; |
@ -0,0 +1,38 @@ |
|||||||
|
<?php |
||||||
|
|
||||||
|
use Illuminate\Database\Migrations\Migration; |
||||||
|
use Illuminate\Database\Schema\Blueprint; |
||||||
|
use Illuminate\Support\Facades\Schema; |
||||||
|
|
||||||
|
return new class extends Migration |
||||||
|
{ |
||||||
|
/** |
||||||
|
* Run the migrations. |
||||||
|
* |
||||||
|
* @return void |
||||||
|
*/ |
||||||
|
public function up() |
||||||
|
{ |
||||||
|
Schema::create('applicants', function (Blueprint $table) { |
||||||
|
$table->id(); |
||||||
|
$table->string('full_name'); |
||||||
|
$table->string('phone'); |
||||||
|
$table->string('email'); |
||||||
|
$table->boolean('has_visa_permit'); |
||||||
|
$table->boolean('has_skill_assessed'); |
||||||
|
$table->string('resume'); |
||||||
|
$table->string('country'); |
||||||
|
$table->timestamps(); |
||||||
|
}); |
||||||
|
} |
||||||
|
|
||||||
|
/** |
||||||
|
* Reverse the migrations. |
||||||
|
* |
||||||
|
* @return void |
||||||
|
*/ |
||||||
|
public function down() |
||||||
|
{ |
||||||
|
Schema::dropIfExists('applicants'); |
||||||
|
} |
||||||
|
}; |
@ -0,0 +1,32 @@ |
|||||||
|
<?php |
||||||
|
|
||||||
|
use Illuminate\Database\Migrations\Migration; |
||||||
|
use Illuminate\Database\Schema\Blueprint; |
||||||
|
use Illuminate\Support\Facades\Schema; |
||||||
|
|
||||||
|
return new class extends Migration |
||||||
|
{ |
||||||
|
/** |
||||||
|
* Run the migrations. |
||||||
|
* |
||||||
|
* @return void |
||||||
|
*/ |
||||||
|
public function up() |
||||||
|
{ |
||||||
|
Schema::table('services', function (Blueprint $table) { |
||||||
|
$table->string('image'); |
||||||
|
}); |
||||||
|
} |
||||||
|
|
||||||
|
/** |
||||||
|
* Reverse the migrations. |
||||||
|
* |
||||||
|
* @return void |
||||||
|
*/ |
||||||
|
public function down() |
||||||
|
{ |
||||||
|
Schema::table('services', function (Blueprint $table) { |
||||||
|
// |
||||||
|
}); |
||||||
|
} |
||||||
|
}; |
@ -0,0 +1,32 @@ |
|||||||
|
<?php |
||||||
|
|
||||||
|
use Illuminate\Database\Migrations\Migration; |
||||||
|
use Illuminate\Database\Schema\Blueprint; |
||||||
|
use Illuminate\Support\Facades\Schema; |
||||||
|
|
||||||
|
return new class extends Migration |
||||||
|
{ |
||||||
|
/** |
||||||
|
* Run the migrations. |
||||||
|
* |
||||||
|
* @return void |
||||||
|
*/ |
||||||
|
public function up() |
||||||
|
{ |
||||||
|
Schema::table('visa_services', function (Blueprint $table) { |
||||||
|
$table->string('image')->nullable(); |
||||||
|
}); |
||||||
|
} |
||||||
|
|
||||||
|
/** |
||||||
|
* Reverse the migrations. |
||||||
|
* |
||||||
|
* @return void |
||||||
|
*/ |
||||||
|
public function down() |
||||||
|
{ |
||||||
|
Schema::table('visa_services', function (Blueprint $table) { |
||||||
|
// |
||||||
|
}); |
||||||
|
} |
||||||
|
}; |
@ -0,0 +1,32 @@ |
|||||||
|
<?php |
||||||
|
|
||||||
|
use Illuminate\Database\Migrations\Migration; |
||||||
|
use Illuminate\Database\Schema\Blueprint; |
||||||
|
use Illuminate\Support\Facades\Schema; |
||||||
|
|
||||||
|
return new class extends Migration |
||||||
|
{ |
||||||
|
/** |
||||||
|
* Run the migrations. |
||||||
|
* |
||||||
|
* @return void |
||||||
|
*/ |
||||||
|
public function up() |
||||||
|
{ |
||||||
|
Schema::table('news_and_updates', function (Blueprint $table) { |
||||||
|
$table->string('thumbnail'); |
||||||
|
}); |
||||||
|
} |
||||||
|
|
||||||
|
/** |
||||||
|
* Reverse the migrations. |
||||||
|
* |
||||||
|
* @return void |
||||||
|
*/ |
||||||
|
public function down() |
||||||
|
{ |
||||||
|
Schema::table('news_and_updates', function (Blueprint $table) { |
||||||
|
// |
||||||
|
}); |
||||||
|
} |
||||||
|
}; |
@ -0,0 +1,32 @@ |
|||||||
|
<?php |
||||||
|
|
||||||
|
use Illuminate\Database\Migrations\Migration; |
||||||
|
use Illuminate\Database\Schema\Blueprint; |
||||||
|
use Illuminate\Support\Facades\Schema; |
||||||
|
|
||||||
|
return new class extends Migration |
||||||
|
{ |
||||||
|
/** |
||||||
|
* Run the migrations. |
||||||
|
* |
||||||
|
* @return void |
||||||
|
*/ |
||||||
|
public function up() |
||||||
|
{ |
||||||
|
Schema::table('services', function (Blueprint $table) { |
||||||
|
$table->string('banner_image')->nullable(); |
||||||
|
}); |
||||||
|
} |
||||||
|
|
||||||
|
/** |
||||||
|
* Reverse the migrations. |
||||||
|
* |
||||||
|
* @return void |
||||||
|
*/ |
||||||
|
public function down() |
||||||
|
{ |
||||||
|
Schema::table('services', function (Blueprint $table) { |
||||||
|
// |
||||||
|
}); |
||||||
|
} |
||||||
|
}; |
After Width: | Height: | Size: 31 KiB |
After Width: | Height: | Size: 2.0 KiB |
After Width: | Height: | Size: 90 KiB |
Before Width: | Height: | Size: 34 KiB After Width: | Height: | Size: 770 B |
Before Width: | Height: | Size: 24 KiB After Width: | Height: | Size: 7.9 KiB |
Before Width: | Height: | Size: 16 KiB After Width: | Height: | Size: 712 B |
After Width: | Height: | Size: 24 KiB |
After Width: | Height: | Size: 734 B |
After Width: | Height: | Size: 1.1 KiB |
After Width: | Height: | Size: 21 KiB |
After Width: | Height: | Size: 29 KiB |
After Width: | Height: | Size: 30 KiB |
After Width: | Height: | Size: 573 KiB |
After Width: | Height: | Size: 82 KiB |
After Width: | Height: | Size: 506 KiB |
After Width: | Height: | Size: 1.0 MiB |
After Width: | Height: | Size: 18 KiB |
After Width: | Height: | Size: 34 KiB |
After Width: | Height: | Size: 382 KiB |
After Width: | Height: | Size: 514 KiB |
After Width: | Height: | Size: 495 KiB |
After Width: | Height: | Size: 775 KiB |
After Width: | Height: | Size: 526 KiB |
After Width: | Height: | Size: 598 KiB |
After Width: | Height: | Size: 526 KiB |
After Width: | Height: | Size: 58 KiB |
After Width: | Height: | Size: 41 KiB |
After Width: | Height: | Size: 41 KiB |
After Width: | Height: | Size: 626 KiB |
After Width: | Height: | Size: 31 KiB |
After Width: | Height: | Size: 31 KiB |
After Width: | Height: | Size: 31 KiB |
After Width: | Height: | Size: 41 KiB |
After Width: | Height: | Size: 41 KiB |
After Width: | Height: | Size: 41 KiB |
After Width: | Height: | Size: 41 KiB |
After Width: | Height: | Size: 41 KiB |
After Width: | Height: | Size: 41 KiB |
After Width: | Height: | Size: 31 KiB |
After Width: | Height: | Size: 31 KiB |
After Width: | Height: | Size: 628 KiB |
After Width: | Height: | Size: 628 KiB |
After Width: | Height: | Size: 53 KiB |
After Width: | Height: | Size: 628 KiB |
After Width: | Height: | Size: 628 KiB |
After Width: | Height: | Size: 53 KiB |
After Width: | Height: | Size: 628 KiB |
After Width: | Height: | Size: 82 KiB |
After Width: | Height: | Size: 628 KiB |
After Width: | Height: | Size: 628 KiB |
After Width: | Height: | Size: 70 KiB |
After Width: | Height: | Size: 11 KiB |
After Width: | Height: | Size: 31 KiB |
After Width: | Height: | Size: 3.3 KiB |
After Width: | Height: | Size: 1.8 KiB |
After Width: | Height: | Size: 1.6 KiB |
After Width: | Height: | Size: 41 KiB |
After Width: | Height: | Size: 398 KiB |
After Width: | Height: | Size: 197 KiB |