/** * * @since 1.1.0 */ protected function _afterQuery() { if ((($byID = $this->method == 'getElementsByID') || ($byItem = $this->method == 'getElementsByItemID')) && $this->_testQueryVars()) { if ($byID) { $this->_setNot(array_diff($this->elements, $this->_elementsID), 'elements'); } elseif ($byItem) { $this->_setNot(array_diff($this->elements, $this->_itemsID), 'items'); } } else { parent::_afterQuery(); } }
/** * * @since 1.1.0 */ protected function _afterQuery() { switch ($this->method) { case 'getFieldsByID': if ($this->_testQueryVars()) { $this->_setNot(array_diff($this->elements, $this->_fieldsID), 'fields'); } break; case 'getFieldsByModeID': // Get elements from cahce while (!empty($this->types)) { $_elements = get_object_vars($this->_getData(array_shift($this->types))->get('elements', new JObject())); // Add only those elements are suitable states while ($_element = current($_elements)) { if (in_array($_element->mode, $this->elements) && in_array($_element->state, $this->states)) { $this->buffer->set($_element->{$this->getPrimaryName()}, $_element); } next($_elements); } } break; default: parent::_afterQuery(); break; } }