2
0
forked from Wavyzz/dolibarr

Try new function to set array_options to object (extrafields values) with date sent by forms

This commit is contained in:
jfefe
2013-03-29 22:25:02 +01:00
parent 6aae37493c
commit 649c1f3721
2 changed files with 40 additions and 17 deletions

View File

@@ -341,23 +341,9 @@ else if ($action == 'add' && $user->rights->propal->creer)
}
}
// Get extra fields
foreach ($extralabels as $key => $value)
{
$key_type = $extrafields->attribute_type[$key];
if (in_array($key_type,array('date','datetime')))
{
// Clean parameters
$value_key=dol_mktime($_POST["options_".$key."hour"], $_POST["options_".$key."min"], 0, $_POST["options_".$key."month"], $_POST["options_".$key."day"], $_POST["options_".$key."year"]);
}
else
{
$value_key=GETPOST("options_".$key);
}
$object->array_options["options_".$key]=$value_key;
}
// Fill array 'array_options' with data from add form
$ret = setOptionalsFromPost($extralabels,$object);*
$id = $object->create($user);
}

View File

@@ -752,5 +752,42 @@ class ExtraFields
$out = '<tr class="liste_titre"><td colspan="4"><strong>'.$this->attribute_label[$key].'</strong></td></tr>';
return $out;
}
/**
* Fill array_options array for object by extrafields value (using for data send by forms)
*
* @param array $extralabels $array of extrafields
* @param object $object object
* @return int 1 if array_options set / 0 if no value
*/
function setOptionalsFromPost($extralabels,&$object)
{
global $_POST;
if (is_array($extralabels))
{
// Get extra fields
foreach ($extralabels as $key => $value)
{
$key_type = $this->attribute_type[$key];
if (in_array($key_type,array('date','datetime')))
{
// Clean parameters
$value_key=dol_mktime($_POST["options_".$key."hour"], $_POST["options_".$key."min"], 0, $_POST["options_".$key."month"], $_POST["options_".$key."day"], $_POST["options_".$key."year"]);
}
else
{
$value_key=GETPOST("options_".$key);
}
$object->array_options["options_".$key]=$value_key;
}
return 1;
}
else {
return 0;
}
}
}
?>