/** * Executes purchase delete action * @param sfWebRequest $request */ public function executePurchaseRemove(sfWebRequest $request) { $this->forward404Unless($purchase = $this->getRoute()->getObject()); $categoryId = $purchase->getIdCategory(); $purchase->delete(); if (ContentPurchaseTable::getInstance()->getUserPurchaseByCategoryQuery($this->getUser()->getId(), $categoryId)->count() == 0) { $this->redirect('profile_u_purchase'); } else { $this->redirect($request->getReferer()); } }
/** * Returns Array of purchases where category equals categoryId * @param <integer> $categoryId * @return <bool> false || <DoctrineCollection> $purchases */ public function getPurchaseContentByCategory($categoryId = null) { $categoryIds = array(); if (is_array($categoryId)) { $categoryIds = $categoryId; } else { if (is_numeric($categoryId)) { $categoryIds[] = $categoryId; } else { if (null === $categoryId) { $categoryIds[] = $this->getContentPurchase()->getFirst()->getCategory()->getId(); } } } return $purchases = ContentPurchaseTable::getInstance()->getPurchaseContent($categoryIds); }