Esempio n. 1
0
 public function index()
 {
     $builder = Group::where('type', '!=', 'private');
     if (Input::has('name')) {
         $builder->where('name', 'like', '%' . Input::get('name') . '%');
     }
     if (in_array(Input::get('sort'), ['created_at', 'subscribers_count'])) {
         $builder->orderBy(Input::get('sort'), 'desc');
     } else {
         $builder->orderBy('created_at', 'desc');
     }
     $groups = $builder->paginate(100);
     return $groups;
 }
Esempio n. 2
0
 public function search()
 {
     if (Input::has('q')) {
         $keywords = preg_replace('/((\\w+):(\\w+\\pL.))+\\s?/i', '', Input::get('q'));
         switch (Input::get('t')) {
             case 'e':
                 $builder = Entry::where('text', 'like', '%' . $keywords . '%');
                 break;
             case 'g':
                 $builder = Group::where('name', 'like', '%' . $keywords . '%')->orWhere('urlname', 'like', '%' . $keywords . '%');
                 break;
             case 'c':
             default:
                 $builder = Content::where(function ($query) use($keywords) {
                     $query->where('title', 'like', '%' . $keywords . '%')->orWhere('description', 'like', '%' . $keywords . '%');
                 });
                 break;
         }
         $this->builder = $builder;
         $this->setupFilters(Input::get('q'));
         $results = $this->builder->paginate(25);
     }
     return view('search.main', compact('results'));
 }
Esempio n. 3
0
 public function wizard($tag = null)
 {
     $popularTags = ['programowanie', 'muzyka', 'gry', 'obrazki', 'it', 'internet', 'linux', 'humor', 'nauka', 'strimoid', 'zdjęcia', 'jam', 'oldschool', 'technika', 'śmieszne', 'art', 'technologia', 'wpisy', 'sztuka', 'zainteresowania'];
     if ($tag) {
         $groups = Group::where('tags', $tag)->orderBy('subscribers', 'desc')->paginate(25);
     } else {
         $groups = Group::orderBy('id', 'desc')->paginate(25);
     }
     return view('group.wizard', ['popular_tags' => $popularTags, 'groups' => $groups]);
 }