コード例 #1
0
ファイル: MetadataController.php プロジェクト: roehlerw/Kora3
 /**
     /**
 * Process the form submission and add metadata to field or change visibility
 *
 * @param Request $request, int $pid, int $fid
 * @return Response
 */
 public function store(Request $request, $pid, $fid)
 {
     //Changing metadata visibility or adding metadata to a field?
     $this->validate($request, ['type' => 'required']);
     //Make the metadata public or private
     if ($request->input('type') == 'visibility') {
         $form = Form::find($fid);
         if ($request->input('state') == 'true') {
             $form->public_metadata = true;
         } else {
             $form->public_metadata = false;
         }
         $form->save();
         return response("success", 200);
         //The request comes from JQuery, no need to redirect
     } elseif ($request->input('type') == 'addmetadata') {
         $this->validate($request, ['name' => 'required', 'field' => 'required|unique:metadatas,flid']);
         $field = Field::where('pid', $pid)->where('fid', $fid)->where('flid', '=', $request->input('field'))->first();
         $metadata = new Metadata(['pid' => $pid, 'fid' => $fid, 'name' => $request->input('name')]);
         $metadata->field()->associate($field);
         $field->metadata()->save($metadata);
         return redirect()->action('MetadataController@index', compact('pid', 'fid'));
         //Laravel form submission needs this
     }
 }