public function download() { $url = Input::get('url'); $mp3 = MP3::whereUrl($url)->first(); if ($mp3) { $mp3->count += 1; $mp3->save(); $count = MP3::sum('count'); $response = ['success' => true, 'link' => $mp3->link, 'count' => $count, 'title' => $mp3->title]; return $response; } if (!empty($url)) { $meta = Keeng::getMeta($url); // return $meta; if ($meta) { $mp3 = new MP3(); $mp3->title = $meta['title']; $mp3->url = $url; $mp3->link = $meta['link']; $mp3->count = 1; $mp3->save(); $count = MP3::sum('count'); $response = ['success' => true, 'url' => $url, 'link' => $meta['link'], 'count' => $count, 'title' => $meta['title']]; return $response; } return ['success' => false]; } }
public function store() { // return Input::all(); $email_rule = Auth::guest() ? 'required' : ''; $rules = ['name' => 'required|min:6', 'mp3' => 'required|mimes:mpga|max:64000000', 'image' => 'required|image', 'email' => $email_rule]; $messages = ['name.required' => Config::get('site.validate.name.required'), 'name.min' => Config::get('site.validate.name.min'), 'mp3.required' => Config::get('site.validate.mp3.required'), 'mp3.mimes' => Config::get('site.validate.mp3.mimes'), 'mp3.size' => Config::get('site.validate.mp3.size'), 'image.required' => Config::get('site.validate.image.required'), 'image.image' => Config::get('site.validate.image.image'), 'email.required' => Config::get('site.validate.email.required')]; $validator = Validator::make(Input::all(), $rules, $messages); if ($validator->fails()) { if (Request::ajax()) { $response = []; $response['success'] = false; $response['errors'] = $validator->messages(); return $response; } return Redirect::to('/mp3/up')->withErrors($validator)->withInput(); } $storedMP3 = MP3::whereName(Input::get('name'))->first(); if ($storedMP3) { if (Request::ajax()) { $response = []; $response['success'] = true; $response['url'] = $storedMP3->price == 'paid' ? "/mp3/{$storedMP3->id}/edit" : "/mp3/{$storedMP3->id}"; return $response; } return Redirect::to("mp3/{$storedMP3->id}"); } /****** MP3 Uploading *******/ $price = Input::get('price'); $name = Input::get('name'); $mp3 = Input::file('mp3'); $mp3_size = TKPM::size($mp3->getClientsize()); $mp3_ext = $mp3->getClientOriginalExtension(); $mp3_name = Str::slug($name, '-') . '-' . Str::random(32) . '.' . $mp3_ext; $mp3_upload_path = Config::get('site.mp3_upload_path'); $mp3_success = $mp3->move($mp3_upload_path, $mp3_name); /************ Image Uploading *****************/ $img = Input::file('image'); $img_type = $img->getMimeType(); $img_ext = $img->getClientOriginalExtension(); $img_name = Str::slug($name, '-') . '-' . Str::random(32) . '.' . $img_ext; $img_upload_path = Config::get('site.image_upload_path'); $img_success = $img->move($img_upload_path, $img_name); if ($img_success) { TKPM::image($img_name, 250, 250, 'thumbs'); TKPM::image($img_name, 100, null, 'thumbs/tiny'); TKPM::image($img_name, 640, 360, 'show'); } $admin_id = User::whereAdmin(1)->first()->id; $user_id = Auth::check() ? Auth::user()->id : $admin_id; if ($mp3_success && $img_success) { $mp3 = new MP3(); $mp3->name = ucwords($name); $mp3->mp3name = $mp3_name; $mp3->image = $img_name; $mp3->user_id = $user_id; $mp3->category_id = Input::get('cat'); $mp3->size = $mp3_size; if ($price == 'free') { $mp3->publish = 1; } $mp3->price = $price; if (!$price) { $mp3->publish = 1; $mp3->price = 'free'; } $mp3->description = Input::get('description'); $mp3->save(); /************** GETID3 **************/ TKPM::tag($mp3, $img_name, $img_type); /******* Flush the cache ********/ Cache::flush(); if ($mp3->price == 'paid') { // Send an email to the new user letting them know their music has been uploaded $data = ['mp3' => $mp3, 'subject' => 'Felisitasyon!!! Ou fèk mete yon nouvo mizik pou vann.']; TKPM::sendMail('emails.user.buy', $data, 'mp3'); } elseif (Auth::guest() && Input::has('email')) { $mp3->userEmail = Input::get('email'); $data = ['mp3' => $mp3, 'subject' => 'Felisitasyon!!! Ou fèk mete yon nouvo mizik']; TKPM::sendMail('emails.user.guest3', $data, 'guest3'); } else { // Send an email to the new user letting them know their music has been uploaded $data = ['mp3' => $mp3, 'subject' => 'Felisitasyon!!! Ou fèk mete yon nouvo mizik']; TKPM::sendMail('emails.user.mp3', $data, 'mp3'); } if (!App::isLocal()) { TKPM::tweet($mp3, 'mp3'); } if (Request::ajax()) { $response = []; $response['success'] = true; $response['url'] = $price == 'paid' ? "/mp3/{$mp3->id}/edit" : "/mp3/{$mp3->id}"; return $response; } Cache::forget('latest.musics'); if ($price == 'paid') { return Redirect::to("mp3/{$mp3->id}/edit"); } return Redirect::to('mp3/' . $mp3->id); } else { if (Request::ajax()) { $response = []; $response['success'] = false; $response['message'] = 'Nou regrèt men nou pa reyisi mete mizik ou a. Eseye ankò.'; return $response; } return Redirect::to(Request::url())->with('message', 'Nou regrèt men nou pa reyisi mete mizik ou a. Eseye ankò.'); } }