summaryrefslogtreecommitdiff
path: root/framework
diff options
context:
space:
mode:
Diffstat (limited to 'framework')
-rw-r--r--framework/Web/Javascripts/base/postback.js3
-rw-r--r--framework/Web/Javascripts/js/base.js9
-rw-r--r--framework/Web/UI/WebControls/TBaseValidator.php19
-rw-r--r--framework/Web/UI/WebControls/TButton.php2
4 files changed, 19 insertions, 14 deletions
diff --git a/framework/Web/Javascripts/base/postback.js b/framework/Web/Javascripts/base/postback.js
index 7acb945e..2889c4ff 100644
--- a/framework/Web/Javascripts/base/postback.js
+++ b/framework/Web/Javascripts/base/postback.js
@@ -12,7 +12,8 @@ Prado.doPostBack = function(formID, eventTarget, eventParameter, performValidati
var canSubmit = true;
if (performValidation)
{
- canSubmit = Prado.Validation.validate(validationGroup);
+ //canSubmit = Prado.Validation.validate(validationGroup);
+ canSubmit = Prado.Validation.OnSubmit();
}
if (canSubmit)
{
diff --git a/framework/Web/Javascripts/js/base.js b/framework/Web/Javascripts/js/base.js
index b999f722..86c7ef83 100644
--- a/framework/Web/Javascripts/js/base.js
+++ b/framework/Web/Javascripts/js/base.js
@@ -871,13 +871,6 @@ return false;
}
return true;
};
-Prado.LinkButton=Class.create();
-Prado.LinkButton.prototype={initialize:function(_7,_8){
-Event.observe(_7,"click",function(e){
-Prado.doPostback(_7,_8,"");
-Event.stop(e);
-});
-}};
Prado.doPostBack=function(_1,_2,_3,_4,_5,_6,_7,_8){
if(typeof (_4)=="undefined"){
@@ -890,7 +883,7 @@ var _8=true;
var _9=document.getElementById?document.getElementById(_1):document.forms[_1];
var _10=true;
if(_4){
-_10=Prado.Validation.validate(_5);
+_10=Prado.Validation.OnSubmit();
}
if(_10){
if(_6!=null&&(_6.length>0)){
diff --git a/framework/Web/UI/WebControls/TBaseValidator.php b/framework/Web/UI/WebControls/TBaseValidator.php
index 6326783a..f8bfc28b 100644
--- a/framework/Web/UI/WebControls/TBaseValidator.php
+++ b/framework/Web/UI/WebControls/TBaseValidator.php
@@ -111,6 +111,14 @@ abstract class TBaseValidator extends TLabel implements IValidator
*/
protected function addAttributesToRender($writer)
{
+ $display=$this->getDisplay();
+ $visible=$this->getEnabled(true) && !$this->getIsValid();
+ if($display==='None' || (!$visible && $display==='Dynamic'))
+ $writer->addStyleAttribute('display','none');
+ else if(!$visible)
+ $writer->addStyleAttribute('visibility','hidden');
+ $writer->addAttribute('id',$this->getClientID());
+ parent::addAttributesToRender($writer);
}
/**
@@ -125,7 +133,7 @@ abstract class TBaseValidator extends TLabel implements IValidator
$options['FocusOnError'] = $this->getFocusOnError();
$options['FocusElementID'] = $this->getFocusElementID();
$options['ValidationGroup'] = $this->getValidationGroup();
- $options['ControlToValidate'] = $this->getControlToValidate();
+ $options['ControlToValidate'] = $this->getValidationTarget()->getClientID();
return $options;
}
@@ -144,6 +152,7 @@ abstract class TBaseValidator extends TLabel implements IValidator
$scripts->registerPradoScript('validator');
$js = "Prado.Validation.AddForm('{$this->Page->Form->ClientID}');";
$scripts->registerEndScript($scriptKey, $js);
+ $this->renderClientScriptValidator();
}
parent::onPreRender($param);
}
@@ -335,10 +344,10 @@ abstract class TBaseValidator extends TLabel implements IValidator
{
if($control instanceof IValidatable)
{
- $value=$control->getValidationValue();
- if($value instanceof TListItem)
- return $value->getValue();
- else
+ $value=$control->getValidationPropertyValue();
+ //if($value instanceof TListItem)
+ // return $value->getValue();
+ //else
return TPropertyValue::ensureString($value);
}
else
diff --git a/framework/Web/UI/WebControls/TButton.php b/framework/Web/UI/WebControls/TButton.php
index 735c3b50..7109bca4 100644
--- a/framework/Web/UI/WebControls/TButton.php
+++ b/framework/Web/UI/WebControls/TButton.php
@@ -83,6 +83,8 @@ class TButton extends TWebControl implements IPostBackEventHandler
}
else if($this->getEnabled()) // in this case, parent will not render 'disabled'
$writer->addAttribute('disabled','disabled');
+
+ $writer->addAttribute('id',$this->getClientID());
parent::addAttributesToRender($writer);
}