Exemplo n.º 1
0
 function testConditionOnFolder($oSearch, $oFolder)
 {
     $oSearch =& KTUtil::getObject('KTSavedSearch', $oSearch);
     $iFolderId = KTUtil::getId($oFolder);
     /*
      * Make a new criteria set, an AND of the existing criteria set
      * and the sql statement requiring that D.id be the document id
      * given to us.
      */
     $aCriteriaSet = array("join" => "AND", "subgroup" => array($oSearch->getSearch(), array("join" => "AND", "values" => array(array("sql" => array("F.id = ?", array($iFolderId)))))));
     $aOptions = array('select' => 'COUNT(DISTINCT(F.id)) AS cnt');
     $aQuery = KTSearchUtil::criteriaToFolderQuery($aCriteriaSet, null, null, $aOptions);
     if (PEAR::isError($aQuery)) {
         // caused by no permissions being set.
         return false;
     }
     $cnt = DBUtil::getOneResultKey($aQuery, 'cnt');
     if (PEAR::isError($cnt)) {
         return $cnt;
     }
     if (is_null($cnt)) {
         return false;
     }
     if (!is_numeric($cnt)) {
         return PEAR::raiseError(_kt("Non-integer returned when looking for count"));
     }
     return $cnt > 0;
 }