/** * Process video upload * * @param \Illuminate\Http\Request $request The form with the needed data * @return \Illuminate\Http\RedirectResponse */ public function process(Request $request) { //validation rules $rules = ['title' => 'required', 'category_list' => 'required', 'user_id' => 'required', 'video' => 'isneededvideo']; //validation messages $msgs = ['title.required' => 'A cím kitöltése kötelező!', 'category_list.required' => 'A kategória kiválasztása kötelező!', 'user_id.required' => 'A szerző kiválasztása kötelező!', 'video.required' => 'Videó nélkül nincs mit feltölteni!', 'isneededvideo' => 'A videónak mp4 vagy webm formátumúnak kell lennie!']; \Validator::extend('isneededvideo', function ($attr, $value, $params) { return $value->getMimeType() == 'video/mp4' || $value->getMimeType() == 'video/webm'; }); $validator = \Validator::make($request->all(), $rules, $msgs); if ($validator->fails()) { return redirect()->back()->withErrors($validator->errors())->withInput($request->all()); } //ease up coding with some shortcuts $file = $request->file('video'); $extension = strtolower($file->getClientOriginalExtension()); $video = \App\Models\Video::create($request->except('video', 'category_list')); //set video filename $video->video = $video->getKey() . '.' . $extension; //move video file $file->move(public_path() . '/videos/', $video->video); //save object $video->save(); //sync pivot $video->categories()->sync(array_filter($request->input('category_list'))); //do the capture $this->capture($video); return redirect('/'); }
/** * Run the database seeds. * * @return void */ public function run() { DB::table('videos')->truncate(); $videos = ['21E3SLSV-Ys', 'iQoWiRJZ29M', '7ap-XeeHOkM', 'qdnVzjbh9PQ', 'm3ld6g9XycY', 'EKdjrcfh4Hk', 'RFgGh1rvwBE', 'YjrMB_GZCUQ', 'GFYJ-XoiwoQ', 'gSIuplM93Vg', '8WL57ZbZFJw', 'HeGAQAt72iw', '_gY640fF3cE', 'd4B9z_WJAKs', '8QlW8_PdYbw', 'Ar0x-jC7gl4', 'eH6qFJoySf8', 'euoiYTR284Y', 'yLerTXg1jXI', 'S1cufMC4se0', 'aoSRxe_iHmg', 'We8pAyeobGY', 'd59I52u2A8E', 'HA1sOLxvQow']; $faker = Faker\Factory::create(); foreach ($videos as $video) { Video::create(['youtube_id' => $video, 'title' => $faker->unique()->sentence(5), 'slug' => $faker->slug(), 'description' => $faker->text(100), 'category_id' => $faker->randomElement([1, 2, 3])]); } }
/** * Store a newly created resource in storage. * * @return Response */ public function store(Request $request) { $data = $request->all(); $validator = Validator::make($data, Video::$rules); if ($validator->fails()) { return Redirect::back()->withErrors($validator)->withInput(); } Video::create($data); return Redirect::route('videos.admin'); }
public function store(Requests\CreateVideoRequest $request) { $params = $request->except(['video', '_token']); $vid = $request->file('video'); $params = $this->setVideoParams($params, $vid); $video = Video::create($params); $this->uploader->pushFile($vid, $video, $params['original_filename'], $params['upload_filename']); $request->session()->flash("notif", "Video successfully uploaded"); return redirect('admin/videos'); }
/** * Run the database seeds. * * @return void */ public function run() { // $faker = Faker\Factory::create(); $teachers = Teacher::lists('id')->toarray(); $series = Series::lists('id')->toarray(); foreach (range(1, 50) as $index) { Video::create(['title' => $faker->title, 'description' => $faker->sentence(10), 'video_url' => $faker->url, 'cover_url' => $faker->url, 'user_id' => $faker->randomElement($teachers), 'series_id' => $faker->randomElement($series), 'watch_count' => $faker->randomDigit(), 'reply_count' => $faker->randomDigit(), 'favorite_count' => $faker->randomDigit()]); } }
/** * * @return type */ public function store(Request $request) { $this->validate($request, ['youtube_id' => 'required|unique:videos|max:20']); $videoId = Input::get('youtube_id'); // Process Video // Connect to youtube $youtubeKey = array("key" => "AIzaSyAmsWXPu2gP78el5mSftCeLLRCdvWfOHWU"); $youtube = new Youtube($youtubeKey); // Get video Info $videoInfo = $youtube->getVideoInfo($videoId); // dd($videoInfo->snippet); $user = Video::create(['youtube_id' => $videoId]); $data = ['video' => $videoInfo->snippet]; return Redirect::route('video.list', $data); }
public function view($aid, Request $request) { try { $back = RequestUtil::getUrl(BiliBiliHelper::$SERVICE_URL . "/view/{$aid}"); if ($back['code'] != 200) { throw new Exception('视频未找到...'); } $content = $back['content']; $count = Video::where('aid', '=', $aid)->count(); if ($count == 0) { $video = ['aid' => intval($aid), 'title' => $content['title'], 'author' => $content['author'], 'description' => $content['description'], 'created' => $content['created'], 'created_at' => $content['created_at'], 'face' => $content['face'], 'typename' => $content['typename'], 'pages' => $content['pages'], 'list' => serialize($content['list'])]; try { Video::create($video); } catch (Exception $ignore) { } } $content['aid'] = $aid; return view('play')->with('video', $content); } catch (\Exception $e) { return $this->returnError($e->getMessage()); } }
public static function addVideo($data, $relationshipId = null, $categoryName = null, $displayName = null) { if (!is_null($data)) { $time = Carbon\Carbon::now()->timestamp; $extension = $data->getClientOriginalExtension(); $mediaName = $time . rand(5, 200000); $fileName = $mediaName . "." . $extension; $data->move(public_path() . '/uploads/videos/', $fileName); if (is_null($displayName)) { $displayName = $mediaName; } if (is_null($relationshipId)) { $relationshipId = 0; } $mediaCreate = Video::create(['displayName' => $displayName, 'fileName' => $fileName, 'categoryName' => $categoryName, 'relId' => $relationshipId]); return $mediaCreate; } }