[ Mini Kiebo ]
Server: Windows NT DESKTOP-5B8S0D4 6.2 build 9200 (Windows 8 Professional Edition) i586
Path:
D:
/
Backup
/
05122024
/
htdocs
/
jurnal-kesmas
/
v1
/
lib
/
pkp
/
classes
/
validation
/
[
Home
]
File: ValidatorControlledVocab.php
<?php /** * @file classes/validation/ValidatorControlledVocab.php * * Copyright (c) 2014-2021 Simon Fraser University * Copyright (c) 2000-2021 John Willinsky * Distributed under the GNU GPL v3. For full terms see the file docs/COPYING. * * @class ValidatorControlledVocab * * @ingroup validation * * @brief Validation check that checks if value is within a certain set retrieved * from the database. */ namespace PKP\validation; use PKP\controlledVocab\ControlledVocabDAO; use PKP\db\DAORegistry; class ValidatorControlledVocab extends Validator { /** @var array */ public $_acceptedValues; /** * Constructor. * * @param string $symbolic * @param int $assocType * @param int $assocId */ public function __construct($symbolic, $assocType, $assocId) { $controlledVocabDao = DAORegistry::getDAO('ControlledVocabDAO'); /** @var ControlledVocabDAO $controlledVocabDao */ $controlledVocab = $controlledVocabDao->getBySymbolic($symbolic, $assocType, $assocId); if ($controlledVocab) { $this->_acceptedValues = array_keys($controlledVocab->enumerate()); } else { $this->_acceptedValues = []; } } // // Implement abstract methods from Validator // /** * @see Validator::isValid() * Value is valid if it is empty and optional or is in the set of accepted values. * * @return bool */ public function isValid($value) { return in_array($value, $this->_acceptedValues); } } if (!PKP_STRICT_MODE) { class_alias('\PKP\validation\ValidatorControlledVocab', '\ValidatorControlledVocab'); }