We could not synchronize checks via GitHub's checks API since Scrutinizer's GitHub App is not installed for this repository.
@@ -3,16 +3,12 @@ |
||
| 3 | 3 | use Illuminate\Foundation\Bus\DispatchesJobs; |
| 4 | 4 | use Illuminate\Routing\Controller as BaseController; |
| 5 | 5 | use Illuminate\Foundation\Validation\ValidatesRequests; |
| 6 | -use Illuminate\Foundation\Auth\Access\AuthorizesRequests; |
|
| 7 | -use Illuminate\Support\Facades\Form as Form; |
|
| 8 | 6 | use Illuminate\Http\Request; |
| 9 | 7 | use Backpack\CRUD\Crud; |
| 10 | -use Crypt; |
|
| 11 | 8 | use Alert; |
| 12 | 9 | |
| 13 | 10 | |
| 14 | 11 | // VALIDATION: change the requests to match your own file names if you need form validation |
| 15 | -use Backpack\CRUD\app\Http\Requests\CrudRequest as StoreRequest; |
|
| 16 | 12 | use Backpack\CRUD\app\Http\Requests\CrudRequest as UpdateRequest; |
| 17 | 13 | |
| 18 | 14 | class CrudController extends BaseController { |
@@ -17,232 +17,232 @@ |
||
| 17 | 17 | |
| 18 | 18 | class CrudController extends BaseController { |
| 19 | 19 | |
| 20 | - use DispatchesJobs, ValidatesRequests; |
|
| 21 | - |
|
| 22 | - public $data = []; |
|
| 23 | - public $crud; |
|
| 24 | - |
|
| 25 | - public function __construct() |
|
| 26 | - { |
|
| 27 | - $this->crud = new Crud(); |
|
| 28 | - } |
|
| 29 | - |
|
| 30 | - /** |
|
| 31 | - * Display all rows in the database for this entity. |
|
| 32 | - * |
|
| 33 | - * @return Response |
|
| 34 | - */ |
|
| 35 | - public function index() |
|
| 36 | - { |
|
| 37 | - $this->crud->hasAccessOrFail('list'); |
|
| 38 | - |
|
| 39 | - $this->data['entries'] = $this->crud->getEntries(); |
|
| 40 | - $this->data['crud'] = $this->crud; |
|
| 41 | - $this->data['title'] = ucfirst($this->crud->entity_name_plural); |
|
| 42 | - |
|
| 43 | - // load the view from /resources/views/vendor/backpack/crud/ if it exists, otherwise load the one in the package |
|
| 44 | - return view('crud::list', $this->data); |
|
| 45 | - } |
|
| 46 | - |
|
| 47 | - |
|
| 48 | - /** |
|
| 49 | - * Show the form for creating inserting a new row. |
|
| 50 | - * |
|
| 51 | - * @return Response |
|
| 52 | - */ |
|
| 53 | - public function create() |
|
| 54 | - { |
|
| 55 | - $this->crud->hasAccessOrFail('create'); |
|
| 56 | - |
|
| 57 | - // prepare the fields you need to show |
|
| 58 | - $this->data['crud'] = $this->crud; |
|
| 59 | - $this->data['fields'] = $this->crud->getCreateFields(); |
|
| 60 | - $this->data['title'] = trans('backpack::crud.add').' '.$this->crud->entity_name; |
|
| 61 | - |
|
| 62 | - // load the view from /resources/views/vendor/backpack/crud/ if it exists, otherwise load the one in the package |
|
| 63 | - return view('crud::create', $this->data); |
|
| 64 | - } |
|
| 65 | - |
|
| 66 | - |
|
| 67 | - /** |
|
| 68 | - * Store a newly created resource in the database. |
|
| 69 | - * |
|
| 70 | - * @param StoreRequest $request - type injection used for validation using Requests |
|
| 71 | - * @return \Illuminate\Http\RedirectResponse |
|
| 72 | - */ |
|
| 73 | - public function storeCrud(StoreRequest $request = null) |
|
| 74 | - { |
|
| 75 | - $this->crud->hasAccessOrFail('create'); |
|
| 20 | + use DispatchesJobs, ValidatesRequests; |
|
| 21 | + |
|
| 22 | + public $data = []; |
|
| 23 | + public $crud; |
|
| 24 | + |
|
| 25 | + public function __construct() |
|
| 26 | + { |
|
| 27 | + $this->crud = new Crud(); |
|
| 28 | + } |
|
| 29 | + |
|
| 30 | + /** |
|
| 31 | + * Display all rows in the database for this entity. |
|
| 32 | + * |
|
| 33 | + * @return Response |
|
| 34 | + */ |
|
| 35 | + public function index() |
|
| 36 | + { |
|
| 37 | + $this->crud->hasAccessOrFail('list'); |
|
| 38 | + |
|
| 39 | + $this->data['entries'] = $this->crud->getEntries(); |
|
| 40 | + $this->data['crud'] = $this->crud; |
|
| 41 | + $this->data['title'] = ucfirst($this->crud->entity_name_plural); |
|
| 42 | + |
|
| 43 | + // load the view from /resources/views/vendor/backpack/crud/ if it exists, otherwise load the one in the package |
|
| 44 | + return view('crud::list', $this->data); |
|
| 45 | + } |
|
| 46 | + |
|
| 47 | + |
|
| 48 | + /** |
|
| 49 | + * Show the form for creating inserting a new row. |
|
| 50 | + * |
|
| 51 | + * @return Response |
|
| 52 | + */ |
|
| 53 | + public function create() |
|
| 54 | + { |
|
| 55 | + $this->crud->hasAccessOrFail('create'); |
|
| 56 | + |
|
| 57 | + // prepare the fields you need to show |
|
| 58 | + $this->data['crud'] = $this->crud; |
|
| 59 | + $this->data['fields'] = $this->crud->getCreateFields(); |
|
| 60 | + $this->data['title'] = trans('backpack::crud.add').' '.$this->crud->entity_name; |
|
| 61 | + |
|
| 62 | + // load the view from /resources/views/vendor/backpack/crud/ if it exists, otherwise load the one in the package |
|
| 63 | + return view('crud::create', $this->data); |
|
| 64 | + } |
|
| 65 | + |
|
| 66 | + |
|
| 67 | + /** |
|
| 68 | + * Store a newly created resource in the database. |
|
| 69 | + * |
|
| 70 | + * @param StoreRequest $request - type injection used for validation using Requests |
|
| 71 | + * @return \Illuminate\Http\RedirectResponse |
|
| 72 | + */ |
|
| 73 | + public function storeCrud(StoreRequest $request = null) |
|
| 74 | + { |
|
| 75 | + $this->crud->hasAccessOrFail('create'); |
|
| 76 | 76 | |
| 77 | 77 | |
| 78 | - // insert item in the db |
|
| 79 | - $item = $this->crud->create(\Request::except(['redirect_after_save', 'password'])); |
|
| 80 | - |
|
| 81 | - |
|
| 82 | - // show a success message |
|
| 83 | - \Alert::success(trans('backpack::crud.insert_success'))->flash(); |
|
| 84 | - |
|
| 85 | - // redirect the user where he chose to be redirected |
|
| 86 | - switch (\Request::input('redirect_after_save')) { |
|
| 87 | - case 'current_item_edit': |
|
| 88 | - return \Redirect::to($this->crud->route.'/'.$item->id.'/edit'); |
|
| 89 | - |
|
| 90 | - default: |
|
| 91 | - return \Redirect::to(\Request::input('redirect_after_save')); |
|
| 92 | - } |
|
| 93 | - } |
|
| 94 | - |
|
| 95 | - |
|
| 96 | - /** |
|
| 97 | - * Show the form for editing the specified resource. |
|
| 98 | - * |
|
| 99 | - * @param int $id |
|
| 100 | - * @return Response |
|
| 101 | - */ |
|
| 102 | - public function edit($id) |
|
| 103 | - { |
|
| 104 | - $this->crud->hasAccessOrFail('update'); |
|
| 105 | - |
|
| 106 | - // get the info for that entry |
|
| 107 | - $this->data['entry'] = $this->crud->getEntry($id); |
|
| 108 | - $this->data['crud'] = $this->crud; |
|
| 109 | - $this->data['fields'] = $this->crud->getUpdateFields($id); |
|
| 110 | - $this->data['title'] = trans('backpack::crud.edit').' '.$this->crud->entity_name; |
|
| 111 | - |
|
| 112 | - $this->data['id'] = $id; |
|
| 113 | - |
|
| 114 | - // load the view from /resources/views/vendor/backpack/crud/ if it exists, otherwise load the one in the package |
|
| 115 | - return view('crud::edit', $this->data); |
|
| 116 | - } |
|
| 117 | - |
|
| 118 | - |
|
| 119 | - /** |
|
| 120 | - * Update the specified resource in the database. |
|
| 121 | - * |
|
| 122 | - * @param UpdateRequest $request - type injection used for validation using Requests |
|
| 123 | - * @return \Illuminate\Http\RedirectResponse |
|
| 124 | - */ |
|
| 125 | - public function updateCrud(UpdateRequest $request = null) |
|
| 126 | - { |
|
| 127 | - $this->crud->hasAccessOrFail('update'); |
|
| 128 | - |
|
| 129 | - // update the row in the db |
|
| 130 | - |
|
| 131 | - $this->crud->update(\Request::get('id'), \Request::except('redirect_after_save')); |
|
| 132 | - |
|
| 133 | - // show a success message |
|
| 134 | - \Alert::success(trans('backpack::crud.update_success'))->flash(); |
|
| 135 | - |
|
| 136 | - return \Redirect::to($this->crud->route); |
|
| 137 | - } |
|
| 138 | - |
|
| 139 | - |
|
| 140 | - /** |
|
| 141 | - * Display the specified resource. |
|
| 142 | - * |
|
| 143 | - * @param int $id |
|
| 144 | - * @return Response |
|
| 145 | - */ |
|
| 146 | - public function show($id) |
|
| 147 | - { |
|
| 148 | - $this->crud->hasAccessOrFail('show'); |
|
| 149 | - |
|
| 150 | - // get the info for that entry |
|
| 151 | - $this->data['entry'] = $this->crud->getEntry($id); |
|
| 152 | - $this->data['crud'] = $this->crud; |
|
| 153 | - $this->data['title'] = trans('backpack::crud.preview').' '.$this->crud->entity_name; |
|
| 154 | - |
|
| 155 | - // load the view from /resources/views/vendor/backpack/crud/ if it exists, otherwise load the one in the package |
|
| 156 | - return view('crud::show', $this->data); |
|
| 157 | - } |
|
| 158 | - |
|
| 159 | - |
|
| 160 | - /** |
|
| 161 | - * Remove the specified resource from storage. |
|
| 162 | - * |
|
| 163 | - * @param int $id |
|
| 164 | - * @return string |
|
| 165 | - */ |
|
| 166 | - public function destroy($id) |
|
| 167 | - { |
|
| 168 | - $this->crud->hasAccessOrFail('delete'); |
|
| 169 | - return $this->crud->delete($id); |
|
| 170 | - } |
|
| 171 | - |
|
| 172 | - |
|
| 173 | - /** |
|
| 174 | - * Reorder the items in the database using the Nested Set pattern. |
|
| 175 | - * |
|
| 176 | - * Database columns needed: id, parent_id, lft, rgt, depth, name/title |
|
| 177 | - * |
|
| 178 | - * @return Response |
|
| 179 | - */ |
|
| 180 | - public function reorder($lang = false) |
|
| 181 | - { |
|
| 182 | - $this->crud->hasAccessOrFail('reorder'); |
|
| 183 | - |
|
| 184 | - if (!$this->crud->isReorderEnabled()) { |
|
| 185 | - abort(403, 'Reorder is disabled.'); |
|
| 186 | - } |
|
| 187 | - |
|
| 188 | - if ($lang == false) |
|
| 189 | - { |
|
| 190 | - $lang = \Lang::locale(); |
|
| 191 | - } |
|
| 192 | - |
|
| 193 | - // get all results for that entity |
|
| 194 | - $this->data['entries'] = $this->crud->getEntries(); |
|
| 195 | - $this->data['crud'] = $this->crud; |
|
| 196 | - $this->data['title'] = trans('backpack::crud.reorder').' '.$this->crud->entity_name; |
|
| 197 | - |
|
| 198 | - // load the view from /resources/views/vendor/backpack/crud/ if it exists, otherwise load the one in the package |
|
| 199 | - return view('crud::reorder', $this->data); |
|
| 200 | - } |
|
| 201 | - |
|
| 202 | - |
|
| 203 | - /** |
|
| 204 | - * Save the new order, using the Nested Set pattern. |
|
| 205 | - * |
|
| 206 | - * Database columns needed: id, parent_id, lft, rgt, depth, name/title |
|
| 207 | - * |
|
| 208 | - * @return |
|
| 209 | - */ |
|
| 210 | - public function saveReorder() |
|
| 211 | - { |
|
| 212 | - $this->crud->hasAccessOrFail('reorder'); |
|
| 213 | - |
|
| 214 | - $all_entries = \Request::input('tree'); |
|
| 215 | - |
|
| 216 | - if (count($all_entries)) { |
|
| 217 | - $count = $this->crud->updateTreeOrder($all_entries); |
|
| 218 | - } else |
|
| 219 | - { |
|
| 220 | - return false; |
|
| 221 | - } |
|
| 222 | - |
|
| 223 | - return 'success for '.$count." items"; |
|
| 224 | - } |
|
| 225 | - |
|
| 226 | - |
|
| 227 | - /** |
|
| 228 | - * Used with AJAX in the list view (datatables) to show extra information about that row that didn't fit in the table. |
|
| 229 | - * It defaults to showing some dummy text. |
|
| 230 | - * |
|
| 231 | - * It's enabled by: |
|
| 232 | - * - setting: $crud->details_row = true; |
|
| 233 | - * - adding the details route for the entity; ex: Route::get('page/{id}/details', 'PageCrudController@showDetailsRow'); |
|
| 234 | - * - adding a view with the following name to change what the row actually contains: app/resources/views/vendor/backpack/crud/details_row.blade.php |
|
| 235 | - */ |
|
| 236 | - public function showDetailsRow($id) |
|
| 237 | - { |
|
| 238 | - $this->crud->hasAccessOrFail('details_row'); |
|
| 239 | - |
|
| 240 | - $this->data['entry'] = $this->crud->getEntry($id); |
|
| 241 | - $this->data['crud'] = $this->crud; |
|
| 242 | - |
|
| 243 | - // load the view from /resources/views/vendor/backpack/crud/ if it exists, otherwise load the one in the package |
|
| 244 | - return view('crud::details_row', $this->data); |
|
| 245 | - } |
|
| 78 | + // insert item in the db |
|
| 79 | + $item = $this->crud->create(\Request::except(['redirect_after_save', 'password'])); |
|
| 80 | + |
|
| 81 | + |
|
| 82 | + // show a success message |
|
| 83 | + \Alert::success(trans('backpack::crud.insert_success'))->flash(); |
|
| 84 | + |
|
| 85 | + // redirect the user where he chose to be redirected |
|
| 86 | + switch (\Request::input('redirect_after_save')) { |
|
| 87 | + case 'current_item_edit': |
|
| 88 | + return \Redirect::to($this->crud->route.'/'.$item->id.'/edit'); |
|
| 89 | + |
|
| 90 | + default: |
|
| 91 | + return \Redirect::to(\Request::input('redirect_after_save')); |
|
| 92 | + } |
|
| 93 | + } |
|
| 94 | + |
|
| 95 | + |
|
| 96 | + /** |
|
| 97 | + * Show the form for editing the specified resource. |
|
| 98 | + * |
|
| 99 | + * @param int $id |
|
| 100 | + * @return Response |
|
| 101 | + */ |
|
| 102 | + public function edit($id) |
|
| 103 | + { |
|
| 104 | + $this->crud->hasAccessOrFail('update'); |
|
| 105 | + |
|
| 106 | + // get the info for that entry |
|
| 107 | + $this->data['entry'] = $this->crud->getEntry($id); |
|
| 108 | + $this->data['crud'] = $this->crud; |
|
| 109 | + $this->data['fields'] = $this->crud->getUpdateFields($id); |
|
| 110 | + $this->data['title'] = trans('backpack::crud.edit').' '.$this->crud->entity_name; |
|
| 111 | + |
|
| 112 | + $this->data['id'] = $id; |
|
| 113 | + |
|
| 114 | + // load the view from /resources/views/vendor/backpack/crud/ if it exists, otherwise load the one in the package |
|
| 115 | + return view('crud::edit', $this->data); |
|
| 116 | + } |
|
| 117 | + |
|
| 118 | + |
|
| 119 | + /** |
|
| 120 | + * Update the specified resource in the database. |
|
| 121 | + * |
|
| 122 | + * @param UpdateRequest $request - type injection used for validation using Requests |
|
| 123 | + * @return \Illuminate\Http\RedirectResponse |
|
| 124 | + */ |
|
| 125 | + public function updateCrud(UpdateRequest $request = null) |
|
| 126 | + { |
|
| 127 | + $this->crud->hasAccessOrFail('update'); |
|
| 128 | + |
|
| 129 | + // update the row in the db |
|
| 130 | + |
|
| 131 | + $this->crud->update(\Request::get('id'), \Request::except('redirect_after_save')); |
|
| 132 | + |
|
| 133 | + // show a success message |
|
| 134 | + \Alert::success(trans('backpack::crud.update_success'))->flash(); |
|
| 135 | + |
|
| 136 | + return \Redirect::to($this->crud->route); |
|
| 137 | + } |
|
| 138 | + |
|
| 139 | + |
|
| 140 | + /** |
|
| 141 | + * Display the specified resource. |
|
| 142 | + * |
|
| 143 | + * @param int $id |
|
| 144 | + * @return Response |
|
| 145 | + */ |
|
| 146 | + public function show($id) |
|
| 147 | + { |
|
| 148 | + $this->crud->hasAccessOrFail('show'); |
|
| 149 | + |
|
| 150 | + // get the info for that entry |
|
| 151 | + $this->data['entry'] = $this->crud->getEntry($id); |
|
| 152 | + $this->data['crud'] = $this->crud; |
|
| 153 | + $this->data['title'] = trans('backpack::crud.preview').' '.$this->crud->entity_name; |
|
| 154 | + |
|
| 155 | + // load the view from /resources/views/vendor/backpack/crud/ if it exists, otherwise load the one in the package |
|
| 156 | + return view('crud::show', $this->data); |
|
| 157 | + } |
|
| 158 | + |
|
| 159 | + |
|
| 160 | + /** |
|
| 161 | + * Remove the specified resource from storage. |
|
| 162 | + * |
|
| 163 | + * @param int $id |
|
| 164 | + * @return string |
|
| 165 | + */ |
|
| 166 | + public function destroy($id) |
|
| 167 | + { |
|
| 168 | + $this->crud->hasAccessOrFail('delete'); |
|
| 169 | + return $this->crud->delete($id); |
|
| 170 | + } |
|
| 171 | + |
|
| 172 | + |
|
| 173 | + /** |
|
| 174 | + * Reorder the items in the database using the Nested Set pattern. |
|
| 175 | + * |
|
| 176 | + * Database columns needed: id, parent_id, lft, rgt, depth, name/title |
|
| 177 | + * |
|
| 178 | + * @return Response |
|
| 179 | + */ |
|
| 180 | + public function reorder($lang = false) |
|
| 181 | + { |
|
| 182 | + $this->crud->hasAccessOrFail('reorder'); |
|
| 183 | + |
|
| 184 | + if (!$this->crud->isReorderEnabled()) { |
|
| 185 | + abort(403, 'Reorder is disabled.'); |
|
| 186 | + } |
|
| 187 | + |
|
| 188 | + if ($lang == false) |
|
| 189 | + { |
|
| 190 | + $lang = \Lang::locale(); |
|
| 191 | + } |
|
| 192 | + |
|
| 193 | + // get all results for that entity |
|
| 194 | + $this->data['entries'] = $this->crud->getEntries(); |
|
| 195 | + $this->data['crud'] = $this->crud; |
|
| 196 | + $this->data['title'] = trans('backpack::crud.reorder').' '.$this->crud->entity_name; |
|
| 197 | + |
|
| 198 | + // load the view from /resources/views/vendor/backpack/crud/ if it exists, otherwise load the one in the package |
|
| 199 | + return view('crud::reorder', $this->data); |
|
| 200 | + } |
|
| 201 | + |
|
| 202 | + |
|
| 203 | + /** |
|
| 204 | + * Save the new order, using the Nested Set pattern. |
|
| 205 | + * |
|
| 206 | + * Database columns needed: id, parent_id, lft, rgt, depth, name/title |
|
| 207 | + * |
|
| 208 | + * @return |
|
| 209 | + */ |
|
| 210 | + public function saveReorder() |
|
| 211 | + { |
|
| 212 | + $this->crud->hasAccessOrFail('reorder'); |
|
| 213 | + |
|
| 214 | + $all_entries = \Request::input('tree'); |
|
| 215 | + |
|
| 216 | + if (count($all_entries)) { |
|
| 217 | + $count = $this->crud->updateTreeOrder($all_entries); |
|
| 218 | + } else |
|
| 219 | + { |
|
| 220 | + return false; |
|
| 221 | + } |
|
| 222 | + |
|
| 223 | + return 'success for '.$count." items"; |
|
| 224 | + } |
|
| 225 | + |
|
| 226 | + |
|
| 227 | + /** |
|
| 228 | + * Used with AJAX in the list view (datatables) to show extra information about that row that didn't fit in the table. |
|
| 229 | + * It defaults to showing some dummy text. |
|
| 230 | + * |
|
| 231 | + * It's enabled by: |
|
| 232 | + * - setting: $crud->details_row = true; |
|
| 233 | + * - adding the details route for the entity; ex: Route::get('page/{id}/details', 'PageCrudController@showDetailsRow'); |
|
| 234 | + * - adding a view with the following name to change what the row actually contains: app/resources/views/vendor/backpack/crud/details_row.blade.php |
|
| 235 | + */ |
|
| 236 | + public function showDetailsRow($id) |
|
| 237 | + { |
|
| 238 | + $this->crud->hasAccessOrFail('details_row'); |
|
| 239 | + |
|
| 240 | + $this->data['entry'] = $this->crud->getEntry($id); |
|
| 241 | + $this->data['crud'] = $this->crud; |
|
| 242 | + |
|
| 243 | + // load the view from /resources/views/vendor/backpack/crud/ if it exists, otherwise load the one in the package |
|
| 244 | + return view('crud::details_row', $this->data); |
|
| 245 | + } |
|
| 246 | 246 | |
| 247 | 247 | |
| 248 | 248 | |
@@ -1,12 +1,8 @@ |
||
| 1 | 1 | <?php namespace App\Http\Controllers\Admin; |
| 2 | 2 | |
| 3 | -use App\Http\Requests; |
|
| 4 | -use App\Http\Controllers\Controller; |
|
| 5 | 3 | use Backpack\CRUD\app\Http\Controllers\CrudController; |
| 6 | -use Illuminate\Http\Request; |
|
| 7 | 4 | |
| 8 | 5 | // VALIDATION: change the requests to match your own file names if you need form validation |
| 9 | -use Backpack\CRUD\app\Http\Requests\CrudRequest as StoreRequest; |
|
| 10 | 6 | use Backpack\CRUD\app\Http\Requests\CrudRequest as UpdateRequest; |
| 11 | 7 | |
| 12 | 8 | class ExampleCrudController extends CrudController { |
@@ -11,17 +11,17 @@ discard block |
||
| 11 | 11 | |
| 12 | 12 | class ExampleCrudController extends CrudController { |
| 13 | 13 | |
| 14 | - public function __construct() { |
|
| 14 | + public function __construct() { |
|
| 15 | 15 | parent::__construct(); |
| 16 | 16 | |
| 17 | - /* |
|
| 17 | + /* |
|
| 18 | 18 | |-------------------------------------------------------------------------- |
| 19 | 19 | | API |
| 20 | 20 | |-------------------------------------------------------------------------- |
| 21 | 21 | */ |
| 22 | 22 | |
| 23 | 23 | |
| 24 | - // USAGE LEVEL 1 - ALWAYS ================================================== LEVEL 1 |
|
| 24 | + // USAGE LEVEL 1 - ALWAYS ================================================== LEVEL 1 |
|
| 25 | 25 | $this->crud->setModel("App\Models\Example"); |
| 26 | 26 | $this->crud->setRoute("admin/example"); |
| 27 | 27 | // $this->crud->setRouteName("admin.example"); |
@@ -33,45 +33,45 @@ discard block |
||
| 33 | 33 | |
| 34 | 34 | |
| 35 | 35 | |
| 36 | - // USAGE LEVEL 2 - OFTEN ================================================== LEVEL 2 |
|
| 36 | + // USAGE LEVEL 2 - OFTEN ================================================== LEVEL 2 |
|
| 37 | 37 | |
| 38 | 38 | |
| 39 | 39 | // ------ FIELDS (the last parameter is always the form - create/update/both) |
| 40 | - // TODO: $this->crud->addField('name', $options, 'update/create/both'); |
|
| 41 | - // TODO: $this->crud->addFields($array_of_arrays, 'update/create/both'); |
|
| 42 | - // TODO: $this->crud->removeField('name', 'update/create/both'); |
|
| 43 | - // TODO: $this->crud->removeFields($array_of_names, 'update/create/both'); |
|
| 44 | - // TODO: $this->crud->replaceField('name', 'update/create/both'); |
|
| 40 | + // TODO: $this->crud->addField('name', $options, 'update/create/both'); |
|
| 41 | + // TODO: $this->crud->addFields($array_of_arrays, 'update/create/both'); |
|
| 42 | + // TODO: $this->crud->removeField('name', 'update/create/both'); |
|
| 43 | + // TODO: $this->crud->removeFields($array_of_names, 'update/create/both'); |
|
| 44 | + // TODO: $this->crud->replaceField('name', 'update/create/both'); |
|
| 45 | 45 | |
| 46 | - // TODO: $this->crud->setRequiredFields(['field_1', 'field_2'], 'update/create/both'); |
|
| 47 | - // TODO: $this->crud->setRequiredField('field_1', 'update/create/both'); |
|
| 48 | - // TODO: $this->crud->getRequiredFields(); |
|
| 46 | + // TODO: $this->crud->setRequiredFields(['field_1', 'field_2'], 'update/create/both'); |
|
| 47 | + // TODO: $this->crud->setRequiredField('field_1', 'update/create/both'); |
|
| 48 | + // TODO: $this->crud->getRequiredFields(); |
|
| 49 | 49 | |
| 50 | - // TODO: $this->crud->setFieldOrder(['field_1', 'field_2', 'field_3'], 'update/create/both'); |
|
| 50 | + // TODO: $this->crud->setFieldOrder(['field_1', 'field_2', 'field_3'], 'update/create/both'); |
|
| 51 | 51 | |
| 52 | 52 | |
| 53 | 53 | // ------ COLUMNS |
| 54 | - // $this->crud->addColumn(); // add a single column, at the end of the stack |
|
| 55 | - // $this->crud->addColumns(); // add multiple columns, at the end of the stack |
|
| 56 | - // $this->crud->removeColumn('column_name'); // remove a column from the stack |
|
| 57 | - // $this->crud->removeColumns(['column_name_1', 'column_name_2']); // remove an array of columns from the stack |
|
| 58 | - // $this->crud->setColumnDetails('column_name', ['attribute' => 'value']); |
|
| 59 | - // $this->crud->setColumnsDetails(['column_1', 'column_2'], ['attribute' => 'value']); |
|
| 60 | - // TODO: $this->crud->setColumnOrder(['column_1', 'column_2', 'column_3']); |
|
| 54 | + // $this->crud->addColumn(); // add a single column, at the end of the stack |
|
| 55 | + // $this->crud->addColumns(); // add multiple columns, at the end of the stack |
|
| 56 | + // $this->crud->removeColumn('column_name'); // remove a column from the stack |
|
| 57 | + // $this->crud->removeColumns(['column_name_1', 'column_name_2']); // remove an array of columns from the stack |
|
| 58 | + // $this->crud->setColumnDetails('column_name', ['attribute' => 'value']); |
|
| 59 | + // $this->crud->setColumnsDetails(['column_1', 'column_2'], ['attribute' => 'value']); |
|
| 60 | + // TODO: $this->crud->setColumnOrder(['column_1', 'column_2', 'column_3']); |
|
| 61 | 61 | |
| 62 | 62 | |
| 63 | - // ------ FIELDS AND COLUMNS |
|
| 64 | - // TODO: $this->crud->setLabel('column_name/field_name', 'New Label'); // changes label for columns, create&update fields |
|
| 63 | + // ------ FIELDS AND COLUMNS |
|
| 64 | + // TODO: $this->crud->setLabel('column_name/field_name', 'New Label'); // changes label for columns, create&update fields |
|
| 65 | 65 | |
| 66 | 66 | |
| 67 | 67 | // ------ ACCESS |
| 68 | - // $this->crud->allowAccess('list'); |
|
| 69 | - // $this->crud->allowAccess(['list', 'create', 'delete']); |
|
| 70 | - // $this->crud->denyAccess('list'); |
|
| 71 | - // $this->crud->denyAccess(['list', 'create', 'delete']); |
|
| 68 | + // $this->crud->allowAccess('list'); |
|
| 69 | + // $this->crud->allowAccess(['list', 'create', 'delete']); |
|
| 70 | + // $this->crud->denyAccess('list'); |
|
| 71 | + // $this->crud->denyAccess(['list', 'create', 'delete']); |
|
| 72 | 72 | |
| 73 | - // $this->crud->hasAccess('add'); // returns true/false |
|
| 74 | - // $this->crud->hasAccessOrFail('add'); // throws 403 error |
|
| 73 | + // $this->crud->hasAccess('add'); // returns true/false |
|
| 74 | + // $this->crud->hasAccessOrFail('add'); // throws 403 error |
|
| 75 | 75 | |
| 76 | 76 | |
| 77 | 77 | // ------ REORDER |
@@ -83,7 +83,7 @@ discard block |
||
| 83 | 83 | |
| 84 | 84 | |
| 85 | 85 | // ------ DETAILS ROW |
| 86 | - // $this->crud->enableDetailsRow(); |
|
| 86 | + // $this->crud->enableDetailsRow(); |
|
| 87 | 87 | // NOTE: you also need to do allow access to the right users: $this->crud->allowAccess('details_row'); |
| 88 | 88 | // NOTE: you also need to do overwrite the showDetailsRow($id) method in your EntityCrudController to show whatever you'd like in the details row OR overwrite the views/backpack/crud/details_row.blade.php |
| 89 | 89 | |
@@ -92,101 +92,101 @@ discard block |
||
| 92 | 92 | |
| 93 | 93 | // ------ ADVANCED QUERIES |
| 94 | 94 | // $this->crud->addClause('active'); |
| 95 | - // $this->crud->addClause('type', 'car'); |
|
| 96 | - // $this->crud->addClause('where', 'name', '==', 'car'); |
|
| 97 | - // $this->crud->addClause('whereName', 'car'); |
|
| 98 | - // $this->crud->addClause('whereHas', 'posts', function($query) { |
|
| 99 | - // $query->activePosts(); |
|
| 100 | - // }); |
|
| 95 | + // $this->crud->addClause('type', 'car'); |
|
| 96 | + // $this->crud->addClause('where', 'name', '==', 'car'); |
|
| 97 | + // $this->crud->addClause('whereName', 'car'); |
|
| 98 | + // $this->crud->addClause('whereHas', 'posts', function($query) { |
|
| 99 | + // $query->activePosts(); |
|
| 100 | + // }); |
|
| 101 | 101 | // $this->crud->orderBy(); |
| 102 | 102 | // $this->crud->groupBy(); |
| 103 | 103 | // $this->crud->limit(); |
| 104 | 104 | |
| 105 | 105 | |
| 106 | 106 | |
| 107 | - // USAGE LEVEL 3 - SOMETIMES ============================================== LEVEL 3 |
|
| 107 | + // USAGE LEVEL 3 - SOMETIMES ============================================== LEVEL 3 |
|
| 108 | 108 | |
| 109 | 109 | // TODO: $this->crud->setButtons(); // default includes edit and delete, with their name, icon, permission, link and class (btn-default) |
| 110 | - // TODO: $this->crud->addButton(); |
|
| 111 | - // TODO: $this->crud->removeButton(); |
|
| 112 | - // TODO: $this->crud->replaceButton(); |
|
| 110 | + // TODO: $this->crud->addButton(); |
|
| 111 | + // TODO: $this->crud->removeButton(); |
|
| 112 | + // TODO: $this->crud->replaceButton(); |
|
| 113 | 113 | |
| 114 | 114 | |
| 115 | 115 | |
| 116 | - // USAGE LEVEL 4 - RARELY ================================================== LEVEL 4 |
|
| 116 | + // USAGE LEVEL 4 - RARELY ================================================== LEVEL 4 |
|
| 117 | 117 | |
| 118 | - // $this->crud->getEntry($entry_id); |
|
| 119 | - // $this->crud->getEntries(); |
|
| 118 | + // $this->crud->getEntry($entry_id); |
|
| 119 | + // $this->crud->getEntries(); |
|
| 120 | 120 | |
| 121 | - // $this->crud->getFields('create/update/both'); |
|
| 121 | + // $this->crud->getFields('create/update/both'); |
|
| 122 | 122 | |
| 123 | - // $this->crud->create($entry_request); |
|
| 124 | - // $this->crud->update($entry_id, $entry_request); |
|
| 125 | - // $this->crud->delete($entry_id); |
|
| 123 | + // $this->crud->create($entry_request); |
|
| 124 | + // $this->crud->update($entry_id, $entry_request); |
|
| 125 | + // $this->crud->delete($entry_id); |
|
| 126 | 126 | |
| 127 | 127 | |
| 128 | - // USAGE LEVEL 5 - ALMOST NEVER ============================================== LEVEL 5 |
|
| 128 | + // USAGE LEVEL 5 - ALMOST NEVER ============================================== LEVEL 5 |
|
| 129 | 129 | |
| 130 | - // $this->crud->updateTreeOrder($all_entries); |
|
| 130 | + // $this->crud->updateTreeOrder($all_entries); |
|
| 131 | 131 | |
| 132 | 132 | |
| 133 | 133 | |
| 134 | 134 | |
| 135 | 135 | // ------------------------ |
| 136 | - // MEANWHILE THIS WILL WORK |
|
| 137 | - // ------------------------ |
|
| 136 | + // MEANWHILE THIS WILL WORK |
|
| 137 | + // ------------------------ |
|
| 138 | 138 | |
| 139 | 139 | |
| 140 | 140 | $this->crud->reorder = true; |
| 141 | - $this->crud->reorder_label = "name"; |
|
| 142 | - $this->crud->reorder_max_level = 3; |
|
| 143 | - $this->crud->details_row = true; |
|
| 144 | - // $this->crud->permissions = ['add', 'list', 'edit', 'delete', 'show']; |
|
| 141 | + $this->crud->reorder_label = "name"; |
|
| 142 | + $this->crud->reorder_max_level = 3; |
|
| 143 | + $this->crud->details_row = true; |
|
| 144 | + // $this->crud->permissions = ['add', 'list', 'edit', 'delete', 'show']; |
|
| 145 | 145 | |
| 146 | 146 | $this->crud->columns = [ |
| 147 | - [ |
|
| 148 | - 'name' => 'name', |
|
| 149 | - 'label' => "Example item text" |
|
| 150 | - ], |
|
| 151 | - [ |
|
| 152 | - 'label' => "Parent", |
|
| 153 | - 'type' => 'select', |
|
| 154 | - 'name' => 'parent_id', |
|
| 155 | - 'entity' => 'parent', |
|
| 156 | - 'attribute' => 'name', |
|
| 157 | - 'model' => "App\Models\Example" |
|
| 158 | - ], |
|
| 159 | - ]; |
|
| 160 | - $this->crud->fields = [ |
|
| 161 | - [ |
|
| 162 | - 'name' => 'name', |
|
| 163 | - 'label' => "Example item text" |
|
| 164 | - ], |
|
| 165 | - [ |
|
| 166 | - 'label' => "Parent", |
|
| 167 | - 'type' => 'select', |
|
| 168 | - 'name' => 'parent_id', |
|
| 169 | - 'entity' => 'parent', |
|
| 170 | - 'attribute' => 'name', |
|
| 171 | - 'model' => "App\Models\Example" |
|
| 172 | - ], |
|
| 173 | - [ |
|
| 174 | - 'name' => 'type', |
|
| 175 | - 'label' => "Type", |
|
| 176 | - 'type' => 'page_or_link' |
|
| 177 | - ], |
|
| 178 | - ]; |
|
| 147 | + [ |
|
| 148 | + 'name' => 'name', |
|
| 149 | + 'label' => "Example item text" |
|
| 150 | + ], |
|
| 151 | + [ |
|
| 152 | + 'label' => "Parent", |
|
| 153 | + 'type' => 'select', |
|
| 154 | + 'name' => 'parent_id', |
|
| 155 | + 'entity' => 'parent', |
|
| 156 | + 'attribute' => 'name', |
|
| 157 | + 'model' => "App\Models\Example" |
|
| 158 | + ], |
|
| 159 | + ]; |
|
| 160 | + $this->crud->fields = [ |
|
| 161 | + [ |
|
| 162 | + 'name' => 'name', |
|
| 163 | + 'label' => "Example item text" |
|
| 164 | + ], |
|
| 165 | + [ |
|
| 166 | + 'label' => "Parent", |
|
| 167 | + 'type' => 'select', |
|
| 168 | + 'name' => 'parent_id', |
|
| 169 | + 'entity' => 'parent', |
|
| 170 | + 'attribute' => 'name', |
|
| 171 | + 'model' => "App\Models\Example" |
|
| 172 | + ], |
|
| 173 | + [ |
|
| 174 | + 'name' => 'type', |
|
| 175 | + 'label' => "Type", |
|
| 176 | + 'type' => 'page_or_link' |
|
| 177 | + ], |
|
| 178 | + ]; |
|
| 179 | 179 | |
| 180 | 180 | } |
| 181 | 181 | |
| 182 | - public function store(StoreRequest $request) |
|
| 183 | - { |
|
| 184 | - return parent::storeCrud(); |
|
| 185 | - } |
|
| 182 | + public function store(StoreRequest $request) |
|
| 183 | + { |
|
| 184 | + return parent::storeCrud(); |
|
| 185 | + } |
|
| 186 | 186 | |
| 187 | - public function update(UpdateRequest $request) |
|
| 188 | - { |
|
| 189 | - return parent::updateCrud(); |
|
| 190 | - } |
|
| 187 | + public function update(UpdateRequest $request) |
|
| 188 | + { |
|
| 189 | + return parent::updateCrud(); |
|
| 190 | + } |
|
| 191 | 191 | |
| 192 | 192 | } |
@@ -1,9 +1,6 @@ |
||
| 1 | 1 | <?php namespace Backpack\Crud\app\Http\Controllers; |
| 2 | 2 | |
| 3 | -use Illuminate\Foundation\Bus\DispatchesJobs; |
|
| 4 | 3 | use Illuminate\Routing\Controller as BaseController; |
| 5 | -use Illuminate\Foundation\Validation\ValidatesRequests; |
|
| 6 | -use Illuminate\Foundation\Auth\Access\AuthorizesRequests; |
|
| 7 | 4 | use Backpack\CRUD\Crud; |
| 8 | 5 | |
| 9 | 6 | /** |
@@ -4,10 +4,7 @@ |
||
| 4 | 4 | */ |
| 5 | 5 | namespace Backpack\Crud\Http\Controllers; |
| 6 | 6 | |
| 7 | -use Illuminate\Foundation\Bus\DispatchesJobs; |
|
| 8 | 7 | use Illuminate\Routing\Controller as BaseController; |
| 9 | -use Illuminate\Foundation\Validation\ValidatesRequests; |
|
| 10 | -use Illuminate\Foundation\Auth\Access\AuthorizesRequests; |
|
| 11 | 8 | use Backpack\Crud\Crud; |
| 12 | 9 | |
| 13 | 10 | /** |
@@ -1,9 +1,6 @@ |
||
| 1 | 1 | <?php namespace Backpack\CRUD; |
| 2 | 2 | |
| 3 | -use Illuminate\Database\Eloquent\Collection; |
|
| 4 | -use Illuminate\Database\Eloquent\Model; |
|
| 5 | 3 | use DB; |
| 6 | -use Lang; |
|
| 7 | 4 | |
| 8 | 5 | trait CrudTrait { |
| 9 | 6 | |
@@ -94,9 +94,9 @@ discard block |
||
| 94 | 94 | $model->{$relation['name']}()->sync($data[$key]); |
| 95 | 95 | |
| 96 | 96 | foreach($relation['pivotFields'] as $pivotField){ |
| 97 | - foreach($data[$pivotField] as $pivot_id => $field){ |
|
| 98 | - $model->{$relation['name']}()->updateExistingPivot($pivot_id, [$pivotField => $field]); |
|
| 99 | - } |
|
| 97 | + foreach($data[$pivotField] as $pivot_id => $field){ |
|
| 98 | + $model->{$relation['name']}()->updateExistingPivot($pivot_id, [$pivotField => $field]); |
|
| 99 | + } |
|
| 100 | 100 | } |
| 101 | 101 | } |
| 102 | 102 | } |
@@ -137,7 +137,7 @@ discard block |
||
| 137 | 137 | } |
| 138 | 138 | |
| 139 | 139 | |
| 140 | - /* |
|
| 140 | + /* |
|
| 141 | 141 | |-------------------------------------------------------------------------- |
| 142 | 142 | | READ |
| 143 | 143 | |-------------------------------------------------------------------------- |
@@ -220,7 +220,7 @@ discard block |
||
| 220 | 220 | |
| 221 | 221 | |
| 222 | 222 | |
| 223 | - /* |
|
| 223 | + /* |
|
| 224 | 224 | |-------------------------------------------------------------------------- |
| 225 | 225 | | UPDATE |
| 226 | 226 | |-------------------------------------------------------------------------- |
@@ -276,7 +276,7 @@ discard block |
||
| 276 | 276 | |
| 277 | 277 | |
| 278 | 278 | |
| 279 | - /* |
|
| 279 | + /* |
|
| 280 | 280 | |-------------------------------------------------------------------------- |
| 281 | 281 | | DELETE |
| 282 | 282 | |-------------------------------------------------------------------------- |
@@ -367,7 +367,7 @@ discard block |
||
| 367 | 367 | |
| 368 | 368 | |
| 369 | 369 | |
| 370 | - /* |
|
| 370 | + /* |
|
| 371 | 371 | |-------------------------------------------------------------------------- |
| 372 | 372 | | CRUD ACCESS |
| 373 | 373 | |-------------------------------------------------------------------------- |
@@ -796,7 +796,7 @@ discard block |
||
| 796 | 796 | |
| 797 | 797 | if (!in_array($field, $this->model->getHidden())) |
| 798 | 798 | { |
| 799 | - $this->columns[] = [ |
|
| 799 | + $this->columns[] = [ |
|
| 800 | 800 | 'name' => $field, |
| 801 | 801 | 'label' => ucfirst($field), |
| 802 | 802 | 'type' => $this->getFieldTypeFromDbColumnType($field) |
@@ -1164,10 +1164,10 @@ discard block |
||
| 1164 | 1164 | |
| 1165 | 1165 | public function addCreateField($field) |
| 1166 | 1166 | { |
| 1167 | - return $this->add('create_fields', $field); |
|
| 1167 | + return $this->add('create_fields', $field); |
|
| 1168 | 1168 | } |
| 1169 | 1169 | |
| 1170 | - public function setUpdateFields($fields) |
|
| 1170 | + public function setUpdateFields($fields) |
|
| 1171 | 1171 | { |
| 1172 | 1172 | $this->addMultiple('update_fields', $fields); |
| 1173 | 1173 | } |
@@ -20,42 +20,42 @@ discard block |
||
| 20 | 20 | |
| 21 | 21 | @section('content') |
| 22 | 22 | <?php |
| 23 | - function tree_element($entry, $key, $all_entries, $crud) |
|
| 24 | - { |
|
| 23 | + function tree_element($entry, $key, $all_entries, $crud) |
|
| 24 | + { |
|
| 25 | 25 | if (!isset($entry->tree_element_shown)) { |
| 26 | - // mark the element as shown |
|
| 27 | - $all_entries[$key]->tree_element_shown = true; |
|
| 28 | - $entry->tree_element_shown = true; |
|
| 26 | + // mark the element as shown |
|
| 27 | + $all_entries[$key]->tree_element_shown = true; |
|
| 28 | + $entry->tree_element_shown = true; |
|
| 29 | 29 | |
| 30 | - // show the tree element |
|
| 31 | - echo '<li id="list_'.$entry->id.'">'; |
|
| 32 | - echo '<div><span class="disclose"><span></span></span>'.$entry->{$crud->reorder_label}.'</div>'; |
|
| 30 | + // show the tree element |
|
| 31 | + echo '<li id="list_'.$entry->id.'">'; |
|
| 32 | + echo '<div><span class="disclose"><span></span></span>'.$entry->{$crud->reorder_label}.'</div>'; |
|
| 33 | 33 | |
| 34 | - // see if this element has any children |
|
| 35 | - $children = []; |
|
| 36 | - foreach ($all_entries as $key => $subentry) { |
|
| 34 | + // see if this element has any children |
|
| 35 | + $children = []; |
|
| 36 | + foreach ($all_entries as $key => $subentry) { |
|
| 37 | 37 | if ($subentry->parent_id == $entry->id) { |
| 38 | - $children[] = $subentry; |
|
| 38 | + $children[] = $subentry; |
|
| 39 | + } |
|
| 39 | 40 | } |
| 40 | - } |
|
| 41 | 41 | |
| 42 | - $children = collect($children)->sortBy('lft'); |
|
| 42 | + $children = collect($children)->sortBy('lft'); |
|
| 43 | 43 | |
| 44 | - // if it does have children, show them |
|
| 45 | - if (count($children)) { |
|
| 44 | + // if it does have children, show them |
|
| 45 | + if (count($children)) { |
|
| 46 | 46 | echo '<ol>'; |
| 47 | 47 | foreach ($children as $key => $child) { |
| 48 | - $children[$key] = tree_element($child, $child->id, $all_entries, $crud); |
|
| 48 | + $children[$key] = tree_element($child, $child->id, $all_entries, $crud); |
|
| 49 | 49 | } |
| 50 | 50 | echo '</ol>'; |
| 51 | - } |
|
| 52 | - echo '</li>'; |
|
| 51 | + } |
|
| 52 | + echo '</li>'; |
|
| 53 | 53 | } |
| 54 | 54 | |
| 55 | 55 | return $entry; |
| 56 | - } |
|
| 56 | + } |
|
| 57 | 57 | |
| 58 | - ?> |
|
| 58 | + ?> |
|
| 59 | 59 | <div class="row"> |
| 60 | 60 | <div class="col-md-8 col-md-offset-2"> |
| 61 | 61 | @if ($crud->hasAccess('list')) |
@@ -87,15 +87,15 @@ discard block |
||
| 87 | 87 | |
| 88 | 88 | <ol class="sortable"> |
| 89 | 89 | <?php |
| 90 | - $all_entries = collect($entries->all())->sortBy('lft')->keyBy('id'); |
|
| 91 | - $root_entries = $all_entries->filter(function($item) { |
|
| 90 | + $all_entries = collect($entries->all())->sortBy('lft')->keyBy('id'); |
|
| 91 | + $root_entries = $all_entries->filter(function($item) { |
|
| 92 | 92 | return $item->parent_id == 0; |
| 93 | - }); |
|
| 94 | - ?> |
|
| 93 | + }); |
|
| 94 | + ?> |
|
| 95 | 95 | @foreach ($root_entries as $key => $entry) |
| 96 | 96 | <?php |
| 97 | 97 | $root_entries[$key] = tree_element($entry, $key, $all_entries, $crud); |
| 98 | - ?> |
|
| 98 | + ?> |
|
| 99 | 99 | @endforeach |
| 100 | 100 | </ol> |
| 101 | 101 | |
@@ -2,34 +2,34 @@ discard block |
||
| 2 | 2 | <div class="form-group checklist_dependency" data-entity ="{{ $field['field_unique_name'] }}"> |
| 3 | 3 | <label>{{ $field['label'] }}</label> |
| 4 | 4 | <?php |
| 5 | - $entity_model = $crud->getModel(); |
|
| 5 | + $entity_model = $crud->getModel(); |
|
| 6 | 6 | |
| 7 | - //short name for dependency fields |
|
| 8 | - $primary_dependency = $field['dependencies']['primary']; |
|
| 9 | - $secondary_dependency = $field['dependencies']['secondary']; |
|
| 7 | + //short name for dependency fields |
|
| 8 | + $primary_dependency = $field['dependencies']['primary']; |
|
| 9 | + $secondary_dependency = $field['dependencies']['secondary']; |
|
| 10 | 10 | |
| 11 | 11 | |
| 12 | - //all items with relation |
|
| 13 | - $dependencies = $primary_dependency['model']::with($primary_dependency['entity_secondary'])->get(); |
|
| 12 | + //all items with relation |
|
| 13 | + $dependencies = $primary_dependency['model']::with($primary_dependency['entity_secondary'])->get(); |
|
| 14 | 14 | |
| 15 | - $dependencyArray = []; |
|
| 15 | + $dependencyArray = []; |
|
| 16 | 16 | |
| 17 | - //convert dependency array to simple matrix ( prymary id as key and array with secondaries id ) |
|
| 18 | - foreach($dependencies as $primary){ |
|
| 19 | - $dependencyArray[$primary->id] = []; |
|
| 17 | + //convert dependency array to simple matrix ( prymary id as key and array with secondaries id ) |
|
| 18 | + foreach($dependencies as $primary){ |
|
| 19 | + $dependencyArray[$primary->id] = []; |
|
| 20 | 20 | foreach($primary->{$primary_dependency['entity_secondary']} as $secondary){ |
| 21 | 21 | $dependencyArray[$primary->id][] = $secondary->id; |
| 22 | 22 | } |
| 23 | - } |
|
| 23 | + } |
|
| 24 | 24 | |
| 25 | - //for update form, get initial state of the entity |
|
| 26 | - if( isset($id) && $id ){ |
|
| 25 | + //for update form, get initial state of the entity |
|
| 26 | + if( isset($id) && $id ){ |
|
| 27 | 27 | |
| 28 | 28 | //get entity with relations for primary dependency |
| 29 | 29 | $entity_dependencies = $entity_model->with($primary_dependency['entity']) |
| 30 | - ->with($primary_dependency['entity'].'.'.$primary_dependency['entity_secondary']) |
|
| 31 | - ->where('id', $id) |
|
| 32 | - ->first(); |
|
| 30 | + ->with($primary_dependency['entity'].'.'.$primary_dependency['entity_secondary']) |
|
| 31 | + ->where('id', $id) |
|
| 32 | + ->first(); |
|
| 33 | 33 | |
| 34 | 34 | $secondaries_from_primary = []; |
| 35 | 35 | |
@@ -40,23 +40,23 @@ discard block |
||
| 40 | 40 | |
| 41 | 41 | //create secondary dependency from primary relation, used to check what chekbox must be check from second checklist |
| 42 | 42 | if( old($primary_dependency['name']) ) { |
| 43 | - foreach( old($primary_dependency['name']) as $primary_item ){ |
|
| 43 | + foreach( old($primary_dependency['name']) as $primary_item ){ |
|
| 44 | 44 | foreach($dependencyArray[$primary_item] as $second_item ){ |
| 45 | 45 | $secondary_ids[$second_item] = $second_item; |
| 46 | 46 | } |
| 47 | - } |
|
| 47 | + } |
|
| 48 | 48 | }else{ //create dependecies from relation if not from validate error |
| 49 | - foreach( $primary_array as $primary_item ){ |
|
| 49 | + foreach( $primary_array as $primary_item ){ |
|
| 50 | 50 | foreach($primary_item[$secondary_dependency['entity']] as $second_item ){ |
| 51 | 51 | $secondary_ids[$second_item['id']] = $second_item['id']; |
| 52 | 52 | } |
| 53 | - } |
|
| 53 | + } |
|
| 54 | 54 | } |
| 55 | 55 | |
| 56 | - } |
|
| 56 | + } |
|
| 57 | 57 | |
| 58 | - //json encode of dependency matrix |
|
| 59 | - $dependencyJson = json_encode($dependencyArray); |
|
| 58 | + //json encode of dependency matrix |
|
| 59 | + $dependencyJson = json_encode($dependencyArray); |
|
| 60 | 60 | ?> |
| 61 | 61 | <script> |
| 62 | 62 | var {{ $field['field_unique_name'] }} = {!! $dependencyJson !!}; |
@@ -190,10 +190,10 @@ discard block |
||
| 190 | 190 | |
| 191 | 191 | public function addCreateField($field) |
| 192 | 192 | { |
| 193 | - return $this->add('createFields', $field); |
|
| 193 | + return $this->add('createFields', $field); |
|
| 194 | 194 | } |
| 195 | 195 | |
| 196 | - public function setUpdateFields($fields) |
|
| 196 | + public function setUpdateFields($fields) |
|
| 197 | 197 | { |
| 198 | 198 | $this->addMultiple('updateFields', $fields); |
| 199 | 199 | } |
@@ -541,9 +541,9 @@ discard block |
||
| 541 | 541 | $model->{$relation['name']}()->sync($data[$key]); |
| 542 | 542 | |
| 543 | 543 | foreach($relation['pivotFields'] as $pivotField){ |
| 544 | - foreach($data[$pivotField] as $pivot_id => $field){ |
|
| 545 | - $model->{$relation['name']}()->updateExistingPivot($pivot_id, [$pivotField => $field]); |
|
| 546 | - } |
|
| 544 | + foreach($data[$pivotField] as $pivot_id => $field){ |
|
| 545 | + $model->{$relation['name']}()->updateExistingPivot($pivot_id, [$pivotField => $field]); |
|
| 546 | + } |
|
| 547 | 547 | } |
| 548 | 548 | } |
| 549 | 549 | } |