Esempio n. 1
0
 /**
  * Builds and returns SQL query string. Adds additional order check.
  *
  * @param object $oListObject list main object
  *
  * @return string
  */
 protected function _buildSelectString($oListObject = null)
 {
     $sSql = parent::_buildSelectString($oListObject);
     $oDb = oxDb::getDb();
     $sSearch = oxRegistry::getConfig()->getRequestParameter('addsearch');
     $sSearch = trim($sSearch);
     $sSearchField = oxRegistry::getConfig()->getRequestParameter('addsearchfld');
     if ($sSearch) {
         switch ($sSearchField) {
             case 'oxorderarticles':
                 $sQ = "oxorder left join oxorderarticles on oxorderarticles.oxorderid=oxorder.oxid where ( oxorderarticles.oxartnum like " . $oDb->quote("%{$sSearch}%") . " or oxorderarticles.oxtitle like " . $oDb->quote("%{$sSearch}%") . " ) and ";
                 break;
             case 'oxpayments':
                 $sQ = "oxorder left join oxpayments on oxpayments.oxid=oxorder.oxpaymenttype where oxpayments.oxdesc like " . $oDb->quote("%{$sSearch}%") . " and ";
                 break;
             default:
                 $sQ = "oxorder where oxorder.oxpaid like " . $oDb->quote("%{$sSearch}%") . " and ";
                 break;
         }
         $sSql = str_replace('oxorder where', $sQ, $sSql);
     }
     return $sSql;
 }
Esempio n. 2
0
 /**
  * Builds and returns SQL query string. Adds additional order check.
  *
  * @param object $listObject list main object
  *
  * @return string
  */
 protected function _buildSelectString($listObject = null)
 {
     $query = parent::_buildSelectString($listObject);
     $database = oxDb::getDb();
     $searchQuery = oxRegistry::getConfig()->getRequestParameter('addsearch');
     $searchQuery = trim($searchQuery);
     $searchField = oxRegistry::getConfig()->getRequestParameter('addsearchfld');
     if ($searchQuery) {
         switch ($searchField) {
             case 'oxorderarticles':
                 $queryPart = "oxorder left join oxorderarticles on oxorderarticles.oxorderid=oxorder.oxid where ( oxorderarticles.oxartnum like " . $database->quote("%{$searchQuery}%") . " or oxorderarticles.oxtitle like " . $database->quote("%{$searchQuery}%") . " ) and ";
                 break;
             case 'oxpayments':
                 $queryPart = "oxorder left join oxpayments on oxpayments.oxid=oxorder.oxpaymenttype where oxpayments.oxdesc like " . $database->quote("%{$searchQuery}%") . " and ";
                 break;
             default:
                 $queryPart = "oxorder where oxorder.oxpaid like " . $database->quote("%{$searchQuery}%") . " and ";
                 break;
         }
         $query = str_replace('oxorder where', $queryPart, $query);
     }
     return $query;
 }
Esempio n. 3
0
 /**
  * Builds and returns SQL query string.
  *
  * @param object $oListObject list main object
  *
  * @return string
  */
 protected function _buildSelectString($oListObject = null)
 {
     $sQ = parent::_buildSelectString($oListObject);
     if ($sQ) {
         $sTable = getViewName("oxarticles");
         $sQ .= " and {$sTable}.oxparentid = '' ";
         $sType = false;
         $sArtCat = oxRegistry::getConfig()->getRequestParameter("art_category");
         if ($sArtCat && strstr($sArtCat, "@@") !== false) {
             list($sType, $sValue) = explode("@@", $sArtCat);
         }
         switch ($sType) {
             // add category
             case 'cat':
                 $oStr = getStr();
                 $sViewName = getViewName("oxobject2category");
                 $sInsert = "from {$sTable} left join {$sViewName} on {$sTable}.oxid = {$sViewName}.oxobjectid " . "where {$sViewName}.oxcatnid = " . oxDb::getDb()->quote($sValue) . " and ";
                 $sQ = $oStr->preg_replace("/from\\s+{$sTable}\\s+where/i", $sInsert, $sQ);
                 break;
                 // add category
             // add category
             case 'mnf':
                 $sQ .= " and {$sTable}.oxmanufacturerid = " . oxDb::getDb()->quote($sValue);
                 break;
                 // add vendor
             // add vendor
             case 'vnd':
                 $sQ .= " and {$sTable}.oxvendorid = " . oxDb::getDb()->quote($sValue);
                 break;
         }
     }
     return $sQ;
 }