diff --git a/htdocs/admin/cashdesk.php b/htdocs/admin/cashdesk.php
index b1ecb317d07..f4093bfa51d 100644
--- a/htdocs/admin/cashdesk.php
+++ b/htdocs/admin/cashdesk.php
@@ -28,11 +28,11 @@ require_once(DOL_DOCUMENT_ROOT."/lib/admin.lib.php");
require_once(DOL_DOCUMENT_ROOT."/html.formproduct.class.php");
// If socid provided by ajax company selector
-if (! empty($_REQUEST['socid_id']))
+if (! empty($_REQUEST['CASHDESK_ID_THIRDPARTY_id']))
{
- $_GET['socid'] = $_GET['socid_id'];
- $_POST['socid'] = $_POST['socid_id'];
- $_REQUEST['socid'] = $_REQUEST['socid_id'];
+ $_GET['CASHDESK_ID_THIRDPARTY'] = $_GET['CASHDESK_ID_THIRDPARTY_id'];
+ $_POST['CASHDESK_ID_THIRDPARTY'] = $_POST['CASHDESK_ID_THIRDPARTY_id'];
+ $_REQUEST['CASHDESK_ID_THIRDPARTY'] = $_REQUEST['CASHDESK_ID_THIRDPARTY_id'];
}
// Security check
@@ -89,7 +89,7 @@ print "\n";
$var=!$var;
print '
| '.$langs->trans("CashDeskThirdPartyForSell").' | ';
print '';
-print $form->select_societes($conf->global->CASHDESK_ID_THIRDPARTY,'CASHDESK_ID_THIRDPARTY','',1);
+print $form->select_societes($conf->global->CASHDESK_ID_THIRDPARTY,'CASHDESK_ID_THIRDPARTY','',1,1);
print ' |
';
if ($conf->global->MAIN_MODULE_BANQUE)
{
diff --git a/htdocs/html.form.class.php b/htdocs/html.form.class.php
index 7f82e341512..11f647d35a2 100644
--- a/htdocs/html.form.class.php
+++ b/htdocs/html.form.class.php
@@ -462,8 +462,9 @@ class Form
* \param filter Optionnal filters criteras
* \param showempty Add an empty field
* \param showtype Show if third party is customer, prospect or supplier
+ * \param forcecombo Force to use combo box
*/
- function select_societes($selected='',$htmlname='socid',$filter='',$showempty=0, $showtype=0)
+ function select_societes($selected='',$htmlname='socid',$filter='',$showempty=0, $showtype=0, $forcecombo=0)
{
global $conf,$user,$langs;
@@ -473,7 +474,7 @@ class Form
if (!$user->rights->societe->client->voir && !$user->societe_id) $sql .= ", ".MAIN_DB_PREFIX."societe_commerciaux as sc";
$sql.= " WHERE s.entity = ".$conf->entity;
if ($filter) $sql.= " AND ".$filter;
- if ($selected && $conf->use_javascript_ajax && $conf->global->COMPANY_USE_SEARCH_TO_SELECT) $sql.= " AND rowid = ".$selected;
+ if (is_numeric($selected) && $conf->use_javascript_ajax && $conf->global->COMPANY_USE_SEARCH_TO_SELECT) $sql.= " AND s.rowid = ".$selected;
if (!$user->rights->societe->client->voir && !$user->societe_id) $sql.= " AND s.rowid = sc.fk_soc AND sc.fk_user = " .$user->id;
$sql.= " ORDER BY nom ASC";
@@ -481,7 +482,7 @@ class Form
$resql=$this->db->query($sql);
if ($resql)
{
- if ($conf->use_javascript_ajax && $conf->global->COMPANY_USE_SEARCH_TO_SELECT)
+ if ($conf->use_javascript_ajax && $conf->global->COMPANY_USE_SEARCH_TO_SELECT && ! $forcecombo)
{
$socid = 0;
if ($selected)
diff --git a/htdocs/lib/ajax.lib.php b/htdocs/lib/ajax.lib.php
index 3dc1d0876c3..84e5623a56a 100644
--- a/htdocs/lib/ajax.lib.php
+++ b/htdocs/lib/ajax.lib.php
@@ -133,11 +133,14 @@ function ajax_autocompleter($selected='',$htmlname,$url,$indicator='working')
$script.= '';
return $script;
diff --git a/htdocs/lib/lib_head.js b/htdocs/lib/lib_head.js
index 3f542634fdb..9d331759503 100644
--- a/htdocs/lib/lib_head.js
+++ b/htdocs/lib/lib_head.js
@@ -579,22 +579,22 @@ function newpopup(url,title) {
/*=================================================================
- Purpose: Recupere id d'une autcompletion Ajax
- Input: field,item
+ Purpose: Set value of a field after return of Ajax call
+ Input: HTML field name, val
Author: Regis Houssin
Licence: GPL
==================================================================*/
-function ac_return(field, item){
-/* alert('field.name='+field.name+'-'+item.innerHTML); */
+function ac_return(field, val){
+/* alert('field.name='+field.name+'-'+val.innerHTML); */
/* on met en place l'expression reguliere */
var regex = new RegExp('[0123456789]*-idcache', 'i');
/* on l'applique au contenu */
- var idCache = regex.exec(item.innerHTML);
+ var idCache = regex.exec(val.innerHTML);
/* on recupere id */
id = idCache[0].replace('-idcache', '');
/* alert('field.name='+field.name+'-'+idCache[0]+'-'+id); */
/* et on l'affecte au champ cache */
-/* alert('field.name='+field.name+'-'+item.innerHTML+'-id='+id); */
+/* alert('field.name='+field.name+'-'+val.innerHTML+'-id='+id); */
$(field.name+'_id').value = id;
}
diff --git a/htdocs/societe/ajaxcompanies.php b/htdocs/societe/ajaxcompanies.php
index 574b997eec1..30896f497b6 100644
--- a/htdocs/societe/ajaxcompanies.php
+++ b/htdocs/societe/ajaxcompanies.php
@@ -36,6 +36,8 @@ top_htmlhead("", "", 1, 1);
print '';
+dol_syslog(join(',',$_POST));
+
// Generation liste des societes
if (! empty($_POST['newcompany']) || ! empty($_POST['socid']) || ! empty($_POST['id_fourn']))
{
@@ -66,6 +68,10 @@ if (! empty($_POST['newcompany']) || ! empty($_POST['socid']) || ! empty($_POST[
print '';
}
}
+else
+{
+
+}
print "";
print "