$categoryId =
(int) $this->
Request()->
getQuery('sCategory'
);
$page =
(int) $this->request->
getParam('sPage', 1
);
$page =
$page >= 1 ?
$page : 1;
$filterDate =
urldecode($this->
Request()->
getParam('sFilterDate', ''
));
$filterAuthor =
urldecode($this->
Request()->
getParam('sFilterAuthor', ''
));
$filterTags =
urldecode($this->
Request()->
getParam('sFilterTags', ''
));
// Redirect if blog's category is not a child of the current shop's category
$shopCategory =
$this->
get('shop'
)->
getCategory();
$category =
$this->
getCategoryRepository()->
findOneBy(['id' =>
$categoryId, 'active' => true
]);
$isChild =
($shopCategory &&
$category instanceof Category
) ?
$category->
isChildOf($shopCategory) : false;
if (!
$isChild) { throw new Enlight_Controller_Exception('Blog category missing, non-existent or invalid for the current shop', 404
);
} $perPage =
$this->
getPerPage($this->
Request(),
$this->container->
get('session'
));
$filter =
$this->
createFilter($filterDate,
$filterAuthor,
$filterTags);
// Start for Limit
$limitStart =
($page - 1
) *
$perPage;
$limitEnd =
$perPage;