/**
  * Get by category id.
  *
  * @param $id
  */
 public function getById($id)
 {
     $category = $this->model->find($id);
     if (!is_null($category)) {
         $category->hot++;
         $category->update();
     }
     return $category;
 }
 public function deleteCategory()
 {
     $id = \Input::all();
     $category = Category::find($id['id']);
     $retData = $category->delete() ? 200 : 500;
     return \Response::json($retData);
 }
Example #3
0
 public function index($categoryId)
 {
     $perPage = 2;
     $articles = Category::find($categoryId)->article;
     $maxPage = $articles->chunk($perPage)->count();
     if (Request::has('page')) {
         $articles = $articles->forPage(Request::get('page'), $perPage);
         //dd($articles);
         $firstArticle = $articles->shift();
         $others = $articles;
         return view('category')->with(['first' => $firstArticle, 'others' => $others, 'maxPage' => $maxPage]);
     } else {
         $articles = $articles->forPage(1, $perPage);
         $firstArticle = $articles->shift();
         $others = $articles;
         return view('category')->with(['first' => $firstArticle, 'others' => $others, 'maxPage' => $maxPage]);
     }
     /*$article = Category::find($categoryId)->article;
       $maxPage = intval(ceil(Article::count()/$perPage));
       $firstArticle = $article->shift();
       $others = $article;
       return view('home')->with(['first' => $firstArticle, 'others' => $others, 'maxPage' => $maxPage]);*/
     /*$categories = Category::all();
       $articles = Article::paginate(15);
       return view('home')->withArticles($articles)->withCategories($categories);*/
 }
 public function __construct(PostTypeRepositoryInterface $postTypeRepos, PostRepositoryInterface $postRepos, TemplateRepositoryInterface $templateRepos, PostService $postService)
 {
     $this->postTypeRepos = $postTypeRepos;
     $this->postRepos = $postRepos;
     $this->templateRepos = $templateRepos;
     $this->postService = $postService;
     $this->authUser = Auth::user();
     if (!$this->authUser->is('superadmin')) {
         App::abort(403, 'Access denied');
     }
     //get the post type from the url param
     $routeParamters = Route::current()->parameters();
     $postTypeId = $routeParamters['posttypeid'];
     $this->postType = $this->postTypeRepos->find($postTypeId);
     //get the categories, category check convert to route middleware
     $categoryRootId = $this->postType->getConfiguredRootCategory();
     if (!$categoryRootId) {
         return Redirect::route('admin.post-types.configuration', [$postTypeId, "root"])->send();
     }
     $root = Category::find($categoryRootId);
     if (!$root->descendants()->count()) {
         return Redirect::route('admin.post-types.configuration', [$postTypeId, "descendants"])->send();
     }
     $categories = $root->descendants()->get();
     foreach ($categories as $category) {
         $this->categories[$category->id] = $category->title;
     }
     //localization
     $this->locales = Locale::where('language', '!=', 'en')->lists('language', 'language');
     $this->first_locale = array_first($this->locales, function () {
         return true;
     });
     //share the post type submenu to the layout
     View::share('postTypesSubmenu', $this->postTypeRepos->renderMenu());
 }
Example #5
0
 /**
  * Displays the index (home) page.
  * Use it in case your home page contains static content.
  *
  * @return string
  */
 public function actionIndex()
 {
     $searchModel = new ServiceSearch();
     $searchModel->promo = true;
     $dataProvider = $searchModel->search(Yii::$app->request->queryParams);
     return $this->render('tempindex', ['cat' => Category::find()->orderBy('name_pt')->all(), 'serv' => Service::find()->orderBy('title_pt')->all(), 'modelImg' => Campaign::find()->one(), 'dataProvider' => $dataProvider]);
 }
	public function getUpdate($id)
	{
        return view('category.form',[
'category' => Category::find($id),
'update' => 'обновить'
]);
	}
Example #7
0
 /**
  * Edit page
  *
  * @param Request $request
  * @param int $id
  * @return \Illuminate\Contracts\View\Factory|\Illuminate\Http\RedirectResponse|\Illuminate\View\View
  */
 public function edit(Request $request, $id = 0)
 {
     if ($request->isMethod('post')) {
         $rules = ['name' => 'required|unique:categories,name,' . $id, 'alias' => 'required|unique:categories,alias,' . $id, 'content' => 'required'];
         Validator::make($request->all(), $rules)->validate();
         $page = Category::find($id);
         $page->name = $request->input('name');
         $page->alias = $request->input('alias');
         $page->meta_keys = $request->input('meta_keys');
         $page->meta_desc = $request->input('meta_desc');
         if ($request->has('parent')) {
             $page->parent_id = $request->input('parent');
             $page->type = 2;
         } else {
             $page->type = 1;
         }
         $page->publish = $request->has('publish');
         $page->save();
         $page_content = $page->content;
         $page_content->content = $request->input('content');
         $page_content->save();
         return redirect()->route('pages');
     } else {
         $page = Category::getCategoryById($id);
         if (empty($page)) {
             return redirect()->back();
         } else {
             $pages = Category::getParentCategories($id);
             return view('admin.page.edit', compact('pages', 'page'));
         }
     }
 }
 public function postCategories(Request $request)
 {
     if ($request->has('adds')) {
         $adds = $request->adds;
         for ($i = 0; $i < count($adds); $i++) {
             if ($adds[$i]['parent_id'] == 'null') {
                 Category::create(['title' => $adds[$i]['title']]);
             } else {
                 $parent = Category::find($adds[$i]['parent_id']);
                 $child = $parent->children()->create(['title' => $adds[$i]['title'], 'slug' => str_slug($adds[$i]['title'])]);
                 for ($j = 0; $j < count($adds); $j++) {
                     if ($adds[$j]['parent_id'] == $adds[$i]['id']) {
                         $adds[$j]['parent_id'] = $child->id;
                     }
                 }
             }
         }
     }
     if ($request->has('updates')) {
         $updates = $request->updates;
         for ($i = 0; $i < count($updates); $i++) {
             $category = Category::find($updates[$i]['id']);
             $category->update(['title' => $updates[$i]['title'], 'slug' => str_slug($updates[$i]['title'])]);
         }
     }
     if ($request->has('deletes')) {
         $deletes = $request->deletes;
         for ($i = 0; $i < count($deletes); $i++) {
             Category::destroy($deletes[$i]);
         }
     }
 }
Example #9
0
 public function actionDrop()
 {
     $model = new SurveyResult();
     $catList = ArrayHelper::map(Category::find()->asArray()->all(), 'id', 'name');
     $subcatList = ArrayHelper::map(Subcategory::find()->asArray()->all(), 'id', 'name');
     return $this->render('drop', ['model' => $model, 'catList' => $catList, 'subcatList' => $subcatList]);
 }
Example #10
0
 /**
  * @depends testStore
  */
 public function testUpdate($category)
 {
     $this->put(route('api.admin.category.item', $category), json_encode(['category_name' => 'test edited']));
     $category = Category::find($category->id);
     $this->assertEquals('test edited', $category->category_name);
     $this->assertResponseOk();
 }
 /**
  * Lists all Service models.
  * @return mixed
  */
 public function actionIndex()
 {
     $searchModel = new ServiceSearch();
     $dataProvider = $searchModel->search(Yii::$app->request->queryParams);
     $cat = Category::find()->orderBy('name_pt')->asArray()->all();
     return $this->render('index', ['searchModel' => $searchModel, 'dataProvider' => $dataProvider, 'cat' => $cat]);
 }
 public function actionDelete($id)
 {
     $model = Category::find()->where(['id' => $id])->one();
     $model->unlinkAll('posts', true);
     Category::deleteAll(['id' => $id]);
     return $this->actionNew();
 }
 public function actionIndex($mid = '', $f = 0)
 {
     $user = User::findIdentity(Yii::$app->user->id);
     $regFrm = new RegisterForm();
     $rstFrm = new RestorePswForm();
     $spOffs = new SpecialOffer();
     $spOffs = $spOffs->getAllSpecialOffers();
     if ($f) {
         $logFrm = new LoginForm(['scenario' => LoginForm::SCENARIO_LOGIN_CAPTCHA]);
     } else {
         $logFrm = new LoginForm(['scenario' => LoginForm::SCENARIO_LOGIN]);
     }
     $city = City::find()->all();
     $address = new Address();
     $distr = $address->getDistrict();
     $category = Category::find()->all();
     $brand = Brand::find()->all();
     $msg = '';
     switch ($mid) {
         case 1:
             $msg = Common::M_EMAIL_SEND;
             break;
         case 2:
             $msg = Common::M_PSW_EMAIL_SEND;
             break;
         case 3:
             $msg = Common::M_PSW_RESTORE_SUCCESS;
             break;
     }
     return $this->render('index', ['msg' => $msg, 'user' => $user, 'spOffs' => $spOffs, 'regFrm' => $regFrm, 'logFrm' => $logFrm, 'rstFrm' => $rstFrm, 'city' => $city, 'distr' => $distr, 'category' => $category, 'brand' => $brand]);
 }
Example #14
0
 public function save()
 {
     if (!$this->product_id) {
         return Category::find($this->category)->product()->create($this->fields());
     }
     return DB::table('products')->where('id', $this->product_id)->update(['category_id' => $this->category, 'name' => $this->name, 'type' => $this->type, 'length' => $this->length, 'thickness' => $this->thickness, 'width' => $this->width, 'description' => $this->description, 'hidden' => $this->hidden]);
 }
 public function actionCategory($slug = '')
 {
     $query = Product::find();
     $query->byCategorySlug($slug);
     $dataProvider = new \yii\data\ActiveDataProvider(['query' => $query, 'pagination' => ['pageSize' => 4]]);
     return $this->render('category', ['categoryModel' => Category::find()->bySlug($slug)->one(), 'dataProvider' => $dataProvider]);
 }
Example #16
0
 public static function getCategoryArr()
 {
     $category_id_root = Yii::$app->getRequest()->getQueryParam('category_id_root');
     $category_id = Yii::$app->getRequest()->getQueryParam('category_id');
     if (!$category_id) {
         return false;
     }
     $category = Category::find()->all();
     $categories = [];
     // categories
     $parents = [];
     foreach ($category as $cate) {
         $categories[$cate['category_name']] = $cate;
         $parents[$cate['category_id_root']][$cate['category_id']] = $cate['category_id'];
     }
     $cateQueryArr = array();
     $queue = array();
     array_push($queue, $category_id);
     while ($subCate = array_shift($queue)) {
         $cateQueryArr[$subCate] = $subCate;
         if (isset($parents[$subCate])) {
             foreach ($parents[$subCate] as $cid) {
                 array_push($queue, $cid);
             }
         }
     }
     //        echo'<pre>';
     //        var_dump($cateQueryArr);
     //        echo'</pre>';
     //        die();
     return $cateQueryArr;
 }
 /**
  * Creates data provider instance with search query applied
  *
  * @param array $params
  *
  * @return ActiveDataProvider
  */
 public function search($params)
 {
     $this->scenario = '';
     $query = Product::find()->where(['active' => 1]);
     $this->scenario = 'default';
     $this->load($params, '');
     $order_arr = !empty($this->order_by) ? explode(':', $this->order_by) : ['id', 'desc'];
     $orderField = count($order_arr) > 0 ? $order_arr[0] : 'id';
     $orderSort = count($order_arr) > 1 && $order_arr[1] == 'desc' ? SORT_DESC : SORT_ASC;
     $this->order_by = $orderField . ':' . ($orderSort == SORT_DESC ? 'desc' : 'asc');
     /** @var Category $category */
     if (isset($params['code']) && !empty($params['code'])) {
         $this->_category = Category::find()->where(['url_code' => $params['code']])->one();
     }
     if (is_null($this->_category) && isset($params['id']) && !empty($params['id'])) {
         $this->_category = Category::findOne($params['id']);
     }
     if (!is_null($this->_category)) {
         $arr_cats = $this->_category->fillSubCategoryArray();
         $query->andFilterWhere(['in', 'category_id', $arr_cats]);
     }
     $per_page = isset($params['per-page']) ? $params['per-page'] : 12;
     $dataProvider = new ActiveDataProvider(['query' => $query, 'pagination' => ['pageSize' => $per_page], 'sort' => ['defaultOrder' => ['new' => SORT_DESC], 'attributes' => ['new' => ['desc' => ['id' => SORT_DESC], 'asc' => false, 'default' => SORT_DESC, 'label' => Yii::t('app', 'Newest Arrivals')], 'featured' => ['asc' => false, 'desc' => ['featured' => SORT_DESC], 'default' => SORT_DESC, 'label' => Yii::t('app', 'Featured')], 'price_asc' => ['desc' => false, 'asc' => ['price_custom' => SORT_ASC], 'default' => SORT_ASC, 'label' => Yii::t('app', 'Price: Low to High')], 'price_desc' => ['asc' => false, 'desc' => ['price_custom' => SORT_DESC], 'default' => SORT_DESC, 'label' => Yii::t('app', 'Price: High to Low')]]]]);
     return $dataProvider;
 }
Example #18
0
 public function actionMenu($id)
 {
     $roots = Category::find()->all();
     $categ = Category::find()->where(array('id' => $id))->all();
     $prods = Product::find()->where(array('id_category' => $id))->all();
     return $this->render('menu', ['roots' => $roots, 'prods' => $prods, 'categ' => $categ]);
 }
 /**
  * Update the visibility of a category
  *
  * @param $id
  * @param $visible
  * @return mixed
  */
 public function updateVisibility($id, $visible)
 {
     $category = Category::find($id);
     $category->visible = $visible;
     $category->save();
     return $category;
 }
Example #20
0
 public static function generate()
 {
     // Там еще в сайтмепе есть приоритетность. Для главной ставим самую высокую, для всех категорий чуть ниже и последняя приоритетность для постов
     //Создает XML-строку и XML-документ при помощи DOM
     $dom = new DomDocument('1.0');
     //добавление корня - <books>
     $urlset = $dom->appendChild($dom->createElement('urlset'));
     $urlset->setAttribute('xmlns', 'http://www.sitemaps.org/schemas/sitemap/0.9');
     // Главная страница
     $url = $urlset->appendChild($dom->createElement('url'));
     $loc = $url->appendChild($dom->createElement('loc'));
     $loc->appendChild($dom->createTextNode("http://" . $_SERVER['SERVER_NAME']));
     $priority = $url->appendChild($dom->createElement('priority'));
     $priority->appendChild($dom->createTextNode('1.0'));
     // Категории фото
     $categoryPhoto = CategoryPhoto::find()->all();
     foreach ($categoryPhoto as $category) {
         $url = $urlset->appendChild($dom->createElement('url'));
         $loc = $url->appendChild($dom->createElement('loc'));
         $loc->appendChild($dom->createTextNode("http://" . $_SERVER['SERVER_NAME'] . "/category/photo/" . $category->url));
         $priority = $url->appendChild($dom->createElement('priority'));
         $priority->appendChild($dom->createTextNode('0.7'));
     }
     // Категории видео
     $categoryVideo = Category::find()->all();
     foreach ($categoryVideo as $category) {
         $url = $urlset->appendChild($dom->createElement('url'));
         $loc = $url->appendChild($dom->createElement('loc'));
         $loc->appendChild($dom->createTextNode("http://" . $_SERVER['SERVER_NAME'] . "/category/video/" . $category->url));
         $priority = $url->appendChild($dom->createElement('priority'));
         $priority->appendChild($dom->createTextNode('0.7'));
     }
     // Страницы фото
     $photoCatalog = PhotoCatalog::find()->where('publish = 1')->all();
     foreach ($photoCatalog as $photo) {
         $url = $urlset->appendChild($dom->createElement('url'));
         $loc = $url->appendChild($dom->createElement('loc'));
         $loc->appendChild($dom->createTextNode("http://" . $_SERVER['SERVER_NAME'] . "/photo/" . $photo->category->url . "/" . $photo->url));
         $priority = $url->appendChild($dom->createElement('priority'));
         $priority->appendChild($dom->createTextNode('0.5'));
     }
     // Страницы видео
     $videos = Video::find()->where('publish = 1')->all();
     foreach ($videos as $video) {
         $url = $urlset->appendChild($dom->createElement('url'));
         $loc = $url->appendChild($dom->createElement('loc'));
         $loc->appendChild($dom->createTextNode("http://" . $_SERVER['SERVER_NAME'] . "/video/" . $video->category->url . "/" . $video->url));
         $priority = $url->appendChild($dom->createElement('priority'));
         $priority->appendChild($dom->createTextNode('0.5'));
     }
     //генерация xml
     $dom->formatOutput = true;
     // установка атрибута formatOutput
     // domDocument в значение true
     // save XML as string or file
     //$test1 = $dom->saveXML(); // передача строки в test1
     $dom->save('../web/sitemap.xml');
     // сохранение файла
 }
Example #21
0
 /**
  * @param $slug
  * @return array|bool|null|Category
  */
 protected function findCategory($slug)
 {
     if (($model = Category::find()->where(['slug' => $slug])->one()) !== null) {
         return $model;
     } else {
         return false;
     }
 }
 /**
  * Get the category JSON by a given category_id
  * route: api/categories/<category_id>
  * @param  int $category_id
  * @return json {"success": true or false, "data": {"category": category}};
  */
 public function show($categoryd)
 {
     $category = Category::find($categoryId);
     if ($category == NULL) {
         return \Response::json(array("success" => false));
     }
     return \Response::json(["success" => true, "data" => array("category" => $category)]);
 }
Example #23
0
 public function actionIndex()
 {
     //Получаем список активных категорий
     $category = Category::find()->where(['status' => 1])->orderBy('sort DESC')->all();
     //Получаем список новостей
     $news = News::find()->where(['status' => 1])->orderBy(['date' => SORT_DESC, 'id' => SORT_DESC])->all();
     return $this->render('index', ['category' => $category, 'news' => $news]);
 }
Example #24
0
 public function actionIndex()
 {
     $cateCount = Category::find()->count();
     $productCount = Product::find()->count();
     $onlineCount = Session::find()->where(['status' => 1])->count();
     $userCount = Session::find()->count();
     return $this->render('index', ['cateCount' => $cateCount, 'productCount' => $productCount, 'onlineCount' => $onlineCount, 'userCount' => $userCount]);
 }
 public function destroy($categoryId)
 {
     $category = Category::find($categoryId)->delete();
     if (!$category) {
         return $this->responseNotFound(['Category Id not found']);
     }
     return $this->responseOk($category);
 }
Example #26
0
 /**
  * [postdetail description]
  * @param  [type] $post_id [description]
  * @return [type]          [description]
  */
 public function postdetail($post_id)
 {
     $post = Post::find($post_id);
     $post->category = Category::find($post->category_id);
     $randomposts = Post::getRandomPost();
     $postfeatures = Post::getPostFeaturedWidget();
     $commentposts = Comment::getCommentByPostId($post_id);
     return view('home.detailpost', compact('post', 'randomposts', 'postfeatures', 'commentposts'));
 }
Example #27
0
 /**
  * Редактирование поста.
  * @param string $id идентификатор редактируемого поста
  * @return string|Response
  */
 public function actionUpdate($id)
 {
     $model = $this->findModel($id);
     if ($model->load(Yii::$app->request->post()) && $model->save()) {
         return $this->redirect(['view', 'id' => $model->id]);
     } else {
         return $this->render('update', ['model' => $model, 'authors' => User::find()->all(), 'category' => Category::find()->all()]);
     }
 }
Example #28
0
 protected function onGet(\Illuminate\Http\Request $input)
 {
     $id = $this->input->get('id');
     $this->data['category'] = Category::find($id);
     if (!$this->data['category']) {
         return $this->redirect($this->plugin->categories_url());
     }
     return parent::onGet($input);
 }
 /**
  * Display the specified resource.
  *
  * @param  int  $id
  * @return Response
  */
 public function show($id)
 {
     $category = Category::find($id);
     if (empty($category)) {
         Flash::error('Category not found');
         return redirect(route('admin.categories.index'));
     }
     return view('site.categories.show')->with('category', $category);
 }
 public function actionMergeCategory()
 {
     $category = \app\models\Category::find()->all();
     foreach ($category as $cat) {
         $catGoogle = new \app\models\CategoryGoogle();
         $catGoogle->nombre = $cat->nombre_categoria;
         $catGoogle->save();
     }
 }