mirror of
https://github.com/Combodo/iTop.git
synced 2026-04-21 09:38:48 +02:00
(Retrofit from trunk) Portal: CaseLog fields value was kept in the form after object update instead of being reset.
SVN:2.3[4665]
This commit is contained in:
@@ -878,6 +878,9 @@ class ObjectFormManager extends FormManager
|
||||
// Ending transaction with a commit as everything was fine
|
||||
CMDBSource::Query('COMMIT');
|
||||
|
||||
// Resetting caselog fields value, otherwise the value will stay in it after submit.
|
||||
$this->oForm->ResetCaseLogFields();
|
||||
|
||||
if ($bWasModified)
|
||||
{
|
||||
$aData['messages']['success'] += array('_main' => array(Dict::S('Brick:Portal:Object:Form:Message:Saved')));
|
||||
|
||||
@@ -135,16 +135,6 @@ $(function()
|
||||
// If everything is okay, we close the form and reload it.
|
||||
if(oValidation.valid)
|
||||
{
|
||||
// Resetting textarea fields (delay is necessary has we have to wait for the form to be built.
|
||||
setTimeout(function(){
|
||||
me.options.field_set.find('.portal_form_field_html').each(function(iIndex, oElem){
|
||||
if($(oElem).find('.cke').length > 0)
|
||||
{
|
||||
$(oElem).triggerHandler('set_current_value', '');
|
||||
}
|
||||
});
|
||||
}, 200);
|
||||
|
||||
if(me.options.is_modal)
|
||||
{
|
||||
me.element.closest('.modal').modal('hide');
|
||||
|
||||
@@ -19,10 +19,11 @@
|
||||
|
||||
namespace Combodo\iTop\Form;
|
||||
|
||||
use Combodo\iTop\Form\Field\SubFormField;
|
||||
use \Exception;
|
||||
use \Dict;
|
||||
use \Combodo\iTop\Form\Field\Field;
|
||||
use \Combodo\iTop\Form\Field\CaseLogField;
|
||||
use \Combodo\iTop\Form\Field\SubFormField;
|
||||
|
||||
/**
|
||||
* Description of Form
|
||||
@@ -465,6 +466,28 @@ class Form
|
||||
return $ret;
|
||||
}
|
||||
|
||||
/**
|
||||
* Resets CaseLog fields value in the form and its sub-forms
|
||||
*
|
||||
* @return Form
|
||||
*/
|
||||
public function ResetCaseLogFields()
|
||||
{
|
||||
foreach($this->GetFields() as $oField)
|
||||
{
|
||||
if($oField instanceof CaseLogField)
|
||||
{
|
||||
$oField->SetCurrentValue(null);
|
||||
}
|
||||
elseif($oField instanceof SubFormField)
|
||||
{
|
||||
$oField->GetForm()->ResetCaseLogFields();
|
||||
}
|
||||
}
|
||||
|
||||
return $this;
|
||||
}
|
||||
|
||||
/**
|
||||
* Finalizes each field, following the dependencies so that a field can compute its value or other properties,
|
||||
* depending on other fields
|
||||
|
||||
@@ -29,7 +29,9 @@ use \Combodo\iTop\Renderer\FormRenderer;
|
||||
*/
|
||||
abstract class FormManager
|
||||
{
|
||||
/** @var \Combodo\iTop\Form\Form $oForm */
|
||||
protected $oForm;
|
||||
/** @var \Combodo\iTop\Renderer\FormRenderer $oRenderer */
|
||||
protected $oRenderer;
|
||||
|
||||
/**
|
||||
|
||||
Reference in New Issue
Block a user