Example #1
0
 public function showIndex()
 {
     if (!Auth::check()) {
         return View::make('login', array('title' => 'edison'));
     }
     $category_names = array('ent' => 'エンターテイメント', 'music' => '音楽', 'sing' => '歌ってみた', 'play' => '演奏してみた', 'dance' => '踊ってみた', 'vocaloid' => 'VOCALOID', 'nicoindies' => 'ニコニコインディーズ', 'animal' => '動物', 'cooking' => '料理', 'nature' => '自然', 'travel' => '旅行', 'sport' => 'スポーツ', 'lecture' => 'ニコニコ動画講座', 'drive' => '車載動画', 'history' => '歴史', 'politics' => '政治', 'science' => '科学', 'tech' => 'ニコニコ技術部', 'handcraft' => 'ニコニコ手芸部', 'make' => '作ってみた', 'anime' => 'アニメ', 'game' => 'ゲーム', 'toho' => '東方', 'imas' => 'アイドルマスター', 'radio' => 'ラジオ', 'draw' => '描いてみた', 'are' => '例のアレ', 'diary' => '日記', 'other' => 'その他', 'r18' => 'R-18', 'original' => 'オリジナル', 'portrait' => '似顔絵', 'character' => 'キャラクター');
     $all_items = Item::orderBy('created_at', 'desc')->take(10)->get();
     foreach ($all_items as &$item) {
         $item['user'] = User::where('id', '=', $item->user_id)->get()[0];
         $item['star_count'] = Starmap::where('item_id', '=', $item->id)->count();
         $item['comment_count'] = Comment::where('item_id', '=', $item->id)->count();
         if ($item->category_id != 0) {
             $item['category'] = Category::where('id', '=', $item->category_id)->get()[0]->content;
         }
     }
     $recent_works = Work::orderBy('created_at', 'desc')->take(10)->get();
     foreach ($recent_works as &$work) {
         $item = Item::where('id', '=', $work->item_id)->get()[0];
         $work['item'] = $item;
         $work['user'] = User::where('id', '=', $work->user_id)->get()[0];
         $work['item_poster_screen_name'] = User::where('id', '=', $item->user_id)->get()[0]->screen_name;
         if ($item->category_id != 0) {
             $work['item_category'] = Category::where('id', '=', $item->category_id)->get()[0]->content;
         }
     }
     $user = User::where('screen_name', '=', Auth::user()->screen_name)->get()[0];
     $data = array('title' => 'edison', 'user' => $user, 'all_items' => $all_items, 'recent_works' => $recent_works, 'categories' => $category_names, 'star_count' => Starmap::where('user_id', '=', $user->id)->count(), 'work_count' => Work::where('user_id', '=', Auth::user()->id)->count());
     return View::make('index', $data);
 }
Example #2
0
 public function run()
 {
     $now = date('Y-m-d H:i:s');
     for ($i = 0; $i < 8; $i++) {
         Starmap::create(array('user_id' => mt_rand(1, 4), 'item_id' => mt_rand(1, 8), 'watched_flag' => 0, 'created_at' => $now, 'updated_at' => $now));
     }
 }
Example #3
0
 public function getStars($screen_name)
 {
     $user = User::where('screen_name', '=', $screen_name)->first();
     $star_lists = Starmap::where('user_id', '=', $user->id)->orderby('created_at', 'desc')->take(10)->get();
     $star_items = array();
     foreach ($star_lists as &$star_list) {
         $star_list['item'] = Item::where('id', '=', $star_list->item_id)->get()[0];
         $star_list['item']['user'] = User::where('id', '=', $star_list->item->user_id)->get()[0];
         $star_list['item']['star_count'] = Starmap::where('id', '=', $star_list->item_id)->count();
         $star_list['item']['comment_count'] = Comment::where('id', '=', $star_list->item_id)->count();
         $star_list['category_name'] = Category::where('id', '=', $star_list->item->category_id)->first()->content;
     }
     return $star_lists;
 }
Example #4
0
 public function create($item_id)
 {
     $data = Input::all();
     $item = Item::where('id', '=', $item_id)->get()[0];
     $screen_name = User::where('id', '=', $item->user_id)->first()['attributes']['screen_name'];
     $now = date("Y-m-d H:i:s");
     if ($item['type'] == 'video') {
         $reg = '/^http:\\/\\/www\\.nicovideo\\.jp\\/watch\\/(sm[0-9]+)/';
     } else {
         $reg = '/^http:\\/\\/seiga\\.nicovideo\\.jp\\/seiga\\/im([0-9]+)/';
     }
     preg_match($reg, $data['url'], $match);
     $nico_content = $match ? $match[1] : 0;
     if ($item['type'] == 'video') {
         $Niconico = new Niconico();
         $ret = $Niconico->getThumbInfo($nico_content);
         $title = $ret->title;
         $thumbnail_url = $ret->thumbnail_url;
     } else {
         $title = '';
         $thumbnail_url = "http://lohas.nicoseiga.jp/thumb/{$nico_content}q";
     }
     if ($nico_content) {
         $work = new Work();
         $work->item_id = $item_id;
         $work->user_id = Auth::user()->id;
         $work->url = $data['url'];
         $work->title = $title;
         $work->thumbnail_url = $thumbnail_url;
         $work->comment = nl2br(htmlspecialchars($data['comment']));
         $work->created_at = date("Y-m-d H:i:s");
         $work->updated_at = date("Y-m-d H:i:s");
         $work->save();
         Starmap::where('item_id', '=', $item_id)->update(array('notice_flag' => 1));
         return Redirect::to("/{$screen_name}/items/{$item_id}");
     } else {
         echo "その作品はあかん";
     }
 }
Example #5
0
 public function postWatched()
 {
     $login_user_id = Auth::user()->id;
     Starmap::where('user_id', '=', $login_user_id)->where('item_id', '=', $_POST['item_id'])->update(array('watched_flag' => 1));
 }
Example #6
0
 private function getStarStatus($auth_id, $item_id)
 {
     if (Starmap::where('user_id', '=', $auth_id)->where('item_id', '=', $item_id)->first() != NULL) {
         return true;
     }
     return false;
 }