From b27a206b2308f883d21c5467687f4fbcab35df15 Mon Sep 17 00:00:00 2001 From: Regis Houssin Date: Fri, 9 Mar 2012 19:03:49 +0100 Subject: [PATCH] Fix: force generic object if savemethod is not defined --- htdocs/core/ajax/loadinplace.php | 16 +++++++--------- htdocs/core/ajax/saveinplace.php | 21 ++++++++++----------- 2 files changed, 17 insertions(+), 20 deletions(-) diff --git a/htdocs/core/ajax/loadinplace.php b/htdocs/core/ajax/loadinplace.php index fe577d54347..7042973f84e 100644 --- a/htdocs/core/ajax/loadinplace.php +++ b/htdocs/core/ajax/loadinplace.php @@ -44,15 +44,13 @@ if((isset($_GET['field']) && ! empty($_GET['field'])) && (isset($_GET['table_element']) && ! empty($_GET['table_element'])) && (isset($_GET['fk_element']) && ! empty($_GET['fk_element']))) { - $element = GETPOST('element'); - $table_element = GETPOST('table_element'); - $fk_element = GETPOST('fk_element'); - $ext_element = GETPOST('ext_element'); - //$ext_table_element = GETPOST('ext_table_element'); - //$ext_fk_element = GETPOST('ext_fk_element'); - $field = substr(GETPOST('field'), 8); // remove prefix val_ - $type = GETPOST('type'); - $loadmethod = (GETPOST('loadmethod') ? GETPOST('loadmethod') : 'getValueFrom'); + $element = GETPOST('element','alpha'); + $table_element = GETPOST('table_element','alpha'); + $fk_element = GETPOST('fk_element','alpha'); + $ext_element = GETPOST('ext_element','alpha'); + $field = substr(GETPOST('field','alpha'), 8); // remove prefix val_ + $type = GETPOST('type','alpha'); + $loadmethod = (GETPOST('loadmethod','alpha') ? GETPOST('loadmethod','alpha') : 'getValueFrom'); if ($element != 'order_supplier' && $element != 'invoice_supplier' && preg_match('/^([^_]+)_([^_]+)/i',$element,$regs)) { diff --git a/htdocs/core/ajax/saveinplace.php b/htdocs/core/ajax/saveinplace.php index b9c2f7dbfec..5f5dc00cad6 100644 --- a/htdocs/core/ajax/saveinplace.php +++ b/htdocs/core/ajax/saveinplace.php @@ -45,16 +45,15 @@ if((isset($_POST['field']) && ! empty($_POST['field'])) && (isset($_POST['table_element']) && ! empty($_POST['table_element'])) && (isset($_POST['fk_element']) && ! empty($_POST['fk_element']))) { - $element = GETPOST('element'); - $table_element = GETPOST('table_element'); - $fk_element = GETPOST('fk_element'); - $ext_element = GETPOST('ext_element'); - //$ext_table_element = GETPOST('ext_table_element'); - //$ext_fk_element = GETPOST('ext_fk_element'); - $field = substr(GETPOST('field'), 8); // remove prefix val_ - $value = GETPOST('value'); - $type = GETPOST('type'); - $savemethodname = (GETPOST('savemethod') ? GETPOST('savemethod') : 'setValueFrom'); + $element = GETPOST('element','alpha'); + $table_element = GETPOST('table_element','alpha'); + $fk_element = GETPOST('fk_element','alpha'); + $ext_element = GETPOST('ext_element','alpha'); + $field = substr(GETPOST('field','alpha'), 8); // remove prefix val_ + $value = GETPOST('value','alpha'); + $type = GETPOST('type','alpha'); + $savemethod = GETPOST('savemethod','alpha'); + $savemethodname = (! empty($savemethod) ? $savemethod : 'setValueFrom'); $view=''; $format='text'; @@ -158,7 +157,7 @@ if((isset($_POST['field']) && ! empty($_POST['field'])) if (! $error) { - if (! is_object($object)) $object = new GenericObject($db); + if (! is_object($object) || empty($savemethod)) $object = new GenericObject($db); // Specific for add_object_linked() // TODO add a function for variable treatment