/** * Store a newly created resource in storage. * * @param \Illuminate\Http\Request $request * @return \Illuminate\Http\Response */ public function store(Request $request) { $username = \Request::server('PHP_AUTH_USER', 'sampleuser'); $response = []; $type = $request->input('type', ''); $id = $request->input('id', ''); $model = null; switch ($type) { case 'Content': $model = Content::find($request->input('id')); break; case 'Dvd': $model = Dvd::find($request->input('id')); break; case 'Dvdseries': $model = Dvdseries::find($request->input('id')); break; case 'Model': $model = Model::find($request->input('id')); break; } if ($username && $id && $model) { if (Favorite::ofUsername($username)->hasFavorite($type, $id)->count()) { $response['success'] = false; $response['message'] = 'Already in your favorites.'; } else { $fav = new Favorite(); $fav->username = $username; $model->favorites()->save($fav); $response['success'] = true; $response['message'] = 'Successfully added to your favorites.'; } } return \Response::json($response); }
/** * Display a listing of the resource. * * @return \Illuminate\Http\Response */ public function index() { if (Input::has('o')) { $order = Input::get('o'); switch ($order) { case 'v': $orderBy = "fake_views"; $sortName = "Most Viewed"; break; case 'r': $orderBy = "rating"; $sortName = "Top Rated"; break; case 'f': $orderBy = "favorites"; $sortName = "Most Popular"; break; default: $orderBy = "publish_date"; $sortName = "Newest"; break; } } else { $order = ""; $orderBy = "publish_date"; $sortName = "Newest"; } $network = $this->network; $theme = $network->theme; $theme = check_for_tour_theme($theme); Theme::setActive($theme); $data = $this->data; $data['page_title'] = $network->name; $data['sliders'] = Content::ofNetwork($this->network->id)->published()->featured(1)->take(config('yppmembers.homepage_sliders'))->orderBy(\DB::raw("RAND()"))->get(); $data['contents'] = Content::ofNetwork($this->network->id)->published()->featured(0)->take(config('yppmembers.homepage_contents'))->orderBy($orderBy, 'desc')->paginate(config('yppmembers.per_page')); $data['mostviews'] = Content::ofNetwork($this->network->id)->published()->featured(0)->take(config('yppmembers.homepage_mostviews'))->orderBy('views', 'desc')->get(); $data['toprateds'] = Content::ofNetwork($this->network->id)->published()->featured(0)->take(config('yppmembers.homepage_toprateds'))->orderBy('rating', 'desc')->get(); $data['most_used_tags'] = Tag::ofNetwork($this->network->id)->mostUsedInNetwork($this->network->id)->take(config('yppmembers.homepage_most_used_tags'))->get(); $data['dvds'] = Dvd::ofNetwork($this->network->id)->take(config('yppmembers.homepage_dvds'))->orderBy('publish_date', 'desc')->get(); $tags = Tag::ofNetwork($network->id)->mostUsedInNetwork($network->id)->paginate(config('yppmembers.per_page')); $ids = array(0); foreach ($tags as $tag) { $tag_data = $tag->getTopThumb($ids, $this->network->id); $tag->top_thumb = $tag_data['thumb']; $ids[] = $tag_data['id']; } $data['tags'] = $tags; $data['sortname'] = $sortName; return Theme::view('video.index', $data); }
public function index() { $network = $this->network; $theme = $network->theme; $theme = check_for_tour_theme($theme); Theme::setActive($theme); $data = $this->data; $data['page_title'] = $network->name; $data['sliders'] = Content::ofNetwork($this->network->id)->published()->featured(1)->take(config('yppmembers.homepage_sliders'))->orderBy(\DB::raw("RAND()"))->get(); $data['contents'] = Content::ofNetwork($this->network->id)->published()->featured(0)->take(config('yppmembers.homepage_contents'))->orderBy('publish_date', 'desc')->get(); $data['mostviews'] = Content::ofNetwork($this->network->id)->published()->featured(0)->take(config('yppmembers.homepage_mostviews'))->orderBy('views', 'desc')->get(); $data['toprateds'] = Content::ofNetwork($this->network->id)->published()->featured(0)->take(config('yppmembers.homepage_toprateds'))->orderBy('rating', 'desc')->get(); $data['most_used_tags'] = Tag::ofNetwork($this->network->id)->mostUsedInNetwork($this->network->id)->take(config('yppmembers.homepage_most_used_tags'))->get(); $data['dvds'] = Dvd::ofNetwork($this->network->id)->take(config('yppmembers.homepage_dvds'))->orderBy('publish_date', 'desc')->get(); return Theme::view('network.home', $data); }
public function dvdTags($id, $slug = "") { $tag = Tag::findOrfail($id); $network = $this->network; $theme = $network->theme; $dvds = Dvd::ofNetwork($network->id)->ofTag($tag); if (Input::has('o')) { $order = Input::get('o'); switch ($order) { case 'v': $orderBy = "views"; $sortName = "Most Viewed"; break; case 'r': $orderBy = "rating"; $sortName = "Top Rated"; break; case 'f': $orderBy = "favorites"; $sortName = "Most Popular"; break; default: $orderBy = "publish_date"; $sortName = "Newest"; break; } } else { $order = ""; $orderBy = "publish_date"; $sortName = "Newest"; } $theme = check_for_tour_theme($theme); Theme::setActive($theme); $data = $this->data; $data['dvds'] = $dvds->orderBy($orderBy, 'DESC')->paginate(config('yppmembers.per_page')); $data['page_title'] = $this->network->name . ' DVDs'; $data['tags'] = Tag::ofNetwork($this->network->id)->ofDvds()->get(); $data['sortname'] = $sortName; $data['tag'] = $tag; $this->breadcrumbs->addCrumb('DVDs'); return Theme::view('dvd.index', $data); }