if (!defined("_PS_VERSION_")) {
die;
}
class Ps8modAdminInvoiceMailGridQuery {
protected $module = false;
protected $name_of_class;
public function __construct(Module $module = null) {
$this->name_of_class = get_class($this);
$this->module = $module;
}
public function l($string, $source = null) {
if (is_object($this->module)) {
if (is_null($source)) {
$source = strtolower($this->name_of_class);
}
return $this->module->l($string, $source);
}
return $string;
}
public function create($params) {
$searchQueryBuilder = $params["search_query_builder"];
$searchCriteria = $params["search_criteria"];
$searchQueryBuilder->addSelect("IF(dtim.`invoice_email` IS NULL, '--', dtim.`invoice_email`) AS `invoice_email`");
$searchQueryBuilder->leftJoin("c", "`" . pSQL(_DB_PREFIX_) . $this->module->name . "`", "dtim", "dtim.`id_customer` = c.`id_customer`");
if ("invoice_email" === $searchCriteria->getOrderBy()) {
$searchQueryBuilder->orderBy("dtim.`invoice_email`", $searchCriteria->getOrderWay());
}
foreach ($searchCriteria->getFilters() as $filterName => $filterValue) {
if ($filterName === "invoice_email" && $filterValue) {
$searchQueryBuilder->andWhere("dtim.`invoice_email` = :invoice_email");
$searchQueryBuilder->setParameter("invoice_email", $filterValue);
if (!$filterValue) {
$searchQueryBuilder->orWhere("dtim.`invoice_email` IS NULL");
}
}
}
}
}
© 2023 Quttera Ltd. All rights reserved.