diff options
Diffstat (limited to 'framework/Web')
| -rw-r--r-- | framework/Web/UI/TPage.php | 2 | ||||
| -rw-r--r-- | framework/Web/UI/TTemplateManager.php | 3 | ||||
| -rw-r--r-- | framework/Web/UI/WebControls/TBaseValidator.php | 10 | ||||
| -rw-r--r-- | framework/Web/UI/WebControls/TCheckBox.php | 9 | ||||
| -rw-r--r-- | framework/Web/UI/WebControls/TRequiredFieldValidator.php | 2 | 
5 files changed, 9 insertions, 17 deletions
| diff --git a/framework/Web/UI/TPage.php b/framework/Web/UI/TPage.php index 1dfc3b1e..53090e7f 100644 --- a/framework/Web/UI/TPage.php +++ b/framework/Web/UI/TPage.php @@ -288,8 +288,10 @@ class TPage extends TTemplateControl  		{
  			Prado::trace("Page validate",'System.Web.UI.TPage');
  			foreach($this->_validators as $validator)
 +			{
  				if($validator->getValidationGroup()===$validationGroup)
  					$validator->validate();
 +			}
  		}
  	}
 diff --git a/framework/Web/UI/TTemplateManager.php b/framework/Web/UI/TTemplateManager.php index 0205fb7f..07e27891 100644 --- a/framework/Web/UI/TTemplateManager.php +++ b/framework/Web/UI/TTemplateManager.php @@ -735,7 +735,8 @@ class TTemplate extends TComponent implements ITemplate  					throw new TTemplateParsingException('template_event_forbidden',$name);
  				else
  				{
 -					if(!is_callable(array($className,'set'.$name)))
 +					// id is still alowed for TComponent, even if id property doesn't exist
 +					if(strcasecmp($name,'id')!==0 && !is_callable(array($className,'set'.$name)))
  					{
  						if(is_callable(array($className,'get'.$name)))
  							throw new TTemplateParsingException('template_property_readonly',$name);
 diff --git a/framework/Web/UI/WebControls/TBaseValidator.php b/framework/Web/UI/WebControls/TBaseValidator.php index af8eb7e9..5110230b 100644 --- a/framework/Web/UI/WebControls/TBaseValidator.php +++ b/framework/Web/UI/WebControls/TBaseValidator.php @@ -154,7 +154,7 @@ abstract class TBaseValidator extends TLabel implements IValidator  		$scriptKey = "TBaseValidator:$formID";  		if($this->getEnableClientScript() && !$scripts->isEndScriptRegistered($scriptKey))  		{ -			$scripts->registerClientScript('validator');			 +			$scripts->registerClientScript('validator');  			$scripts->registerEndScript($scriptKey, "Prado.Validation.AddForm('$formID');");  		}  		if($this->getEnableClientScript()) @@ -361,13 +361,7 @@ abstract class TBaseValidator extends TLabel implements IValidator  	protected function getValidationValue($control)  	{  		if($control instanceof IValidatable) -		{ -			$value=$control->getValidationPropertyValue(); -			//if($value instanceof TListItem) -			//	return $value->getValue(); -			//else -				return TPropertyValue::ensureString($value); -		} +			return $control->getValidationPropertyValue();  		else  			throw new TInvalidDataTypeException('basevalidator_validatable_required');  	} diff --git a/framework/Web/UI/WebControls/TCheckBox.php b/framework/Web/UI/WebControls/TCheckBox.php index 47fabd20..98084009 100644 --- a/framework/Web/UI/WebControls/TCheckBox.php +++ b/framework/Web/UI/WebControls/TCheckBox.php @@ -76,13 +76,8 @@ class TCheckBox extends TWebControl implements IPostBackDataHandler, IValidatabl  	 */
  	public function raisePostDataChangedEvent()
  	{
 -		$page=$this->getPage();
 -		if($this->getAutoPostBack() && !$page->getPostBackEventTarget())
 -		{
 -			$page->setPostBackEventTarget($this);
 -			if($this->getCausesValidation())
 -				$page->validate($this->getValidationGroup());
 -		}
 +		if($this->getAutoPostBack() && $this->getCausesValidation())
 +			$this->getPage()->validate($this->getValidationGroup());
  		$this->onCheckedChanged(null);
  	}
 diff --git a/framework/Web/UI/WebControls/TRequiredFieldValidator.php b/framework/Web/UI/WebControls/TRequiredFieldValidator.php index df6c2abf..702fc5d2 100644 --- a/framework/Web/UI/WebControls/TRequiredFieldValidator.php +++ b/framework/Web/UI/WebControls/TRequiredFieldValidator.php @@ -58,7 +58,7 @@ class TRequiredFieldValidator extends TBaseValidator  	protected function evaluateIsValid()
  	{
  		$value=$this->getValidationValue($this->getValidationTarget());
 -		return trim($value)!==trim($this->getInitialValue());
 +		return trim($value)!==trim($this->getInitialValue()) || (is_bool($value) && $value);
  	}
  	/**
 | 
