From f9e08c23d97d2304457cd5d1a83798bd98d02806 Mon Sep 17 00:00:00 2001 From: jfefe Date: Fri, 25 Apr 2014 13:28:01 +0200 Subject: [PATCH] Add multilang support into getProductOrService webservice method --- htdocs/webservices/server_productorservice.php | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/htdocs/webservices/server_productorservice.php b/htdocs/webservices/server_productorservice.php index ea8ea85fa32..dbbde72cb34 100644 --- a/htdocs/webservices/server_productorservice.php +++ b/htdocs/webservices/server_productorservice.php @@ -303,7 +303,7 @@ $server->register( * @param int $id Id of object * @param string $ref Ref of object * @param ref_ext $ref_ext Ref external of object - * @param $lang $lang Force lang + * @param string $lang Lang to force * @return mixed */ function getProductOrService($authentication,$id='',$ref='',$ref_ext='',$lang='') @@ -312,6 +312,9 @@ function getProductOrService($authentication,$id='',$ref='',$ref_ext='',$lang='' dol_syslog("Function: getProductOrService login=".$authentication['login']." id=".$id." ref=".$ref." ref_ext=".$ref_ext); + $langcode=($lang?$lang:(empty($conf->global->MAIN_LANG_DEFAULT)?'auto':$conf->global->MAIN_LANG_DEFAULT)); + $langs->setDefaultLang($langcode); + if ($authentication['entity']) $conf->entity=$authentication['entity']; // Init and check authentication @@ -347,6 +350,10 @@ function getProductOrService($authentication,$id='',$ref='',$ref_ext='',$lang='' $pdir = get_exdir($product->id,2) . $product->id ."/photos/"; $dir = $dir . '/'. $pdir; + if (! empty($product->multilangs[$langs->defaultlang]["label"])) $product->label = $product->multilangs[$langs->defaultlang]["label"]; + if (! empty($product->multilangs[$langs->defaultlang]["description"])) $product->description = $product->multilangs[$langs->defaultlang]["description"]; + if (! empty($product->multilangs[$langs->defaultlang]["note"])) $product->note = $product->multilangs[$langs->defaultlang]["note"]; + // Create $objectresp = array( 'result'=>array('result_code'=>'OK', 'result_label'=>''),