public function store(Request $request) { // $slug = $request->segment(2); $dataType = DataType::where('slug', '=', $slug)->first(); eval('$data = new ' . $dataType->model_name . ';'); foreach ($dataType->addRows as $row) { $content = NULL; /********** PASSWORD TYPE **********/ if ($row->type == 'password') { $content = \Hash::make($request->input($row->field)); /********** CHECKBOX TYPE **********/ } else { if ($row->type == 'checkbox') { $content = 0; $checkBoxRow = $request->input($row->field); if (isset($checkBoxRow)) { $content = 1; } /********** FILE TYPE **********/ } else { if ($row->type == 'file') { /********** IMAGE TYPE **********/ } else { if ($row->type == 'image') { if ($request->hasFile($row->field)) { \Log::info('Hit the image placement'); $file = $request->file($row->field); $filename = str_random(20); $image = \Image::make($file); $upload_dir = 'content/uploads'; if (!file_exists('content')) { mkdir('content'); } if (!file_exists('content/uploads')) { mkdir('content/uploads'); } if (!file_exists('content/uploads/' . $slug)) { mkdir('content/uploads/' . $slug); } $full_path = $upload_dir . '/' . $slug . '/' . $filename . '.' . $file->getClientOriginalExtension(); $image->save($full_path); $content = $full_path; } /********** ALL OTHER TEXT TYPE **********/ } else { $content = $request->input($row->field); } } } } $data->{$row->field} = $content; } $data->save(); return redirect('/admin')->with(array('message' => 'Successfully Created New User', 'alert-class' => 'success')); }
/** * Remove the specified resource from storage. * * @param int $id * @return \Illuminate\Http\Response */ public function destroy($id) { $datatype = DataType::find($id); $table_name = $datatype->name; if (DataType::destroy($id)) { return redirect('/admin/builder')->with(array('message' => 'Successfully removed BREAD from ' . $table_name, 'alert-class' => 'success', 'alert-icon' => 'trash-o')); } return redirect('/admin/builder')->with(array('message' => 'Sorry it appears there was a problem removing this bread', 'alert-class' => 'danger', 'alert-icon' => 'exclamation-triangle')); }