Example #1
0
 /**
  * Store a newly created resource in storage.
  *
  * @return Response
  */
 public function store(Request $request)
 {
     $resource = new Resource();
     $resource->wood = 1000;
     $resource->stone = 1000;
     $resource->gold = 1000;
     $resource->save();
     $population = new Population();
     $population->count = 1000;
     $population->save();
     $city = new City();
     $city->Name = $request->name;
     $city->player()->associate(Auth::user());
     $city->resource()->associate($resource);
     $city->save();
 }
 public function postNew(Request $request, Resource $resource)
 {
     //
     $input = $request->all();
     $topics = $input['topics'];
     array_forget($input, 'topics');
     foreach ($input as $k => $v) {
         if ($k != "_token" && $k != "submit") {
             $resource->{$k} = $v;
         }
     }
     // return $resource;
     if ($resource->save()) {
         $resource->topics()->sync($topics);
     }
     // return $resource;
     // return var_dump($input);
     // Resource::create("name"=>);
     return redirect()->back();
 }
Example #3
0
 /**
  * Handles interaction with file resources
  *
  * @return \Illuminate\Http\Response
  */
 public function resources(Request $request, $method)
 {
     switch ($method) {
         case 'upload':
             $i = 0;
             $files = array();
             $message = array();
             while ($request->has('file-' . $i)) {
                 $key = time() . "-" . mt_rand();
                 $inputName = 'file-' . $i;
                 $files[$key] = $request->input($inputName);
                 $i++;
             }
             foreach ($files as $fileKey => $fileData) {
                 $splitTypeAndBase64 = explode(";", $fileData);
                 \Log::debug($splitTypeAndBase64);
                 $dataType = explode(":", $splitTypeAndBase64[0]);
                 $splitType = explode("/", $dataType[1]);
                 $base64 = explode(",", $splitTypeAndBase64[1]);
                 $base64 = $base64[1];
                 $resource = new Resource();
                 $resource->type = $dataType[1];
                 $resource->base64 = $base64;
                 $resource->save();
                 $message[$resource->id] = array("type" => $resource->type, "data" => $splitType[0] == "image" ? $this->constructBase64File($resource) : null);
             }
             return response()->json(["status" => "success", "message" => $message]);
             break;
         case "fetch":
             if ($request->has('id')) {
                 $resource = Resource::where('id', $request->id);
                 if ($resource->count() > 0) {
                     $resource = $resource->first(["id", "type", "base64"]);
                     return response()->json(["status" => "success", "type" => $resource->type, "base64" => $this->constructBase64File($resource)]);
                 }
             } else {
                 return response()->json(["status" => "failure", "message" => "Missing ID parameter."]);
             }
             break;
         default:
             return response()->json(["status" => "failure", "message" => "Unknown method"]);
             break;
     }
 }