public function testCallsContactStudioViews() { $seed = new Call(); $def = $seed->field_defs['contact_name']; $this->assertTrue(ListLayoutMetaDataParser::isValidField($def['name'], $def)); $this->assertFalse(GridLayoutMetaDataParser::validField($def, 'editview')); $this->assertFalse(GridLayoutMetaDataParser::validField($def, 'detailview')); $this->assertFalse(GridLayoutMetaDataParser::validField($def, 'quickcreate')); }
public function isValidField($key, array $def) { if (isset($def['type']) && $def['type'] == "assigned_user_name") { $origDefs = $this->getOriginalViewDefs(); if (isset($def['group']) && isset($origDefs[$def['group']])) { return false; } if (!isset($def['studio']) || is_array($def['studio']) && !isset($def['studio']['searchview'])) { return true; } } if (isset($def['studio']) && is_array($def['studio']) && isset($def['studio']['searchview'])) { return $def['studio']['searchview'] !== false && ($def['studio']['searchview'] === true || $def['studio']['searchview'] != 'false'); } if (!parent::isValidField($key, $def)) { return false; } //Special case to prevent multiple copies of assigned, modified, or created by user on the search view if (empty($def['studio']) && $key == "assigned_user_name") { $origDefs = $this->getOriginalViewDefs(); if ($key == "assigned_user_name" && isset($origDefs['assigned_user_id'])) { return false; } } //Remove image fields (unless studio was set) if (!empty($def['studio']) && isset($def['type']) && $def['type'] == "image") { return false; } return true; }
/** * Validates portal only fields. Runs the field through a prelimiary check * of type before passing the field on to the parent validator. * * @param string $key The field name to check for * @param array $def The field defs for the key * @return bool */ public function isValidFieldPortal($key, array $def) { if (isset($this->invalidTypes['portal'])) { if (!isset($def['type']) || in_array($def['type'], $this->invalidTypes['portal'])) { return false; } } return parent::isValidField($key, $def); }