CrudKit\Data\SQLDataProvider::addConditionsToBuilder PHP Method

addConditionsToBuilder() protected method

protected addConditionsToBuilder ( $builder, $filters )
$builder QueryBuilder
$filters
    protected function addConditionsToBuilder($builder, $filters)
    {
        foreach ($filters as $filterItem) {
            $id = $filterItem['id'];
            if ($id === "_ck_all_summary") {
                $target_cols = $this->summary_cols;
                $exprList = array();
                foreach ($target_cols as $colKey) {
                    /**
                     * @var $col SQLColumn
                     */
                    $col = $this->columns[$colKey];
                    $val = $col->cleanValue($filterItem['value']);
                    $exprString = $col->addFilterToBuilder($builder, $builder->expr(), $filterItem['type'], $val);
                    $exprList[] = $exprString;
                    $composite = call_user_func_array(array($builder->expr(), "orX"), $exprList);
                    $builder->andWhere($composite);
                }
            }
            if (isset($this->columns[$id])) {
                /**
                 * @var $col SQLColumn
                 */
                $col = $this->columns[$id];
                $val = $col->cleanValue($filterItem['value']);
                $exprString = $col->addFilterToBuilder($builder, $builder->expr(), $filterItem['type'], $val);
                $builder->andWhere($exprString);
            }
        }
    }