Пример #1
0
 public function create(TableRow $row, array $input)
 {
     $type = array_get($input, 'type');
     $pairs = array_get($input, $type);
     foreach ($pairs['names'] as $key => $value) {
         $pair = new TablePair(['key' => $pairs['names'][$key], 'value' => $pairs['values'][$key]]);
         $row->pairs()->save($pair);
     }
 }
Пример #2
0
 public function create(TableRow $row, array $input)
 {
     $v = Validator::make($input, $this->rule);
     if ($v->fails()) {
         $exception = new ValidationFailException('Valid failed.');
         $exception->setValidator($v);
         throw $exception;
     }
     $input['local_key'] = $row->column_name;
     $row->relationship()->save(new Relationship($input));
 }
Пример #3
0
 public function initialRows()
 {
     $table = $this->table_name;
     $columns = Schema::getColumnListing($table);
     foreach ($columns as $column) {
         if (0 != TableRow::where(['column_name' => $column])->count()) {
             continue;
         }
         TableRow::create(['table_name' => $table, 'column_name' => $column, 'type' => 'text', 'creatable' => true, 'editable' => true, 'listable' => true]);
     }
     //Delete unused columns
     TableRow::whereNotIn('column_name', $columns)->delete();
 }
Пример #4
0
 /**
  * Update Settings
  *
  * @Post("table/{table_name}/settings", as="setting.update")
  */
 public function postSettings($table)
 {
     $columns = Input::get('columns');
     foreach ($columns as $column) {
         $row = TableRow::where('column_name', $column)->where('table_name', $table)->first();
         $row_data = Input::get($column);
         try {
             $row->updateRow($row_data);
         } catch (ValidationFailException $e) {
             Flash::error(Utils::buildMessages($e->getValidator()->errors()->all()));
             return redirect()->back();
         }
     }
     Flash::success('Table metadata has been updated.');
     return redirect()->route('setting.show', $table);
 }
Пример #5
0
 public function create(TableRow $row, array $range)
 {
     $pair = new TablePair(['key' => $range['from'], 'value' => $range['to']]);
     $row->pairs()->save($pair);
 }
Пример #6
0
 /**
  * Show table's rows list
  *
  * @Get("table/{table_name}/list", as="table.show")
  */
 public function all($table_name)
 {
     $table = Table::where('table_name', $table_name)->first();
     $columns_names = TableRow::where('table_name', $table_name)->where('listable', 1)->lists('column_name');
     $columns = DB::table($table_name)->select($columns_names)->paginate(15);
     $needles = DB::table($table_name)->paginate(15)->lists($table->needle);
     return view('tables.list', compact('columns_names', 'table', 'columns', 'needles'));
 }