public function execute() { $this->forceSystemAuthentication(); myDbHelper::$use_alternative_con = null; $partnerId = $this->getRequestParameter("partnerId", null); $uiConfId = $this->getRequestParameter("uiConfId", null); $page = $this->getRequestParameter("page", 1); if ($partnerId !== null && $partnerId !== "") { $pageSize = 50; $c = new Criteria(); $c->add(widgetPeer::PARTNER_ID, $partnerId); if ($uiConfId) { $c->add(widgetPeer::UI_CONF_ID, $uiConfId); } $c->addDescendingOrderByColumn(widgetPeer::CREATED_AT); $total = widgetPeer::doCount($c); $lastPage = ceil($total / $pageSize); $c->setOffset(($page - 1) * $pageSize); $c->setLimit($pageSize); $widgets = widgetPeer::doSelect($c); } else { $total = 0; $lastPage = 0; $widgets = array(); } $this->uiConfId = $uiConfId; $this->page = $page; $this->lastPage = $lastPage; $this->widgets = $widgets; $this->partner = PartnerPeer::retrieveByPK($partnerId); $this->partnerId = $partnerId; }
/** * Returns the number of related widget objects. * * @param Criteria $criteria * @param boolean $distinct * @param PropelPDO $con * @return int Count of related widget objects. * @throws PropelException */ public function countwidgets(Criteria $criteria = null, $distinct = false, PropelPDO $con = null) { if ($criteria === null) { $criteria = new Criteria(kshowPeer::DATABASE_NAME); } else { $criteria = clone $criteria; } if ($distinct) { $criteria->setDistinct(); } $count = null; if ($this->collwidgets === null) { if ($this->isNew()) { $count = 0; } else { $criteria->add(widgetPeer::KSHOW_ID, $this->id); $count = widgetPeer::doCount($criteria, false, $con); } } else { // criteria has no effect for a new object if (!$this->isNew()) { // the following code is to determine if a new query is // called for. If the criteria is the same as the last // one, just return count of the collection. $criteria->add(widgetPeer::KSHOW_ID, $this->id); if (!isset($this->lastwidgetCriteria) || !$this->lastwidgetCriteria->equals($criteria)) { $count = widgetPeer::doCount($criteria, false, $con); } else { $count = count($this->collwidgets); } } else { $count = count($this->collwidgets); } } return $count; }
/** * Retrieve a list of available widget depends on the filter given * * @action list * @param KalturaWidgetFilter $filter * @param KalturaFilterPager $pager * @return KalturaWidgetListResponse */ function listAction(KalturaWidgetFilter $filter = null, KalturaFilterPager $pager = null) { if (!$filter) { $filter = new KalturaWidgetFilter(); } $widgetFilter = new widgetFilter(); $filter->toObject($widgetFilter); $c = new Criteria(); $widgetFilter->attachToCriteria($c); $totalCount = widgetPeer::doCount($c); if ($pager) { $pager->attachToCriteria($c); } $list = widgetPeer::doSelect($c); $newList = KalturaWidgetArray::fromWidgetArray($list); $response = new KalturaWidgetListResponse(); $response->objects = $newList; $response->totalCount = $totalCount; return $response; }