public function delete($catalogGuid) { $tblRelatedItem = new Kutu_Core_Orm_Table_RelatedItem(); $tblCatalog = new Kutu_Core_Orm_Table_Catalog(); $rowset = $tblCatalog->find($catalogGuid); if (count($rowset)) { $row = $rowset->current(); $profileGuid = $row->profileGuid; if ($row->profileGuid == 'kutu_doc') { $rowRelatedItem = $tblRelatedItem->fetchRow("itemGuid='{$row->guid}' AND relateAs='RELATED_FILE'"); } $row->delete(); //if deleted catalog is kutu_doc then re-index its parentGuid if ($profileGuid == 'kutu_doc') { $indexingEngine = Kutu_Search::manager(); $indexingEngine->indexCatalog($rowRelatedItem->relatedGuid); } } }
public function getsearchAction() { $this->_helper->layout()->disableLayout(); $r = $this->getRequest(); $query = $r->getParam('query') ? $r->getParam('query') : ''; $start = $r->getParam('start') ? $r->getParam('start') : 0; $limit = $r->getParam('limit') ? $r->getParam('limit') : 20; $orderBy = $r->getParam('orderBy') ? $r->getParam('sortBy') : 'regulationOrder'; $sortOrder = $r->getParam('sortOrder') ? $r->getParam('sortOrder') : ' asc'; $a = array(); $a['query'] = $query; $indexingEngine = Kutu_Search::manager(); $hits = $indexingEngine->find($query, $start, $limit); $num = $hits->response->numFound; $solrNumFound = count($hits->response->docs); $ii = 0; if ($solrNumFound == 0) { $a['catalogs'][0]['guid'] = 'XXX'; $a['catalogs'][0]['title'] = "No Data"; $a['catalogs'][0]['subTitle'] = ""; $a['catalogs'][0]['createdDate'] = ''; $a['catalogs'][0]['modifiedDate'] = ''; } else { if ($solrNumFound > $limit) { $numRowset = $limit; } else { $numRowset = $solrNumFound; } for ($ii = 0; $ii < $numRowset; $ii++) { $row = $hits->response->docs[$ii]; if (!empty($row)) { if ($row->profile == 'kutu_doc') { $title = 'File : ' . $row->title; $tblRelatedItem = new Kutu_Core_Orm_Table_RelatedItem(); $rowset = $tblRelatedItem->fetchRow("itemGuid='{$row->id}'"); if ($rowset) { $guid = $rowset->relatedGuid; } else { $guid = $row->id; } } else { $title = $row->title; $guid = $row->id; } $a['catalogs'][$ii]['title'] = $title; $a['catalogs'][$ii]['guid'] = $guid; if (!isset($row->subTitle)) { $a['catalogs'][$ii]['subTitle'] = ''; } else { $a['catalogs'][$ii]['subTitle'] = $row->subTitle; } if ($row->profile == 'kutu_doc') { $tblRelatedItem = new Kutu_Core_Orm_Table_RelatedItem(); $rowsetRelatedItem = $tblRelatedItem->fetchRow("itemGuid='{$row->id}' AND relateAs='RELATED_FILE'"); if ($rowsetRelatedItem) { $parentGuid = $rowsetRelatedItem->relatedGuid; } else { $parentGuid = ''; } } else { $tblCatalogFolder = new Kutu_Core_Orm_Table_CatalogFolder(); $rowsetCatalogFolder = $tblCatalogFolder->fetchRow("catalogGuid='{$row->id}'"); if ($rowsetCatalogFolder) { $parentGuid = $rowsetCatalogFolder->folderGuid; } else { $parentGuid = ''; } } $a['catalogs'][$ii]['folderGuid'] = $parentGuid; $a['catalogs'][$ii]['createdDate'] = $row->createdDate; $a['catalogs'][$ii]['modifiedDate'] = $row->modifiedDate; } } } echo Zend_Json::encode($a); }