/**
  * Store a newly created resource in storage.
  *
  * @param  \Illuminate\Http\Request  $request
  * @return \Illuminate\Http\Response
  */
 public function store(Request $request, $node_id)
 {
     $data = $request->all();
     $rules = $this->provider->rules($data['module']);
     $validator = Validator::make($data, $rules);
     //TODO
     if ($validator->fails()) {
         return redirect()->back()->withErrors($validator)->withInput();
     }
     $data = Data::checkActive($data);
     $data = Data::renameField($data, 'module', 'module_id');
     //        dd($data);
     // Create Module
     $module = $this->provider->store($data);
     $data = Data::addField($data, 'row', $module['id']);
     //Create Element
     $element = \App\Element::create($data);
     $element->save();
     $data = Data::addField($data, 'node_id', $node_id);
     $data = Data::addField($data, 'element_id', $element->id);
     $content = \App\Content::create($data)->save();
     //todo: flash message
     return redirect()->route('admin.element.index', ['node' => $node_id]);
 }