예제 #1
0
 public function home()
 {
     $scroll_imgs = ScrollImg::all();
     //话题
     $topics = Topic::where('topic_url', '!=', '')->orderBy('created_at', 'desc')->get();
     $topics = StaticController::page(12, 1, $topics);
     //每日推荐
     $daily = Poster::where('daily_id', '=', 1)->get();
     //每日推
     $daily = StaticController::page(16, 1, $daily);
     // $user = Sentry::findUserById(4);
     // Sentry::login($user,false);
     // Sentry::logout();
     if (Sentry::check()) {
         foreach ($daily as $recommend) {
             $gift = Gift::find($recommend->info_url);
             $recommend->title = $gift->title;
             $recommend->price = $gift->price;
             $recommend->taobao_url = $gift->taobao_url;
             $gift_focus = GiftFocus::where('gift_id', '=', $recommend->info_url)->where('user_id', '=', Sentry::getUser()->id)->first();
             /* 2015-09-16 hyy fix */
             if (isset($gift_focus)) {
                 $recommend->focus = 1;
             } else {
                 $recommend->focus = 0;
             }
         }
     } else {
         foreach ($daily as $recommend) {
             $gift = Gift::find($recommend->info_url);
             $recommend->title = $gift->title;
             $recommend->price = $gift->price;
             $recommend->taobao_url = $gift->taobao_url;
             $recommend->focus = 0;
         }
     }
     //精选话题
     $articles = DB::table('articles')->orderBy('focus_num', 'desc')->get();
     $articles = StaticController::page(12, 1, $articles);
     if ($articles) {
         foreach ($articles as $article) {
             $article_url = ArticlePart::where('article_id', '=', $article->id)->where('type', '=', 'url')->first();
             // dd($article_url->content);
             if (isset($article)) {
                 $article->url = $article_url->content;
             } else {
                 $article->url = null;
             }
         }
     }
     return View::make('pc.home')->with(array('topics' => $topics, 'gifts' => $daily, 'articles' => $articles, 'scroll_imgs' => $scroll_imgs));
 }
예제 #2
0
 public function collection()
 {
     if (!Sentry::check()) {
         return Response::json(array('errCode' => 10, 'message' => '请登录'));
     }
     $gift_id = Input::get('gift_id');
     /* 2015-09-16 hyy 改 start */
     $gift_focus = GiftFocus::where('user_id', '=', Sentry::getUser()->id)->where('gift_id', '=', $gift_id)->first();
     if (isset($gift_focus)) {
         try {
             DB::transaction(function () use($gift_id, $gift_focus) {
                 //礼品收藏人数减1
                 $gift = Gift::find($gift_id);
                 $gift->focus_num = $gift->focus_num - 1;
                 $gift->save();
                 $gift_focus->delete();
             });
         } catch (\Exception $e) {
             return Response::json(array('errCode' => 11, 'message' => '操作失败'));
         }
         /* 2015-09-16 hyy 改 end */
         return Response::json(array('errCode' => 0, 'message' => 'cancel'));
     } else {
         try {
             DB::transaction(function () use($gift_id) {
                 //礼品收藏人数加1
                 $gift = Gift::find($gift_id);
                 $gift->focus_num = $gift->focus_num + 1;
                 $gift->save();
                 $gift_focus = new GiftFocus();
                 $gift_focus->user_id = Sentry::getUser()->id;
                 $gift_focus->gift_id = $gift_id;
                 $gift_focus->save();
             });
         } catch (\Exception $e) {
             return Response::json(array('errCode' => 11, 'message' => '操作失败'));
         }
         return Response::json(array('errCode' => 0, 'message' => 'collect'));
     }
 }
예제 #3
0
 public function giftAjax()
 {
     // if(!Sentry::check())
     // 	return Response::json(array('errCode'=>1, 'message'=>'请登录'));
     // $user = Sentry::getUser();
     $user = User::find(1);
     $per_page = Input::get('per_page');
     $page = Input::get('page');
     $gift_focus = DB::table('gift_focus')->where('user_id', '=', $user->id)->orderBy('created_at', 'desc')->get();
     //总页数
     $total = ceil(count($gift_focus) / $per_page);
     // dd($total);
     //喜欢的礼品
     $focus = StaticController::page($per_page, $page, $gift_focus);
     // dd(count($focus));
     $gifts = array();
     if ($focus) {
         foreach ($focus as $gift) {
             array_push($gifts, Gift::find($gift->gift_id));
         }
         foreach ($gifts as $candy) {
             $url = GiftPoster::where('gift_id', '=', $candy->id)->first()->url;
             $candy->img = StaticController::imageWH($url);
         }
     }
     return Response::json(array('errCode' => 0, 'message' => '返回用户喜欢的礼品', 'gifts' => $gifts, 'total' => $total));
 }
예제 #4
0
파일: gift.php 프로젝트: stripthis/donate
 /**
  * undocumented function
  *
  * @param string $type 
  * @param string $query 
  * @return void
  * @access public
  */
 function find($type, $query = array())
 {
     $args = func_get_args();
     switch ($type) {
         case 'gift_types':
             $query['office_id'] = Gift::officeId();
             $conditions = array();
             if (!empty($query['office_id'])) {
                 $conditions['GiftTypesOffice.office_id'] = $query['office_id'];
             }
             $types = ClassRegistry::init('GiftTypesOffice')->find('all', array('conditions' => $conditions, 'contain' => array('GiftType(name, id, humanized)'), 'order' => array('GiftType.name' => 'asc')));
             $result = array();
             foreach ($types as $t) {
                 $result[$t['GiftType']['id']] = $t['GiftType']['humanized'];
             }
             return $result;
         case 'frequencies':
             $query['office_id'] = Gift::officeId();
             $conditions = array();
             if (!empty($query['office_id'])) {
                 $conditions['FrequenciesOffice.office_id'] = $query['office_id'];
             }
             $frequencies = ClassRegistry::init('FrequenciesOffice')->find('all', array('conditions' => $conditions, 'contain' => array('Frequency(name, id, humanized)'), 'order' => array('Frequency._order' => 'asc')));
             $result = array();
             foreach ($frequencies as $f) {
                 $result[$f['Frequency']['id']] = $f['Frequency']['humanized'];
             }
             return $result;
         case 'amounts':
             $query['office_id'] = Gift::officeId();
             $amounts = '5,10,15';
             if (!isset($query['options']) && !empty($query['office_id'])) {
                 $amounts = ClassRegistry::init('Office')->find('first', array('conditions' => array('id' => $query['office_id']), 'fields' => array('amounts')));
                 $amounts = $amounts['Office']['amounts'];
             }
             return $amounts;
         case 'min_amount':
             $amounts = Gift::find('amounts', $query);
             return $amounts[0];
         case 'currencies':
             $query['office_id'] = Gift::officeId();
             $conditions = array();
             if (!empty($query['office_id'])) {
                 $conditions['CurrenciesOffice.office_id'] = $query['office_id'];
             }
             $currencies = ClassRegistry::init('CurrenciesOffice')->find('all', array('conditions' => $conditions, 'contain' => array('Currency(iso_code, id)'), 'order' => array('Currency.iso_code' => 'asc')));
             return Set::combine($currencies, '/Currency/id', '/Currency/iso_code');
     }
     return call_user_func_array(array('parent', 'find'), $args);
 }
예제 #5
0
 public function like()
 {
     $gift_id = Input::get('gift_id');
     $gift = Gift::where('id', '=', 'gift_id')->first();
     //收藏的人
     $focus_users = Gift::find($gift_id)->users();
     //相似推荐
     $gifts = DB::table('gifts')->where('scene_id', '=', $gift->scene_id)->where('object_id', '=', $gift->object_id)->where('char_id', '=', $gift->char_id)->get();
     $gifts_like = array();
     foreach ($gifts as $gift) {
         $gift_poster = GiftPoster::where('gift_id', '=', $gift->id)->first();
         array_push($gifts_like, $gift_poster);
     }
     if (Request::wantsJson()) {
         return Response::json(array('errCode' => 0, 'message' => '返回收藏详情页数据', 'focus_users' => $focus_users, 'gifts_like' => $gifts_like));
     }
     return View::make('index/like')->with(array('focus_users' => $focus_users, 'gifts_like' => $gifts_like));
 }