namespace App\Http\Controllers; use Illuminate\Http\Request; use Illuminate\Support\Facades\Input; use Illuminate\Support\Facades\Redirect; use Illuminate\Support\Facades\URL; use File; use Html; use DB; use Illuminate\Validation\Rule; use Illuminate\Support\Str; use Validator; use Datatables; use AppHelper; use LaraCore; use Image; use App\Models\{{$entity_name}}; use App\Models\_List; use Carbon; class {{ucfirst($entity_name)}}Controller extends Controller { public $call_api; protected $log_identifire = '{{$fields[0]['dbfield']}}'; public function __construct(Request $request){ $this->call_api = LaraCore::isAPI($request); } public function validator(array $data, $id = NULL){ @foreach($fields as $key => $value) @if($value['dbfield'] == '') @continue @endif @if($value['validation']) @if(in_array('unique',explode(',',$value['validation']))) ${{$value['dbfield']}}_rules = explode(',',"{{$value['validation']}}"); if(($key = array_search('unique',${{$value['dbfield']}}_rules)) !== false) { ${{$value['dbfield']}}_rules[$key] = Rule::unique('{{$db_table}}')->ignore($id); } @endif @endif @endforeach return Validator::make($data, [ @foreach($fields as $key => $value) @if($value['dbfield'] == '') @continue @endif @if($value['validation']) @if(in_array('unique',explode(',',$value['validation']))) '{{$value['dbfield']}}' => ${{$value['dbfield']}}_rules, @else @if(strpos($value["dbfield"],",")) '{{ explode(',', $value["dbfield"] )[0] }}' => '{{str_replace(',', '|', $value['validation'])}}', @else '{{$value['dbfield']}}' => '{{str_replace(',', '|', $value['validation'])}}', @endif @endif @endif @endforeach ]); } public function create(){ } public function index(Request $request){ LaraCore::canOrFail('view_{{strtolower($entity_name)}}',$request); if ($this->call_api) { ${{strtolower($entity_name)}} = {{$entity_name}}::all(); $data['{{strtolower($entity_name)}}'] = ${{strtolower($entity_name)}}; $response = LaraCore::MakeAPIResponse(true,200,[],"Success",$data); return response($response,200); }else{ $data = array(); LaraCore::isDataAvailable('{{strtolower($entity_name)}}', '{{strtolower($entity_name)}}.create'); @foreach($fields as $key => $value) @if($value['type']==strtolower('ListDynamic') || $value['type']==strtolower('ListDynamicM')) $list_{{strtolower($value['type_info'])}} = _List::where('list_name','=','{{$value['type_info']}}')->orderby('list_order')->pluck('item_name','id')->all(); @if($value['default_value'] != "") if(in_array('{{$value['default_value']}}',$list_{{strtolower($value['type_info'])}})){ $new_field['default_{{strtolower($value['type_info'])}}_key'] = array_search('{{$value['default_value']}}', $list_{{strtolower($value['type_info'])}}); $data['default_{{strtolower($value['type_info'])}}_key'] = $new_field['default_{{strtolower($value['type_info'])}}_key']; } @endif $data['list_{{strtolower($value['type_info'])}}'] = $list_{{strtolower($value['type_info'])}}; @elseif($value['type'] == 'listdb') ${{ $value['referance_table'].'_options' }} = DB::table('{{$value["referance_table"]}}')->select(DB::raw("CONCAT({!! $value['referance_display'] !!}) AS disp_fromat"),'id')->pluck('disp_fromat', '{{$value["referance_field"] }}'); ${{ $value['referance_table'].'_options' }} = ${{ $value['referance_table'].'_options' }}->all(); $data['{{ $value["referance_table"]."_options" }}'] = ${{ $value['referance_table'].'_options' }}; @endif @endforeach return view('panel.{{strtolower($entity_name)}}.index',$data); } } public function edit($id,Request $request){ LaraCore::canOrFail('view_{{strtolower($entity_name)}}'); $data = array(); $Dates = array(); ${{strtolower($entity_name)}} = {{$entity_name}}::findOrFail($id); $data['{{strtolower($entity_name)}}'] = ${{strtolower($entity_name)}}; @foreach($fields as $key => $value) @if($value['dbfield'] == "") @continue; @endif @if($value['type'] == strtolower('CheckBox')) if(${{strtolower($entity_name)}}->{{$value['dbfield']}}!=''){ @if(count($value['options']) > '1') ${{$value['dbfield']}}= explode(',',${{strtolower($entity_name)}}->{{$value['dbfield']}}); ${{strtolower($entity_name)}}->{{$value['dbfield']}} = ${{$value['dbfield']}}; @else ${{$value['dbfield']}} = ${{strtolower($entity_name)}}->{{$value['dbfield'] }}; @endif } else{ ${{strtolower($entity_name)}}->{{$value['dbfield']}} = array(); } @endif @if($value['type'] == strtolower('File')) if(${{strtolower($entity_name)}}->{{explode(',', $value['dbfield'] )[0]}}!=''){ ${{strtolower($entity_name)}}->{{explode(',', $value['dbfield'] )[0]}} = implode(',',unserialize(${{strtolower($entity_name)}}->{{explode(',', $value['dbfield'] )[0]}})); } if(${{strtolower($entity_name)}}->{{explode(',', $value['dbfield'] )[1]}}!=''){ ${{strtolower($entity_name)}}->{{explode(',', $value['dbfield'] )[1]}} = implode(',',unserialize(${{strtolower($entity_name)}}->{{explode(',', $value['dbfield'] )[1]}})); } @endif @if($value['type']==strtolower('ListDynamic')) $list_{{strtolower($value['type_info'])}} = _List::where('list_name','=','{{$value['type_info']}}')->orderby('list_order')->pluck('item_name','id')->all(); @if($value['default_value'] != "") if(in_array('{{$value['default_value']}}',$list_{{strtolower($value['type_info'])}})){ $new_field['default_key'] = array_search('{{$value['default_value']}}', $list_{{strtolower($value['type_info'])}}); $data['default_key'] = $new_field; } @endif $data['list_{{strtolower($value['type_info'])}}'] = $list_{{strtolower($value['type_info'])}}; @endif @if($value['type']==strtolower('ListMulti')) ${{$value['dbfield']}}= explode(',',${{strtolower($entity_name)}}->{{$value['dbfield']}}); ${{strtolower($entity_name)}}->{{$value['dbfield']}} = ${{$value['dbfield']}}; @endif @if(strtolower($value['type'])==strtolower('ListDynamicM')) $list_{{strtolower($value['type_info'])}} = _List::where('list_name','=','{{$value['type_info']}}')->pluck('item_name','id')->all(); $data['list_{{strtolower($value['type_info'])}}'] = $list_{{strtolower($value['type_info'])}}; ${{$value['dbfield']}}= explode(',',${{strtolower($entity_name)}}->{{$value['dbfield']}}); ${{strtolower($entity_name)}}->{{$value['dbfield']}} = ${{$value['dbfield']}}; @endif @if($value['type']==strtolower('DateRange')) $Name = explode(',','{{$value['dbfield']}}'); $Dates[0] = new Carbon(${{strtolower($entity_name)}}->$Name[0]); $Dates[1] = new Carbon(${{strtolower($entity_name)}}->$Name[1]); $data['{{explode(',', $value['dbfield'] )[0]}}'] = $Dates[0]->format(LaraCore::setting('date_format')).' - '.$Dates[1]->format(LaraCore::setting('date_format')) ; @elseif($value['type'] == 'listdb') ${{ $value['referance_table'].'_options' }} = DB::table('{{$value["referance_table"]}}')->select(DB::raw("CONCAT({!! $value['referance_display'] !!}) AS disp_fromat"),'id')->pluck('disp_fromat', '{{$value["referance_field"] }}'); ${{ $value['referance_table'].'_options' }} = ${{ $value['referance_table'].'_options' }}->all(); $data = [ '{{ $value["referance_table"]."_options" }}' => ${{ $value['referance_table'].'_options' }} ]; @endif @endforeach $data['{{strtolower($entity_name)}}'] = ${{strtolower($entity_name)}}; $html = view('panel.{{strtolower($entity_name)}}.create',$data)->render(); return response()->json(array( "status" => "success", "modal" => $html, )); } public function store(Request $request,$id=""){ LaraCore::canOrFail('add_{{strtolower($entity_name)}}',$request); if ($this->call_api) { $validation = $this->validator($request->all(),$request->id); if($validation->fails()){ $response = LaraCore::MakeAPIResponse(false,422,[],$validation->errors(),[]); return response($response,422); }else{ $operation = $this->save($request,$id); $message = $operation['message']; $data['item'] = $operation['item']; $response = LaraCore::MakeAPIResponse(true,200,[],"$message Successfully",$data); return response($response,200); } }else{ $this->validator($request->all(),$request->id)->validate(); $operation = $this->save($request,$id); $message = $operation['message']; $data['item'] = $operation['item']; $response = LaraCore::MakeAPIResponse("success",200,[],"$message Successfully",$data); return response($response,200); } } public function save($request,$id=""){ if($request->id == null || $request->id == ""){ $inputs = $request->all(); @foreach($fields as $key => $value) @if($value['dbfield'] == "") @continue; @endif @if(strtolower($value['type']) == strtolower('CheckBox')) @if(count($value['options']) > '1') if($request->has('{{$value['dbfield']}}')){ ${{$value['dbfield']}} = implode(',',$request->{{$value['dbfield']}}); $inputs['{{$value['dbfield']}}'] = ${{$value['dbfield']}}; }else{ $inputs['{{$value['dbfield']}}'] = ""; } @else if($request->has('{{$value['dbfield']}}')){ $inputs['{{$value['dbfield']}}'] = $request->{{$value['dbfield']}}; }else{ $inputs['{{$value['dbfield']}}'] = ""; } @endif @endif @if(strtolower($value['type']) == strtolower('ListMulti')) if($request->has('{{$value['dbfield']}}')){ ${{$value['dbfield']}} = implode(',',$request->{{$value['dbfield']}}); $inputs['{{$value['dbfield']}}'] = ${{$value['dbfield']}}; } @endif @if(strtolower($value['type']) == strtolower('ListDynamicM')) if($request->has('{{$value['dbfield']}}')){ ${{$value['dbfield']}} = implode(',',$request->{{$value['dbfield']}}); $inputs['{{$value['dbfield']}}'] = ${{$value['dbfield']}}; } @endif @if(strtolower($value['type']) == strtolower('DateRange')) if($request->has('{{explode(',', $value['dbfield'] )[0]}}')){ $Dates = explode('-',$request->input('{{explode(',', $value['dbfield'] )[0]}}')); $Name = explode(',','{{$value['dbfield']}}'); $inputs[''.$Name[0]] = $Dates[0]; $Dates[0] = new Carbon($Dates[0]); $Dates[1] = new Carbon($Dates[1]); $inputs[''.$Name[0]] = $Dates[0]->format('Y-m-d'); $inputs[''.$Name[1]] = $Dates[1]->format('Y-m-d'); } @endif @if(strtolower($value['type']) == strtolower('Password')) if($request->has('{{$value['dbfield']}}')){ ${{$value['dbfield']}} = bcrypt($request->{{$value['dbfield']}}); $inputs['{{$value['dbfield']}}'] = ${{$value['dbfield']}}; } @endif @if(strtolower($value['type']) == strtolower('Date')) if($request->has('{{$value['dbfield']}}')){ $inputs['{{$value['dbfield']}}'] = \Carbon\Carbon::parse($inputs['{{$value['dbfield']}}'])->format('Y-m-d'); } @endif @if(strtolower($value['type']) == strtolower('File')) $this->UploadFile($request, '{{explode(',', $value['dbfield'] )[0]}}', '{{explode(',', $value['dbfield'] )[1]}}', $inputs); @endif @endforeach $inputs['created_by'] = \Auth::user()->id; ${{strtolower($entity_name)}} = {{$entity_name}}::create($inputs); @if($enable_logging) LaraCore::generateLog('create', '{{ucfirst($entity_name)}}', ${{strtolower($entity_name)}}, $this->log_identifire); @else //LaraCore::generateLog('create', '{{ucfirst($entity_name)}}', ${{strtolower($entity_name)}}, $this->log_identifire); @endif return ["message"=>"Created",'item'=>${{strtolower($entity_name)}}]; } else{ LaraCore::canOrFail('edit_{{strtolower($entity_name)}}',$request); ${{strtolower($entity_name)}} = {{$entity_name}}::where(['id'=>$request->input('id')])->first(); $inputs = $request->except('_token'); @foreach($fields as $key => $value) @if($value['dbfield'] == "") @continue; @endif @if(strtolower($value['type']) == strtolower('CheckBox')) @if(count($value['options']) > '1') if($request->has('{{$value['dbfield']}}')){ ${{$value['dbfield']}} = implode(',',$request->{{$value['dbfield']}}); $inputs['{{$value['dbfield']}}'] = ${{$value['dbfield']}}; }else{ $inputs['{{$value['dbfield']}}'] = ""; } @else if($request->has('{{$value['dbfield']}}')){ $inputs['{{$value['dbfield']}}'] = $request->{{$value['dbfield']}}; }else{ $inputs['{{$value['dbfield']}}'] = ""; } @endif @endif @if(strtolower($value['type']) == strtolower('ListMulti')) if($request->has('{{$value['dbfield']}}')){ ${{$value['dbfield']}} = implode(',',$request->{{$value['dbfield']}}); $inputs['{{$value['dbfield']}}'] = ${{$value['dbfield']}}; } @endif @if(strtolower($value['type']) == strtolower('ListDynamicM')) if($request->has('{{$value['dbfield']}}')){ ${{$value['dbfield']}} = implode(',',$request->{{$value['dbfield']}}); $inputs['{{$value['dbfield']}}'] = ${{$value['dbfield']}}; } @endif @if(strtolower($value['type']) == strtolower('DateRange')) if($request->has('{{explode(',', $value['dbfield'] )[0]}}')){ $Dates = explode('-',$request->input('{{explode(',', $value['dbfield'] )[0]}}')); $Name = explode(',','{{$value['dbfield']}}'); $inputs[''.$Name[0]] = $Dates[0]; $Dates[0] = new Carbon($Dates[0]); $Dates[1] = new Carbon($Dates[1]); $inputs[''.$Name[0]] = $Dates[0]->format('Y-m-d'); $inputs[''.$Name[1]] = $Dates[1]->format('Y-m-d'); } @endif @if(strtolower($value['type']) == strtolower('Password')) if($request->has('{{$value['dbfield']}}')){ ${{$value['dbfield']}} = bcrypt($request->{{$value['dbfield']}}); $inputs['{{$value['dbfield']}}'] = ${{$value['dbfield']}}; } @endif @if(strtolower($value['type']) == strtolower('Date')) if($request->has('{{$value['dbfield']}}')){ $inputs['{{$value['dbfield']}}'] = \Carbon\Carbon::parse($inputs['{{$value['dbfield']}}'])->format('Y-m-d'); } @endif @if(strtolower($value['type']) == strtolower('File')) $this->UploadFile($request, '{{explode(',', $value['dbfield'] )[0]}}', '{{explode(',', $value['dbfield'] )[1]}}', $inputs); @endif @endforeach @if($enable_logging) $old_values = {{$entity_name}}::where(['id'=>$request->input('id')])->first(); $new_values = $request->_key_pairs; LaraCore::generateLog('update', '{{ucfirst($entity_name)}}', ${{strtolower($entity_name)}}, $this->log_identifire, $old_values ,$new_values); @else //$old_values = {{$entity_name}}::where(['id'=>$request->input('id')])->first(); //$new_values = $request->_key_pairs; //LaraCore::generateLog('update', '{{ucfirst($entity_name)}}', ${{strtolower($entity_name)}}, $this->log_identifire, $old_values ,$new_values); @endif ${{strtolower($entity_name)}}->update($inputs); return ["message"=>"Updated",'item'=>${{strtolower($entity_name)}}]; } } public function update(Request $request,$id){ $request->merge(['id' => $id]); $operation = $this->save($request,$id); $message = $operation['message']; $data['item'] = $operation['item']; $response = LaraCore::MakeAPIResponse(true,200,[],"$message Successfully",$data); return response($response,200); } public function list{{$entity_name}}(Request $request){ LaraCore::canOrFail('view_{{strtolower($entity_name)}}'); ${{strtolower($entity_name)}} = DB::table('{{$db_table}}'); {{-- ${{strtolower($entity_name)}} = {{$entity_name}}::all(); --}} @foreach($fields as $key => $value) @if($value['listfield'] == 1) @if(strtolower($value['type']) == strtolower('List')) ${{$value['dbfield']}} = {!! $value['options'] !!}; @endif @if(strtolower($value['type']) == strtolower('ListMulti')) ${{$value['dbfield']}} = {!! $value['options'] !!}; @endif @if(strtolower($value['type']) == strtolower('Radio')) ${{$value['dbfield']}} = {!! $value['list_options'] !!}; @endif @if(strtolower($value['type']) == strtolower('CheckBox')) ${{$value['dbfield']}} = {!! $value['list_options'] !!}; @endif @if($value['type'] == 'listdb') ${{strtolower($entity_name)}}->leftJoin('{{$value['referance_table']}}', '{{$db_table}}.{{$value['dbfield']}}', '=', '{{$value['referance_table']}}.{{$value['referance_field']}}'); @endif @endif @endforeach ${{strtolower($entity_name)}} = ${{strtolower($entity_name)}}->select({!! $columns_to_select !!}); {{-- $datatables = Datatables::of(${{strtolower($entity_name)}}) --}} $datatables = Datatables::of(${{strtolower($entity_name)}}) @foreach($fields as $key => $value) @if(strtolower($value['type']) == strtolower('ListDynamic') && $value['listfield'] == 1) ->editColumn('{{$value['dbfield']}}', function(${{strtolower($entity_name)}}){ ${{$value['dbfield']}} = _List::where('id','=',${{strtolower($entity_name)}}->{{$value['dbfield']}})->select('item_name')->first(); return ${{$value['dbfield']}}->item_name; }) @endif @if(strtolower($value['type']) == strtolower('List') && $value['listfield'] == 1) ->editColumn('{{$value['dbfield']}}', function(${{strtolower($entity_name)}}) use(${{$value['dbfield']}}){ return ${{$value['dbfield']}}[${{strtolower($entity_name)}}->{{$value['dbfield']}}]; }) @endif @if(strtolower($value['type']) == strtolower('ListMulti') && $value['listfield'] == 1) ->editColumn('{{$value['dbfield']}}', function(${{strtolower($entity_name)}}) use(${{$value['dbfield']}}){ if(${{strtolower($entity_name)}}->{{$value['dbfield']}} != ""){ ${{strtolower($entity_name)}}->{{$value['dbfield']}} = explode(',',${{strtolower($entity_name)}}->{{$value['dbfield']}}); ${{$value['dbfield']}}Arr = array(); foreach(${{strtolower($entity_name)}}->{{$value['dbfield']}} as $value){ ${{$value['dbfield']}}Arr[] .= ${{$value['dbfield']}}[$value]; } return implode(',',${{$value['dbfield']}}Arr); }else{ return ""; } return ${{$value['dbfield']}}[${{strtolower($entity_name)}}->{{$value['dbfield']}}]; }) @endif @if(strtolower($value['type']) == strtolower('Radio') && $value['listfield'] == 1) ->editColumn('{{$value['dbfield']}}', function(${{strtolower($entity_name)}}) use(${{$value['dbfield']}}){ if(NULL != ${{strtolower($entity_name)}}->{{$value['dbfield']}}){ return ${{$value['dbfield']}}[${{strtolower($entity_name)}}->{{$value['dbfield']}}]; } return ' - '; }) @endif @if(strtolower($value['type']) == strtolower('ListDynamicM') && $value['listfield'] == 1) ->editColumn('{{$value['dbfield']}}', function(${{strtolower($entity_name)}}){ ${{$value['dbfield']}} = ""; if(${{strtolower($entity_name)}}->{{$value['dbfield']}} != ""){ ${{strtolower($entity_name)}}->{{$value['dbfield']}} = explode(',',${{strtolower($entity_name)}}->{{$value['dbfield']}}); ${{$value['dbfield']}}Arr = array(); foreach(${{strtolower($entity_name)}}->{{$value['dbfield']}} as $value){ $list_{{$value['dbfield']}} = _List::where('id','=',$value)->select('item_name')->first(); ${{$value['dbfield']}}Arr[] .= $list_{{$value['dbfield']}}->item_name; ${{$value['dbfield']}} .= ','; } return implode(',',${{$value['dbfield']}}Arr); }else{ return ""; } }) @endif @if(strtolower($value['type']) == strtolower('Date') && $value['listfield'] == 1) ->editColumn('{{$value['dbfield']}}', function(${{strtolower($entity_name)}}){ $date_formates = config('settings.date_format'); if(NULL != ${{strtolower($entity_name)}}->{{$value['dbfield']}}){ return Carbon\Carbon::parse(${{strtolower($entity_name)}}->{{$value['dbfield']}})->format(LaraCore::setting('date_format')); } return NULL; }) @endif @if(strtolower($value['type']) == strtolower('DateRange') && $value['listfield'] == 1) ->editColumn('{{explode(',', $value['dbfield'] )[0]}}', function(${{strtolower($entity_name)}}){ $date_formates = config('settings.date_format'); if(NULL != ${{strtolower($entity_name)}}->{{explode(',', $value['dbfield'] )[0]}}){ return Carbon\Carbon::parse(${{strtolower($entity_name)}}->{{explode(',', $value['dbfield'] )[0]}})->format(LaraCore::setting('date_format')); } return NULL; }) ->editColumn('{{explode(',', $value['dbfield'] )[1]}}', function(${{strtolower($entity_name)}}){ $date_formates = config('settings.date_format'); if(NULL != ${{strtolower($entity_name)}}->{{explode(',', $value['dbfield'] )[0]}}){ return Carbon\Carbon::parse(${{strtolower($entity_name)}}->{{explode(',', $value['dbfield'] )[1]}})->format(LaraCore::setting('date_format')); } return NULL; }) @endif @if(strtolower($value['type']) == strtolower('File') && $value['listfield'] == 1) ->editColumn('{{explode(',', $value['dbfield'] )[0]}}', function(${{strtolower($entity_name)}}){ if(${{strtolower($entity_name)}}->{{explode(',', $value['dbfield'] )[0]}}!=''){ ${{strtolower($entity_name)}}->{{explode(',', $value['dbfield'] )[0]}} = implode(',',unserialize(${{strtolower($entity_name)}}->{{explode(',', $value['dbfield'] )[0]}})); ${{strtolower($entity_name)}}->{{explode(',', $value['dbfield'] )[0]}} = explode(',',${{strtolower($entity_name)}}->{{explode(',', $value['dbfield'] )[0]}}); ${{explode(',', $value['dbfield'] )[0]}}s = ""; foreach(${{strtolower($entity_name)}}->{{explode(',', $value['dbfield'] )[0]}} as ${{explode(',', $value['dbfield'] )[0]}}){ ${{explode(',', $value['dbfield'] )[0]}}s .= ''; } return ${{explode(',', $value['dbfield'] )[0]}}s; } }) @endif @if($value['type'] == 'listdb' && $value['listfield'] == 1) ->editColumn('{{$value['dbfield']}}', function(${{strtolower($entity_name)}}){ return {!! $value['list_display'] !!}; }) @endif @endforeach {{-- ->editColumn('delete_all', function (${{strtolower($entity_name)}}) { if(LaraCore::canOrNot('delete_{{strtolower($entity_name)}}')) return ''; return ; }) --}} ->addColumn('bulk_delete', function (${{strtolower($entity_name)}}) { if(LaraCore::canOrNot('delete_{{strtolower($entity_name)}}')) return ''; return ; }) ->addColumn('actions', function(${{strtolower($entity_name)}}){ $html = ''; if(LaraCore::canOrNot('edit_{{strtolower($entity_name)}}') || LaraCore::canOrNot('view_{{strtolower($entity_name)}}')) {{-- $html .= ''; --}} $html .= ''; if(LaraCore::canOrNot('delete_{{strtolower($entity_name)}}')) {{-- $html .= ''; --}} $html .= ''; return $html; }) ->setRowId('id'); return $datatables->make(true); } public function destroy(Request $request){ $id = $request->{{strtolower($entity_name)}}_ids; LaraCore::canOrFail('delete_{{strtolower($entity_name)}}'); try{ {{-- $id = explode(',', $id); --}} {{strtolower($entity_name)}}::whereIn('id',$id)->delete(); }catch(Exception $e){ return response()->json(array( "status" => "error", "message" => "Something wrongwith deletion.", )); } return response()->json(array( "status" => "success", "message" => "{{$entity_name}} Deleted Successfully", )); } public function UploadFile($request, $file, $file_token, &$inputs){ ${{strtolower($entity_name)}} = NULL; ${{strtolower($entity_name)}} = {{$entity_name}}::where(['id'=>$request->input('id')])->first(); $destinationPath = 'assets/uploads/{{strtolower($entity_name)}}/'; if(Input::hasFile($file) || $request->$file_token != "") { if(${{strtolower($entity_name)}} != NULL && ${{strtolower($entity_name)}}->$file != "") { $file_to_uploads = unserialize(${{strtolower($entity_name)}}->$file); foreach($file_to_uploads as $file_to_upload) { if(file_exists($destinationPath.$file_to_upload)) { File::delete($destinationPath.$file_to_upload); } } $inputs[$file] = $inputs[$file_token] = ""; } if(Input::hasFile($file)) { \File::makeDirectory($destinationPath,0777,true,true); $new_files = $request->file($file); $new_files_src = []; foreach($new_files as $new_file) { if($new_file->isValid()) { $image = $new_file; $name = $new_file_name[] = $image->getClientOriginalName(); $extension = $image->getClientOriginalExtension(); $file_name = md5(uniqid().time()).'_'.$name; $image->move($destinationPath,$file_name); $new_files_src[] = $file_name; } } $inputs[$file] = serialize($new_files_src); $inputs[$file_token] = serialize($new_file_name); }elseif($request->$file_token != "") { $inputs[$file] = $inputs[$file_token] = ""; } }else{ if(${{strtolower($entity_name)}} != NULL){ $inputs[$file] = ${{strtolower($entity_name)}}->$file; $inputs[$file_token] = ${{strtolower($entity_name)}}->$file_token; }else{ $inputs[$file] =""; $inputs[$file_token] = ""; } } } }