/** * @param string $key * @param null $default * @return mixed|string */ public function get($key, $default = null) { if ($key == 'slug') { return $this->slug; } return parent::get($key, $default); }
/** * @covers Element::setAll */ public function testSetAll() { $keyOne = "alt"; $valueOne = "logo fruition"; $keyTwo = "target"; $valueTwo = "_blank"; $keyThree = "href"; $valueThree = "fruitionsciences.com"; $atts = array($keyOne => $valueOne, $keyTwo => $valueTwo, $keyThree => $valueThree); $this->assertEmpty($this->elt->getAll()); $this->elt->setAll($atts); $this->assertSame($valueOne, $this->elt->get($keyOne)); $this->assertSame($valueTwo, $this->elt->get($keyTwo)); $this->assertSame($valueThree, $this->elt->get($keyThree)); }
/** * Sets up all template access for a template variable * * @param integer $tv_id * @param array $templates * * @return boolean */ public function setup_tv_template_access($tv_id, $templates) { $template_collection = $this->modx->getCollection('modTemplate'); // Remove all tv access for each template foreach ($template_collection as $template) { $template = Element::insert($template); if (!$this->remove_template_access($tv_id, $template->get_property('id'))) { return false; } } // Give access to all templates if the first name is * if ($templates[0] === '*') { foreach ($template_collection as $template) { $template = Element::insert($template); if ($template) { if (!$this->add_template_access($tv_id, $template->get_property('id'))) { return false; } } } } else { foreach ($templates as $template_name) { $template = Element::get($this->modx, 'modTemplate', $template_name); // If the template exists add access to the tv if ($template) { if (!$this->add_template_access($tv_id, $template->get_property('id'))) { return false; } } } } return true; }
public function valid() { if ($this->_position == 0 && !isset($this->_item->elements[$this->identifier], $this->_item->elements[$this->identifier][0])) { parent::set(0, array()); } return parent::get($this->_position) !== null; }
if ($element_helper->update_tv_file($updated_tvs)) { foreach ($flagged_tvs as $i) { $element_sync->remove_element('modTemplateVar', $tvs[$i]->name); } } } // Process the template variable elements foreach ($modx->getCollection('modTemplateVar') as $element_object) { // Check if the tv exists in the template variables file $element = Element::insert($element_object); $name = $element->get_property('name'); $category_id = $element->get_property('category'); $tv_file_has_tv = false; // Check if the element has a category and is whitelisted if ($category_id !== 0) { $category = Element::get($modx, 'modCategory', $category_id); if (!in_array($category->get_property('name'), $category_whitelist)) { continue; } } // Loop through the tvs to check if it exists in the template variables file foreach ($tvs as $i => $tv) { if ($tv->name === $name) { $tv_file_has_tv = true; } } // If the tv doesn't exist in the template variables json file if ($tv_file_has_tv === false) { // If the element is not in the sync if (!$element_sync->has_element('modTemplateVar', $name)) { // Collect the tv element properties