Initial Commit
This commit is contained in:
@@ -0,0 +1,49 @@
|
||||
<?php
|
||||
|
||||
class App_Form_Validators_InDomain extends Zend_Validate_Abstract
|
||||
{
|
||||
const DOMAIN_NULL = 'no_domain';
|
||||
const DOMAIN_NO_VALUE = 'no_domain_value';
|
||||
|
||||
protected $_messageTemplates = array(
|
||||
self::DOMAIN_NULL => 'Dominio non specificato',
|
||||
self::DOMAIN_NO_VALUE => "Il valore non è compreso nel dominio specificato"
|
||||
);
|
||||
|
||||
protected $_domain;
|
||||
protected $_domainName;
|
||||
|
||||
public function __construct($domainName)
|
||||
{
|
||||
$this->_domainName = $domainName;
|
||||
$this->setDomain($domainName);
|
||||
}
|
||||
|
||||
public function isValid($value)
|
||||
{
|
||||
$this->_setValue($value);
|
||||
|
||||
$isValid = true;
|
||||
if (!in_array($value, $this->_domain)) {
|
||||
$this->_error(self::DOMAIN_NO_VALUE);
|
||||
$isValid = false;
|
||||
}
|
||||
|
||||
return $isValid;
|
||||
}
|
||||
|
||||
private function setDomain($domainName)
|
||||
{
|
||||
|
||||
if (!$domainName) {
|
||||
throw new Zend_Validate_Exception('Nome di dominio non specificato');
|
||||
}
|
||||
|
||||
$this->_domain = array_keys(App_Constants_Domains::DOMAINS[$domainName]);
|
||||
|
||||
if(!$this->_domain){
|
||||
throw new Zend_Validate_Exception('Nome di dominio non trovato');
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user