/** * Store a newly created resource in storage. * * @return Response */ public function postStore(ProjectFormRequest $request) { $step = $request->get('step'); $secret_key = $request->get('_secret_key_'); if (empty($secret_key)) { $project = new Project(); $project->fill($request->except('_token')); $project->user_id = $request->input('user_id'); $project->slug = Str::slug($request->input('name')); $project->currencytype = $request->input('currencytype'); # Attach file with project if ($request->hasFile('file_attachment')) { $response = Event::fire(new FileAttachment($request, ['input_file_tag' => 'file_attachment', 'width' => $this->width, 'height' => $this->height, 'mHeight' => $this->mHeight, 'mWidth' => $this->mWidth])); if (count($response) > 0) { $project->file_attachment = $response[0]; } } /** section to upload video file to Youtube after saving it in * a local upload folder */ if ($request->hasFile('video_attachment') && $request->file('video_attachment')->isValid()) { //dd('here'); $uploadedVideo = $request->file('video_attachment'); try { $randomFileName = FileUploadUtilities::generateRandomFileName($uploadedVideo->getClientOriginalExtension()); $uploadedVideoFile = $uploadedVideo->move(FileUploadUtilities::getAbsoluteVideoUploadPath(), $randomFileName); //uploading it to YouTube using library façade //dd(FileUploadUtilities::getAbsoluteVideoUploadPath(). $randomFileName); $id = \Youtube::upload(FileUploadUtilities::getAbsoluteVideoUploadPath() . $randomFileName, ['title' => $request->get('name'), 'description' => $request->get('short_description'), 'category_id' => 10, 'tags' => [$request->get('name')]]); dd($id); } catch (\Exception $ex) { dd($ex->getMessage()); return redirect()->back()->withError('Video file could not be uploaded')->withInput(); } } if ($request->hasFile('pitch_video')) { $file = $request->file('pitch_video'); $imageName = date("ymdHis") . '.' . $file->getClientOriginalExtension(); $realPath = base_path() . '/public/images/file-attached-to-project/video/'; $openMakePath = $realPath . $imageName; $request->file('pitch_video')->move($realPath, $imageName); $project->pitch_video = $imageName; } else { $project->pitch_video = ''; } # Attach file with project : End if ($project->save()) { $auto_id = $project->id; //$secret_id = Crypt::encrypt($auto_id); $request->session()->flash('alert-success', 'Project has been created successfully'); $step = $step + 1; Session::put('step', $step); Session::put('last_insert_id', $auto_id); return \Redirect::to('/admin/project/create'); } else { Session::put('step', $step); $request->session()->flash('alert-warning', 'Error on project creation ! '); return redirect()->back()->withInput(); } } else { $project_id = $secret_key; if ($step == 1) { $project = Project::find($project_id); $project->fill($request->except('_token')); $project->user_id = $request->input('user_id'); $project->slug = Str::slug($request->input('name')); if ($request->hasFile('file_attachment')) { $response = Event::fire(new FileAttachment($request, ['input_file_tag' => 'media_file_attachment', 'width' => $this->width, 'height' => $this->height, 'mHeight' => $this->mHeight, 'mWidth' => $this->mWidth])); if (count($response) > 0) { $project->file_attachment = $response[0]; } } if ($project->save()) { $request->session()->flash('alert-success', 'Project has been created successfully'); $step = $step + 1; Session::put('step', $step); return \Redirect::to('/admin/project/create'); } } if ($step == 2) { $projectData = array(); $projectData['details_description'] = $request->get('details_description'); $projectData['address'] = $request->get('address'); $projectData['address_alternate'] = $request->get('address_alternate'); $projectData['city'] = $request->get('city'); $projectData['state'] = $request->get('state'); $projectData['country_id'] = $request->get('country_id'); $projectData['feed_url'] = $request->get('feed_url'); $projectData['pincode'] = $request->get('pincode'); $projectData['external_video_url'] = $request->get('external_video_url'); //$projectData['media_file_attachment'] = $request->get('media_file_attachment'); $projectData['media_file_short_note'] = $request->get('media_file_short_note'); if ($request->hasFile('media_file_attachment')) { $response = Event::fire(new FileAttachment($request, ['input_file_tag' => 'media_file_attachment', 'width' => $this->width, 'height' => $this->height, 'mHeight' => $this->mHeight, 'mWidth' => $this->mWidth])); if (count($response) > 0) { $projectData['media_file_attachment'] = $response[0]; } } if (Project::where('id', $project_id)->update($projectData)) { $step = $step + 1; Session::put('step', $step); return \Redirect::to('/admin/project/create'); } else { Session::put('step', $step); $request->session()->flash('alert-warning', 'Error on project creation ! '); return redirect()->back()->withInput(); } } if ($step == 3) { $projectData = array(); //dd( $request->all()); $reward_row_count = $request->get('reward_row_count'); $pledge_amount = $request->get('pledge_amount'); $short_note = $request->get('short_note'); $user_limit = $request->get('user_limit'); $delevery_year = $request->get('delevery_year'); $delevery_month = $request->get('delevery_month'); $shipping_details = $request->get('shipping_details'); $file = $request->file('file_attachment'); if (count($pledge_amount) > 0) { $rewardsData = array(); for ($k = 0; $k <= $reward_row_count; $k++) { $reward = new Reward(); if ($file[$k] != '') { $imageName = uniqid('project-reward-', true) . '.' . $file[$k]->getClientOriginalExtension(); $realPath = base_path() . '/public/images/file-attached-to-project/'; $resizePath = base_path() . '/public/images/file-attached-to-project/resize/' . $imageName; $openMakePath = $realPath . $imageName; $file[$k]->move($realPath, $imageName); Image::make($openMakePath)->resize(1400, 623)->save($resizePath); $reward->reword_image = $imageName; } else { $reward->reword_image = "null"; } if ($k == 0) { $reward->active = 1; } else { $reward->active = 0; } $reward->pledge_amount = $pledge_amount[$k]; $reward->short_note = $short_note[$k]; $reward->user_limit = $user_limit[$k]; $reward->delevery_year = $delevery_year[$k]; $reward->delevery_month = $delevery_month[$k]; $reward->shipping_details = $shipping_details[$k]; $reward->P_ID = $project_id; $reward->save(); } $step = $step + 2; Session::put('step', $step); return \Redirect::to('/admin/project/create'); } } } }
$accessToken = Youtube::authenticate(Input::get('code')); Youtube::saveAccessTokenToDB($accessToken); return View::make('laravel-youtube::example')->with(compact('accessToken')); }); Route::get('youtube-upload-example', function () { if (!Youtube::getLatestAccessTokenFromDB()) { return Redirect::to('youtube-upload-example/get-access-token')->with('message', 'Need to get an access token first'); } return View::make('laravel-youtube::example'); }); Route::get('youtube-upload-example/get-uploads/{maxResults?}', function ($maxResults = 50) { if (!Youtube::getLatestAccessTokenFromDB()) { return Redirect::to('youtube-upload-example/get-access-token')->with('message', 'Need to get an access token first'); } return Response::json(Youtube::getUploads($maxResults)); }); Route::post('youtube-upload-example', function () { $rules = array('title' => 'required', 'status' => 'required|in:public,private,unlisted', 'video' => 'required'); $validator = Validator::make(Input::all(), $rules); if ($validator->fails()) { return Redirect::to('youtube-upload-example')->withInput()->withErrors($validator); } try { $youtubeVideoId = Youtube::upload(Input::all()); Session::put('youtubeVideoId', $youtubeVideoId); return Redirect::to('youtube-upload-example')->with('message', 'Video uploaded successfully, it\'s probably still processing, so keep refreshing'); } catch (Exception $e) { return Redirect::to('youtube-upload-example')->with('message', $e->getMessage()); } }); }