/** * Store a newly created resource in storage. * * @param \Illuminate\Http\Request $request * @return \Illuminate\Http\Response */ public function store(Request $request) { $media = Media::where('url', $request->url)->first(); if ($media == null) { //no media with same URL was stored before $rules = ['url' => 'unique:medias|required|url', 'package_id' => 'exists:packages,id']; $validator = Validator::make($request->all(), $rules); if ($validator->fails()) { return response()->json(['success' => false, 'message' => "Failed", 'error' => $validator->errors()->all()]); } if (Package::find($request->get('package_id'))->isFollowPackage()) { return response()->json(['success' => false, 'message' => "Not a valid package. Use a Like Package"]); } $package = Package::find($request->package_id); //decrease credit if (User::find(User::getCurrentUserId())->decreaseCredit($package->cost)) { return response()->json(['success' => true, 'message' => "Success", 'media' => $this->createMedia($request->all())]); } else { return response()->json(['success' => false, 'message' => "Failed. Not enough credit"]); } } if (User::getCurrentUserId() != $media->user_id) { return response()->json(['success' => false, 'message' => "You are not the owner, can't add credit."]); } if ($media->likes_left == 0) { //add number of required likes if current like left is 0 $added_likes = Package::find($request->get('package_id'))->return; $media->likes_left = $media->likes_left + $added_likes; $media->save(); return response()->json(['success' => true, 'message' => "Successfully added number of required likes", 'media' => $media]); } else { return response()->json(['success' => false, 'message' => "Already under one campaign. Finish current campaign, then add credit.", 'media' => $media]); } }
/** * View unprocessed images for a particular event * @param integer $eventID * @return VIEW */ public function viewUnprocessedMediaForEvent($eventID) { if (!Auth::check() || !Auth::user()->is_admin) { return response(view('errors.403', ['error' => $this->errorMessages['no_permission']]), 403); } $media = Media::where('event_id', $eventID)->where('processed', false)->get()->chunk(6); return View::make('media.unprocessed')->with('media', $media); }
/** * Store a newly created resource in storage. * * @param \Illuminate\Http\Request $request * @return \Illuminate\Http\Response */ public function store(Request $request) { //Get the Media from given URL $media = Media::where('url', $request->url)->first(); if (!$media) { return response()->json(['success' => false, 'message' => "No such media in our DB"]); } if (!$media->publishable) { return response()->json(['success' => false, 'message' => "You cannot like this media"]); } return response()->json(['success' => true, 'message' => "Successfully liked", 'like' => Like::create(['user_id' => User::getCurrentUserId(), 'media_id' => $media->id])]); }
/** * Show the application dashboard. * * @return Response */ public function index() { try { $isInstalled = Setting::where('name', 'is_installed')->firstOrFail(); } catch (ModelNotFoundException $e) { $isInstalled = Setting::create(['name' => 'is_installed', 'setting' => 'no']); } if ($isInstalled->setting != 'yes') { return Redirect::route('install'); } $data = ["event" => Event::first(), "upcomingEvents" => Event::take(3)->get(), "news" => News::take(6)->get(), "media" => Media::where('processed', true)->orderBy('id', 'DESC')->take(12)->get()]; return view('home')->with($data); }
public function index() { $totalNumber = 5; // number of items to take for each section $data = ["events" => Event::where('end_datetime', '>', date(time()))->get()->take($totalNumber), "partners" => Partner::all()->take($totalNumber), "news" => News::all()->take($totalNumber), "media" => Media::where('processed', 0)->get()->take($totalNumber * 2)->chunk(3), "staffs" => User::where('is_staff', 1)->get(), "locations" => Location::all()->take($totalNumber)]; $i = 0; foreach ($data['events'] as $event) { $mediaCount = count(Media::where('processed', false)->where('event_id', $event->id)->get()); $data['events'][$i]->mediaCount = $mediaCount; $i++; } return View::make('admin.index')->with($data); }
public static function ukloniMOglasa($oglasId, $mediaId) { $src = Media::where('src', 'like', '/img/prodavnica/prodavnica-' . Auth::user()->id . '-' . $oglasId . '-%')->where('id', $mediaId)->get(['src'])->first(); if ($src) { $src = $src->src; } else { return 0; } $test = Media::where('src', 'like', '/img/prodavnica/prodavnica-' . Auth::user()->id . '-' . $oglasId . '-%')->where('id', $mediaId)->delete(); if ($test > 0) { unlink(substr($src, 1)); } return $test; }
public function delete($id) { \App\Media::where('id', $id)->delete(); \App\EventMedia::where('mediaID', $id)->delete(); \App\Series::leftJoin('media', 'series.seriesAbbreviation', '=', 'media.series')->where('media.series', NULL)->delete(); return redirect('/'); }
public static function getOglas($username = null, $slug) { $podaci = []; $podaci['oglas'] = Proizvod::join('stanje_proizvoda as s', 's.id', '=', 'proizvod.stanje_proizvoda_id')->join('korisnici as k', 'k.id', '=', 'proizvod.korisnici_id')->join('grad as g', 'g.id', '=', 'k.grad_id')->where('slug', $slug)->get(['proizvod.id', 'proizvod.naziv', 'slug', DB::raw('cena-(cena*popust/100) as cena'), 'kolicina', 'narudzba', 'zamena', 'vrsta_proizvoda_id', 's.naziv as stanje', 'korisnici_id', 'opis', 'proizvod.foto', 'username', 'prezime', 'ime', 'g.naziv as grad', 'k.telefon', 'stanje_oglasa_id'])->first(); Pregledi::pregledanOglas($podaci['oglas']->id, ProdavnicaKO::getIP()); $podaci['foto'] = Media::where('src', 'like', '/img/prodavnica/prodavnica-' . $podaci['oglas']->korisnici_id . '-' . $podaci['oglas']->id . '-%')->get(); if (Auth::check()) { $podaci = $podaci + ['master' => 'administracija.master.osnovni', 'zelim' => ListaZelja::where('korisnici_id', Auth::user()->id)->where('proizvod_id', $podaci['oglas']->id)->where('aktivan', 1)->exists(), 'username' => Auth::user()->username, 'prijavljen' => 1]; } else { $podaci = $podaci + ['master' => null, 'username' => null, 'prijavljen' => null, 'zelim' => null]; } return view('oglas')->with($podaci); }
/** * @param $per_page * @param string $order_by * @param string $sort * @param int $status * @return mixed */ public function searchMedias($queue, $status = 1, $order_by = 'id', $sort = 'asc') { return Media::where('status', $status)->orderBy($order_by, $sort)->search($queue)->get(); }
/** * Display a listing of the resource. * * @return \Illuminate\Http\Response */ public function index() { $media = Media::where('user_id', '=', \Auth::user()->id)->get(); return view('media.index', compact('media')); }