Application->isDebugMode() ) { /** @var Array $grids */ $grids = $this->Application->getUnitOption($this->Prefix, 'Grids', Array ()); foreach ($grids as $grid_name => $grid_data) { if ( array_key_exists('Enabled', $grid_data['Fields']) ) { unset($grids[$grid_name]['Fields']['Enabled']); } } $this->Application->setUnitOption($this->Prefix, 'Grids', $grids); } } /** * Checks, that field can be edited * * @param Array $params * @return string */ function IsEditable($params) { if ($this->Application->isDebugMode()) { return true; } /** @var kDBItem $object */ $object = $this->getObject($params); return $object->GetDBField($params['check_field']); } /** * To recipient read-only * * @param Array $params * @return string * @access protected */ protected function ToRecipientReadOnly($params) { return !$this->IsEditable(Array ('check_field' => 'AllowChangingRecipient')); } /** * Removes "To" options from possible options in "RecipientType" field * * @param Array $params */ function RemoveToRecipientType($params) { /** @var kDBItem $object */ $object = $this->getObject($params); $field_options = $object->GetFieldOptions('RecipientType'); unset($field_options['options'][ EmailTemplate::RECIPIENT_TYPE_TO ]); $object->SetFieldOptions('RecipientType', $field_options); } /** * Restores "To" option in possible option list in "RecipientType" field * * @param Array $params */ function RestoreRecipientType($params) { /** @var kDBItem $object */ $object = $this->getObject($params); $field_options = $object->GetFieldOptions('RecipientType'); $virtual_fields = $this->Application->getUnitOption($this->Prefix, 'VirtualFields'); $field_options['options'] = $virtual_fields['RecipientType']['options']; $object->SetFieldOptions('RecipientType', $field_options); } }