public function mergeCondition(Condition $cond) { if ($this->condition != null) { if (!$this->condition instanceof AndChainCondition) { $this->condition = new AndChainCondition(array($this->condition)); } $this->condition->addAND($cond); } else { $this->condition = $cond; } }
private function applyStateFilter(Condition $cond) { $filters = $this->request->get('filters'); if (!is_array($filters)) { $filters = (array) json_decode($filters); } if (isset($filters['ShippingAddress.stateName'])) { $value = $filters['ShippingAddress.stateName']; $c = new LikeCond(new ARFieldHandle('UserAddress', "stateName"), '%' . $value . '%'); $c->addOR(new LikeCond(new ARFieldHandle('State', "name"), '%' . $value . '%')); $cond->addAND($c); unset($filters['ShippingAddress.stateName']); $this->request->set('filters', $filters); } }