Merge branch 'develop' into dev_projecthtmlform
This commit is contained in:
commit
f2e2815cc1
@ -23,6 +23,7 @@ For users:
|
|||||||
- New: [ task #926 ] Add extrafield feature on order lines
|
- New: [ task #926 ] Add extrafield feature on order lines
|
||||||
- New: [ task #927 ] Add extrafield feature on Proposal lines
|
- New: [ task #927 ] Add extrafield feature on Proposal lines
|
||||||
- New: [ task #928 ] Add extrafield feature on invoice lines
|
- New: [ task #928 ] Add extrafield feature on invoice lines
|
||||||
|
- New: Add option ADHERENT_LOGIN_NOT_REQUIRED
|
||||||
|
|
||||||
For translators:
|
For translators:
|
||||||
- Normalized sort order of all languages files with english ref file.
|
- Normalized sort order of all languages files with english ref file.
|
||||||
|
|||||||
@ -130,20 +130,17 @@ $var=true;
|
|||||||
$form = new Form($db);
|
$form = new Form($db);
|
||||||
|
|
||||||
// Login/Pass required for members
|
// Login/Pass required for members
|
||||||
if ($conf->global->MAIN_FEATURES_LEVEL > 0)
|
$var=!$var;
|
||||||
{
|
print '<form action="'.$_SERVER["PHP_SELF"].'" method="POST">';
|
||||||
$var=!$var;
|
print '<input type="hidden" name="token" value="'.$_SESSION['newtoken'].'">';
|
||||||
print '<form action="'.$_SERVER["PHP_SELF"].'" method="POST">';
|
print '<input type="hidden" name="action" value="update">';
|
||||||
print '<input type="hidden" name="token" value="'.$_SESSION['newtoken'].'">';
|
print '<input type="hidden" name="constname" value="ADHERENT_LOGIN_NOT_REQUIRED">';
|
||||||
print '<input type="hidden" name="action" value="update">';
|
print '<tr '.$bc[$var].'><td>'.$langs->trans("AdherentLoginRequired").'</td><td>';
|
||||||
print '<input type="hidden" name="constname" value="ADHERENT_LOGIN_NOT_REQUIRED">';
|
print $form->selectyesno('constvalue',(! empty($conf->global->ADHERENT_LOGIN_NOT_REQUIRED)?0:1),1);
|
||||||
print '<tr '.$bc[$var].'><td>'.$langs->trans("AdherentLoginRequired").'</td><td>';
|
print '</td><td align="center" width="80">';
|
||||||
print $form->selectyesno('constvalue',(! empty($conf->global->ADHERENT_LOGIN_NOT_REQUIRED)?$conf->global->ADHERENT_LOGIN_NOT_REQUIRED:1),1);
|
print '<input type="submit" class="button" value="'.$langs->trans("Update").'" name="Button">';
|
||||||
print '</td><td align="center" width="80">';
|
print "</td></tr>\n";
|
||||||
print '<input type="submit" class="button" value="'.$langs->trans("Update").'" name="Button">';
|
print '</form>';
|
||||||
print "</td></tr>\n";
|
|
||||||
print '</form>';
|
|
||||||
}
|
|
||||||
|
|
||||||
// Mail required for members
|
// Mail required for members
|
||||||
$var=!$var;
|
$var=!$var;
|
||||||
|
|||||||
@ -1838,7 +1838,7 @@ else if ($action == 'print_file' AND $user->rights->printipp->read)
|
|||||||
{
|
{
|
||||||
require_once DOL_DOCUMENT_ROOT.'/core/class/dolprintipp.class.php';
|
require_once DOL_DOCUMENT_ROOT.'/core/class/dolprintipp.class.php';
|
||||||
$printer = new dolPrintIPP($db,$conf->global->PRINTIPP_HOST,$conf->global->PRINTIPP_PORT,$user->login,$conf->global->PRINTIPP_USER,$conf->global->PRINTIPP_PASSWORD);
|
$printer = new dolPrintIPP($db,$conf->global->PRINTIPP_HOST,$conf->global->PRINTIPP_PORT,$user->login,$conf->global->PRINTIPP_USER,$conf->global->PRINTIPP_PASSWORD);
|
||||||
$printer->print_file(GETPOST('file',alpha),GETPOST('printer',alpha));
|
$printer->print_file(GETPOST('file','alpha'),GETPOST('printer','alpha'));
|
||||||
setEventMessage($langs->trans("FileWasSentToPrinter", GETPOST('file')));
|
setEventMessage($langs->trans("FileWasSentToPrinter", GETPOST('file')));
|
||||||
$action='';
|
$action='';
|
||||||
}
|
}
|
||||||
|
|||||||
@ -125,8 +125,8 @@ class FactureRec extends Facture
|
|||||||
$sql.= ", '".$facsrc->socid."'";
|
$sql.= ", '".$facsrc->socid."'";
|
||||||
$sql.= ", ".$conf->entity;
|
$sql.= ", ".$conf->entity;
|
||||||
$sql.= ", ".$this->db->idate($now);
|
$sql.= ", ".$this->db->idate($now);
|
||||||
$sql.= ", '".$facsrc->amount."'";
|
$sql.= ", ".(!empty($facsrc->amount)?$facsrc->amount:'0');
|
||||||
$sql.= ", '".$facsrc->remise."'";
|
$sql.= ", ".(!empty($facsrc->remise)?$this->remise:'0');
|
||||||
$sql.= ", ".(!empty($this->note_private)?("'".$this->db->escape($this->note_private)."'"):"NULL");
|
$sql.= ", ".(!empty($this->note_private)?("'".$this->db->escape($this->note_private)."'"):"NULL");
|
||||||
$sql.= ", ".(!empty($this->note_public)?("'".$this->db->escape($this->note_public)."'"):"NULL");
|
$sql.= ", ".(!empty($this->note_public)?("'".$this->db->escape($this->note_public)."'"):"NULL");
|
||||||
$sql.= ", '".$user->id."'";
|
$sql.= ", '".$user->id."'";
|
||||||
|
|||||||
@ -627,11 +627,11 @@ class ExtraFields
|
|||||||
{
|
{
|
||||||
$tmp=explode(',',$size);
|
$tmp=explode(',',$size);
|
||||||
$newsize=$tmp[0];
|
$newsize=$tmp[0];
|
||||||
$out='<input type="text" name="options_'.$key.'" size="'.$showsize.'" maxlength="'.$newsize.'" value="'.$value.'"'.($moreparam?$moreparam:'').'>';
|
$out='<input type="text" class="flat" name="options_'.$key.'" size="'.$showsize.'" maxlength="'.$newsize.'" value="'.$value.'"'.($moreparam?$moreparam:'').'>';
|
||||||
}
|
}
|
||||||
elseif ($type == 'varchar')
|
elseif ($type == 'varchar')
|
||||||
{
|
{
|
||||||
$out='<input type="text" name="options_'.$key.'" size="'.$showsize.'" maxlength="'.$size.'" value="'.$value.'"'.($moreparam?$moreparam:'').'>';
|
$out='<input type="text" class="flat" name="options_'.$key.'" size="'.$showsize.'" maxlength="'.$size.'" value="'.$value.'"'.($moreparam?$moreparam:'').'>';
|
||||||
}
|
}
|
||||||
elseif ($type == 'text')
|
elseif ($type == 'text')
|
||||||
{
|
{
|
||||||
@ -647,30 +647,30 @@ class ExtraFields
|
|||||||
} else {
|
} else {
|
||||||
$checked=' value="1" ';
|
$checked=' value="1" ';
|
||||||
}
|
}
|
||||||
$out='<input type="checkbox" name="options_'.$key.'" '.$checked.' '.($moreparam?$moreparam:'').'>';
|
$out='<input type="checkbox" class="flat" name="options_'.$key.'" '.$checked.' '.($moreparam?$moreparam:'').'>';
|
||||||
}
|
}
|
||||||
elseif ($type == 'mail')
|
elseif ($type == 'mail')
|
||||||
{
|
{
|
||||||
$out='<input type="text" name="options_'.$key.'" size="32" value="'.$value.'">';
|
$out='<input type="text" class="flat" name="options_'.$key.'" size="32" value="'.$value.'">';
|
||||||
}
|
}
|
||||||
elseif ($type == 'phone')
|
elseif ($type == 'phone')
|
||||||
{
|
{
|
||||||
$out='<input type="text" name="options_'.$key.'" size="20" value="'.$value.'">';
|
$out='<input type="text" class="flat" name="options_'.$key.'" size="20" value="'.$value.'">';
|
||||||
}
|
}
|
||||||
elseif ($type == 'price')
|
elseif ($type == 'price')
|
||||||
{
|
{
|
||||||
$out='<input type="text" name="options_'.$key.'" size="6" value="'.price($value).'"> '.$langs->getCurrencySymbol($conf->currency);
|
$out='<input type="text" class="flat" name="options_'.$key.'" size="6" value="'.price($value).'"> '.$langs->getCurrencySymbol($conf->currency);
|
||||||
}
|
}
|
||||||
elseif ($type == 'double')
|
elseif ($type == 'double')
|
||||||
{
|
{
|
||||||
if (!empty($value)) {
|
if (!empty($value)) {
|
||||||
$value=price($value);
|
$value=price($value);
|
||||||
}
|
}
|
||||||
$out='<input type="text" name="options_'.$key.'" size="6" value="'.$value.'"> ';
|
$out='<input type="text" class="flat" name="options_'.$key.'" size="6" value="'.$value.'"> ';
|
||||||
}
|
}
|
||||||
elseif ($type == 'select')
|
elseif ($type == 'select')
|
||||||
{
|
{
|
||||||
$out='<select name="options_'.$key.'">';
|
$out='<select class="flat" name="options_'.$key.'">';
|
||||||
foreach ($param['options'] as $key=>$val )
|
foreach ($param['options'] as $key=>$val )
|
||||||
{
|
{
|
||||||
$out.='<option value="'.$key.'"';
|
$out.='<option value="'.$key.'"';
|
||||||
@ -681,7 +681,7 @@ class ExtraFields
|
|||||||
}
|
}
|
||||||
elseif ($type == 'sellist')
|
elseif ($type == 'sellist')
|
||||||
{
|
{
|
||||||
$out='<select name="options_'.$key.'">';
|
$out='<select class="flat" name="options_'.$key.'">';
|
||||||
$param_list=array_keys($param['options']);
|
$param_list=array_keys($param['options']);
|
||||||
$InfoFieldList = explode(":", $param_list[0]);
|
$InfoFieldList = explode(":", $param_list[0]);
|
||||||
|
|
||||||
@ -698,7 +698,7 @@ class ExtraFields
|
|||||||
$sql.= ' FROM '.MAIN_DB_PREFIX .$InfoFieldList[0];
|
$sql.= ' FROM '.MAIN_DB_PREFIX .$InfoFieldList[0];
|
||||||
//$sql.= ' WHERE entity = '.$conf->entity;
|
//$sql.= ' WHERE entity = '.$conf->entity;
|
||||||
|
|
||||||
dol_syslog(get_class($this).':showInputField:$type=sellist sql='.$sql);
|
dol_syslog(get_class($this).'::showInputField type=sellist sql='.$sql);
|
||||||
$resql = $this->db->query($sql);
|
$resql = $this->db->query($sql);
|
||||||
|
|
||||||
if ($resql)
|
if ($resql)
|
||||||
@ -741,7 +741,7 @@ class ExtraFields
|
|||||||
foreach ($param['options'] as $keyopt=>$val )
|
foreach ($param['options'] as $keyopt=>$val )
|
||||||
{
|
{
|
||||||
|
|
||||||
$out.='<input type="checkbox" name="options_'.$key.'[]"';
|
$out.='<input class="flat" type="checkbox" name="options_'.$key.'[]"';
|
||||||
$out.=' value="'.$keyopt.'"';
|
$out.=' value="'.$keyopt.'"';
|
||||||
|
|
||||||
if ((is_array($value_arr)) && in_array($keyopt,$value_arr)) {
|
if ((is_array($value_arr)) && in_array($keyopt,$value_arr)) {
|
||||||
@ -758,7 +758,7 @@ class ExtraFields
|
|||||||
$out='';
|
$out='';
|
||||||
foreach ($param['options'] as $keyopt=>$val )
|
foreach ($param['options'] as $keyopt=>$val )
|
||||||
{
|
{
|
||||||
$out.='<input type="radio" name="options_'.$key.'"';
|
$out.='<input class="flat" type="radio" name="options_'.$key.'"';
|
||||||
$out.=' value="'.$keyopt.'"';
|
$out.=' value="'.$keyopt.'"';
|
||||||
$out.= ($value==$keyopt?'checked="checked"':'');
|
$out.= ($value==$keyopt?'checked="checked"':'');
|
||||||
$out.='/>'.$val.'<br>';
|
$out.='/>'.$val.'<br>';
|
||||||
@ -842,7 +842,6 @@ class ExtraFields
|
|||||||
if (count($InfoFieldList)==3)
|
if (count($InfoFieldList)==3)
|
||||||
$keyList=$InfoFieldList[2];
|
$keyList=$InfoFieldList[2];
|
||||||
|
|
||||||
|
|
||||||
$sql = 'SELECT '.$InfoFieldList[1];
|
$sql = 'SELECT '.$InfoFieldList[1];
|
||||||
$sql.= ' FROM '.MAIN_DB_PREFIX .$InfoFieldList[0];
|
$sql.= ' FROM '.MAIN_DB_PREFIX .$InfoFieldList[0];
|
||||||
$sql.= ' WHERE '.$keyList.'=\''.$this->db->escape($value).'\'';
|
$sql.= ' WHERE '.$keyList.'=\''.$this->db->escape($value).'\'';
|
||||||
|
|||||||
@ -2040,15 +2040,16 @@ function img_up($alt = 'default', $selected = 0)
|
|||||||
*
|
*
|
||||||
* @param string $alt Text to show on alt image
|
* @param string $alt Text to show on alt image
|
||||||
* @param int $selected Selected
|
* @param int $selected Selected
|
||||||
|
* @param string $options Add more attribute on img tag (For example 'style="float: right"')
|
||||||
* @return string Return img tag
|
* @return string Return img tag
|
||||||
*/
|
*/
|
||||||
function img_left($alt = 'default', $selected = 0)
|
function img_left($alt = 'default', $selected = 0, $options='')
|
||||||
{
|
{
|
||||||
global $conf, $langs;
|
global $conf, $langs;
|
||||||
|
|
||||||
if ($alt == 'default') $alt = $langs->trans('Left');
|
if ($alt == 'default') $alt = $langs->trans('Left');
|
||||||
|
|
||||||
return img_picto($alt, ($selected ? '1leftarrow_selected.png' : '1leftarrow.png'));
|
return img_picto($alt, ($selected ? '1leftarrow_selected.png' : '1leftarrow.png'), $options);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -2056,15 +2057,16 @@ function img_left($alt = 'default', $selected = 0)
|
|||||||
*
|
*
|
||||||
* @param string $alt Text to show on alt image
|
* @param string $alt Text to show on alt image
|
||||||
* @param int $selected Selected
|
* @param int $selected Selected
|
||||||
|
* @param string $options Add more attribute on img tag (For example 'style="float: right"')
|
||||||
* @return string Return img tag
|
* @return string Return img tag
|
||||||
*/
|
*/
|
||||||
function img_right($alt = 'default', $selected = 0)
|
function img_right($alt = 'default', $selected = 0, $options='')
|
||||||
{
|
{
|
||||||
global $conf, $langs;
|
global $conf, $langs;
|
||||||
|
|
||||||
if ($alt == 'default') $alt = $langs->trans('Right');
|
if ($alt == 'default') $alt = $langs->trans('Right');
|
||||||
|
|
||||||
return img_picto($alt, ($selected ? '1rightarrow_selected.png' : '1rightarrow.png'));
|
return img_picto($alt, ($selected ? '1rightarrow_selected.png' : '1rightarrow.png'), $options);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
@ -301,7 +301,7 @@ function print_left_auguria_menu($db,$menu_array_before,$menu_array_after,&$tabM
|
|||||||
// Show menu
|
// Show menu
|
||||||
if (empty($noout))
|
if (empty($noout))
|
||||||
{
|
{
|
||||||
$alt=0;
|
$alt=0; $blockvmenuopened=false;
|
||||||
$num=count($menu_array);
|
$num=count($menu_array);
|
||||||
for ($i = 0; $i < $num; $i++)
|
for ($i = 0; $i < $num; $i++)
|
||||||
{
|
{
|
||||||
@ -311,6 +311,7 @@ function print_left_auguria_menu($db,$menu_array_before,$menu_array_after,&$tabM
|
|||||||
$alt++;
|
$alt++;
|
||||||
if (empty($menu_array[$i]['level']) && $showmenu)
|
if (empty($menu_array[$i]['level']) && $showmenu)
|
||||||
{
|
{
|
||||||
|
$blockvmenuopened=true;
|
||||||
if (($alt%2==0))
|
if (($alt%2==0))
|
||||||
{
|
{
|
||||||
print '<div class="blockvmenuimpair">'."\n";
|
print '<div class="blockvmenuimpair">'."\n";
|
||||||
@ -344,7 +345,7 @@ function print_left_auguria_menu($db,$menu_array_before,$menu_array_after,&$tabM
|
|||||||
$url.='mainmenu='.$mainmenu;
|
$url.='mainmenu='.$mainmenu;
|
||||||
}
|
}
|
||||||
|
|
||||||
print '<!-- Add menu entry with mainmenu='.$menu_array[$i]['mainmenu'].', leftmenu='.$menu_array[$i]['leftmenu'].', level='.$menu_array[$i]['level'].' -->'."\n";
|
print '<!-- Process menu entry with mainmenu='.$menu_array[$i]['mainmenu'].', leftmenu='.$menu_array[$i]['leftmenu'].', level='.$menu_array[$i]['level'].' enabled='.$menu_array[$i]['enabled'].' -->'."\n";
|
||||||
|
|
||||||
// Menu niveau 0
|
// Menu niveau 0
|
||||||
if ($menu_array[$i]['level'] == 0)
|
if ($menu_array[$i]['level'] == 0)
|
||||||
@ -379,12 +380,12 @@ function print_left_auguria_menu($db,$menu_array_before,$menu_array_after,&$tabM
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// If next is a new block or end
|
// If next is a new block or if there is nothing after
|
||||||
if (empty($menu_array[$i+1]['level']))
|
if (empty($menu_array[$i+1]['level']))
|
||||||
{
|
{
|
||||||
if ($showmenu)
|
if ($showmenu)
|
||||||
print '<div class="menu_end"></div>'."\n";
|
print '<div class="menu_end"></div>'."\n";
|
||||||
print "</div>\n";
|
if ($blockvmenuopened) { print "</div>\n"; $blockvmenuopened=false; }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1269,7 +1269,7 @@ function print_left_eldy_menu($db,$menu_array_before,$menu_array_after,&$tabMenu
|
|||||||
// Show menu
|
// Show menu
|
||||||
if (empty($noout))
|
if (empty($noout))
|
||||||
{
|
{
|
||||||
$alt=0;
|
$alt=0; $blockvmenuopened=false;
|
||||||
$num=count($menu_array);
|
$num=count($menu_array);
|
||||||
for ($i = 0; $i < $num; $i++)
|
for ($i = 0; $i < $num; $i++)
|
||||||
{
|
{
|
||||||
@ -1279,6 +1279,7 @@ function print_left_eldy_menu($db,$menu_array_before,$menu_array_after,&$tabMenu
|
|||||||
$alt++;
|
$alt++;
|
||||||
if (empty($menu_array[$i]['level']) && $showmenu)
|
if (empty($menu_array[$i]['level']) && $showmenu)
|
||||||
{
|
{
|
||||||
|
$blockvmenuopened=true;
|
||||||
if (($alt%2==0))
|
if (($alt%2==0))
|
||||||
{
|
{
|
||||||
print '<div class="blockvmenuimpair">'."\n";
|
print '<div class="blockvmenuimpair">'."\n";
|
||||||
@ -1305,7 +1306,7 @@ function print_left_eldy_menu($db,$menu_array_before,$menu_array_after,&$tabMenu
|
|||||||
$url=preg_replace('/__LOGIN__/',$user->login,$url);
|
$url=preg_replace('/__LOGIN__/',$user->login,$url);
|
||||||
$url=preg_replace('/__USERID__/',$user->id,$url);
|
$url=preg_replace('/__USERID__/',$user->id,$url);
|
||||||
|
|
||||||
print '<!-- Add menu entry with mainmenu='.$menu_array[$i]['mainmenu'].', leftmenu='.$menu_array[$i]['leftmenu'].', level='.$menu_array[$i]['level'].' -->'."\n";
|
print '<!-- Process menu entry with mainmenu='.$menu_array[$i]['mainmenu'].', leftmenu='.$menu_array[$i]['leftmenu'].', level='.$menu_array[$i]['level'].' enabled='.$menu_array[$i]['enabled'].' -->'."\n";
|
||||||
|
|
||||||
// Menu niveau 0
|
// Menu niveau 0
|
||||||
if ($menu_array[$i]['level'] == 0)
|
if ($menu_array[$i]['level'] == 0)
|
||||||
@ -1340,12 +1341,12 @@ function print_left_eldy_menu($db,$menu_array_before,$menu_array_after,&$tabMenu
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// If next is a new block or end
|
// If next is a new block or if there is nothing after
|
||||||
if (empty($menu_array[$i+1]['level']))
|
if (empty($menu_array[$i+1]['level']))
|
||||||
{
|
{
|
||||||
if ($showmenu)
|
if ($showmenu)
|
||||||
print '<div class="menu_end"></div>'."\n";
|
print '<div class="menu_end"></div>'."\n";
|
||||||
print "</div>\n";
|
if ($blockvmenuopened) { print "</div>\n"; $blockvmenuopened=false; }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -179,7 +179,7 @@ class modAdherent extends DolibarrModules
|
|||||||
$this->export_TypeFields_array[$r]=array('a.civilite'=>"Text",'a.lastname'=>"Text",'a.firstname'=>"Text",'a.login'=>"Text",'a.morphy'=>'Text','a.societe'=>'Text','a.address'=>"Text",'a.zip'=>"Text",'a.town'=>"Text",'a.country'=>"Text",'a.phone'=>"Text",'a.phone_perso'=>"Text",'a.phone_mobile'=>"Text",'a.email'=>"Text",'a.birth'=>"Date",'a.statut'=>"Status",'a.note'=>"Text",'a.datec'=>'Date','a.datevalid'=>'Date','a.tms'=>'Date','a.datefin'=>'Date','ta.rowid'=>'List:fk_adherent_type:libelle','ta.libelle'=>'Text','c.dateadh'=>'Date','c.cotisation'=>'Number');
|
$this->export_TypeFields_array[$r]=array('a.civilite'=>"Text",'a.lastname'=>"Text",'a.firstname'=>"Text",'a.login'=>"Text",'a.morphy'=>'Text','a.societe'=>'Text','a.address'=>"Text",'a.zip'=>"Text",'a.town'=>"Text",'a.country'=>"Text",'a.phone'=>"Text",'a.phone_perso'=>"Text",'a.phone_mobile'=>"Text",'a.email'=>"Text",'a.birth'=>"Date",'a.statut'=>"Status",'a.note'=>"Text",'a.datec'=>'Date','a.datevalid'=>'Date','a.tms'=>'Date','a.datefin'=>'Date','ta.rowid'=>'List:fk_adherent_type:libelle','ta.libelle'=>'Text','c.dateadh'=>'Date','c.cotisation'=>'Number');
|
||||||
$this->export_entities_array[$r]=array('a.rowid'=>'member','a.civilite'=>"member",'a.lastname'=>"member",'a.firstname'=>"member",'a.login'=>"member",'a.morphy'=>'member','a.societe'=>'member','a.address'=>"member",'a.zip'=>"member",'a.town'=>"member",'a.country'=>"member",'a.phone'=>"member",'a.phone_perso'=>"member",'a.phone_mobile'=>"member",'a.email'=>"member",'a.birth'=>"member",'a.statut'=>"member",'a.photo'=>"member",'a.note'=>"member",'a.datec'=>'member','a.datevalid'=>'member','a.tms'=>'member','a.datefin'=>'member','ta.rowid'=>'member_type','ta.libelle'=>'member_type','c.rowid'=>'subscription','c.dateadh'=>'subscription','c.cotisation'=>'subscription');
|
$this->export_entities_array[$r]=array('a.rowid'=>'member','a.civilite'=>"member",'a.lastname'=>"member",'a.firstname'=>"member",'a.login'=>"member",'a.morphy'=>'member','a.societe'=>'member','a.address'=>"member",'a.zip'=>"member",'a.town'=>"member",'a.country'=>"member",'a.phone'=>"member",'a.phone_perso'=>"member",'a.phone_mobile'=>"member",'a.email'=>"member",'a.birth'=>"member",'a.statut'=>"member",'a.photo'=>"member",'a.note'=>"member",'a.datec'=>'member','a.datevalid'=>'member','a.tms'=>'member','a.datefin'=>'member','ta.rowid'=>'member_type','ta.libelle'=>'member_type','c.rowid'=>'subscription','c.dateadh'=>'subscription','c.cotisation'=>'subscription');
|
||||||
// Add extra fields
|
// Add extra fields
|
||||||
$sql="SELECT name, label FROM ".MAIN_DB_PREFIX."extrafields WHERE elementtype = 'member' AND entity = ".$conf->entity;
|
$sql="SELECT name, label FROM ".MAIN_DB_PREFIX."extrafields WHERE elementtype = 'adherent' AND entity = ".$conf->entity;
|
||||||
$resql=$this->db->query($sql);
|
$resql=$this->db->query($sql);
|
||||||
while ($obj=$this->db->fetch_object($resql))
|
while ($obj=$this->db->fetch_object($resql))
|
||||||
{
|
{
|
||||||
@ -212,7 +212,7 @@ class modAdherent extends DolibarrModules
|
|||||||
$this->import_tables_creator_array[$r]=array('a'=>'fk_user_author'); // Fields to store import user id
|
$this->import_tables_creator_array[$r]=array('a'=>'fk_user_author'); // Fields to store import user id
|
||||||
$this->import_fields_array[$r]=array('a.civilite'=>"UserTitle",'a.lastname'=>"Lastname*",'a.firstname'=>"Firstname",'a.login'=>"Login*","a.pass"=>"Password","a.fk_adherent_type"=>"MemberType*",'a.morphy'=>'Nature*','a.societe'=>'Company','a.address'=>"Address",'a.zip'=>"Zip",'a.town'=>"Town",'a.country'=>"Country",'a.phone'=>"PhonePro",'a.phone_perso'=>"PhonePerso",'a.phone_mobile'=>"PhoneMobile",'a.email'=>"Email",'a.birth'=>"Birthday",'a.statut'=>"Status*",'a.photo'=>"Photo",'a.note'=>"Note",'a.datec'=>'DateCreation','a.datefin'=>'DateEndSubscription');
|
$this->import_fields_array[$r]=array('a.civilite'=>"UserTitle",'a.lastname'=>"Lastname*",'a.firstname'=>"Firstname",'a.login'=>"Login*","a.pass"=>"Password","a.fk_adherent_type"=>"MemberType*",'a.morphy'=>'Nature*','a.societe'=>'Company','a.address'=>"Address",'a.zip'=>"Zip",'a.town'=>"Town",'a.country'=>"Country",'a.phone'=>"PhonePro",'a.phone_perso'=>"PhonePerso",'a.phone_mobile'=>"PhoneMobile",'a.email'=>"Email",'a.birth'=>"Birthday",'a.statut'=>"Status*",'a.photo'=>"Photo",'a.note'=>"Note",'a.datec'=>'DateCreation','a.datefin'=>'DateEndSubscription');
|
||||||
// Add extra fields
|
// Add extra fields
|
||||||
$sql="SELECT name, label, fieldrequired FROM ".MAIN_DB_PREFIX."extrafields WHERE elementtype = 'member' AND entity = ".$conf->entity;
|
$sql="SELECT name, label, fieldrequired FROM ".MAIN_DB_PREFIX."extrafields WHERE elementtype = 'adherent' AND entity = ".$conf->entity;
|
||||||
$resql=$this->db->query($sql);
|
$resql=$this->db->query($sql);
|
||||||
if ($resql) // This can fail when class is used on old database (during migration for example)
|
if ($resql) // This can fail when class is used on old database (during migration for example)
|
||||||
{
|
{
|
||||||
|
|||||||
@ -267,33 +267,33 @@ class modSociete extends DolibarrModules
|
|||||||
$resql=$this->db->query($sql);
|
$resql=$this->db->query($sql);
|
||||||
if ($resql) // This can fail when class is used on old database (during migration for example)
|
if ($resql) // This can fail when class is used on old database (during migration for example)
|
||||||
{
|
{
|
||||||
while ($obj=$this->db->fetch_object($resql))
|
while ($obj=$this->db->fetch_object($resql))
|
||||||
{
|
{
|
||||||
$fieldname='extra.'.$obj->name;
|
$fieldname='extra.'.$obj->name;
|
||||||
$fieldlabel=ucfirst($obj->label);
|
$fieldlabel=ucfirst($obj->label);
|
||||||
$typeFilter="Text";
|
$typeFilter="Text";
|
||||||
switch($obj->type)
|
switch($obj->type)
|
||||||
{
|
{
|
||||||
case 'int':
|
case 'int':
|
||||||
case 'double':
|
case 'double':
|
||||||
case 'price':
|
case 'price':
|
||||||
$typeFilter="Numeric";
|
$typeFilter="Numeric";
|
||||||
break;
|
break;
|
||||||
case 'date':
|
case 'date':
|
||||||
case 'datetime':
|
case 'datetime':
|
||||||
$typeFilter="Date";
|
$typeFilter="Date";
|
||||||
break;
|
break;
|
||||||
case 'boolean':
|
case 'boolean':
|
||||||
$typeFilter="Boolean";
|
$typeFilter="Boolean";
|
||||||
break;
|
break;
|
||||||
case 'sellist':
|
case 'sellist':
|
||||||
$typeFilter="List:".$obj->param;
|
$typeFilter="List:".$obj->param;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
$this->export_fields_array[$r][$fieldname]=$fieldlabel;
|
$this->export_fields_array[$r][$fieldname]=$fieldlabel;
|
||||||
$this->export_TypeFields_array[$r][$fieldname]=$typeFilter;
|
$this->export_TypeFields_array[$r][$fieldname]=$typeFilter;
|
||||||
$this->export_entities_array[$r][$fieldname]='company';
|
$this->export_entities_array[$r][$fieldname]='company';
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
// End add axtra fields
|
// End add axtra fields
|
||||||
$this->export_sql_start[$r]='SELECT DISTINCT ';
|
$this->export_sql_start[$r]='SELECT DISTINCT ';
|
||||||
|
|||||||
@ -63,10 +63,12 @@ if((($type == 'select') || ($type == 'checkbox') ||(($type == 'radio'))) && is_a
|
|||||||
{
|
{
|
||||||
if(strlen($key))
|
if(strlen($key))
|
||||||
{
|
{
|
||||||
$param_chain .= $key.', '.$value."\n";
|
$param_chain .= $key.','.$value."\n";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}elseif ($type== 'sellist') {
|
}
|
||||||
|
elseif ($type== 'sellist')
|
||||||
|
{
|
||||||
$paramlist=array_keys($param['options']);
|
$paramlist=array_keys($param['options']);
|
||||||
$param_chain = $paramlist[0];
|
$param_chain = $paramlist[0];
|
||||||
}
|
}
|
||||||
|
|||||||
@ -558,7 +558,7 @@ if ($step == 2 && $datatoexport)
|
|||||||
{
|
{
|
||||||
// Selected fields
|
// Selected fields
|
||||||
print '<td> </td>';
|
print '<td> </td>';
|
||||||
print '<td align="center"><a href="'.$_SERVER["PHP_SELF"].'?step=2&datatoexport='.$datatoexport.'&action=unselectfield&field='.$code.'">'.img_left().'</a></td>';
|
print '<td align="center"><a href="'.$_SERVER["PHP_SELF"].'?step=2&datatoexport='.$datatoexport.'&action=unselectfield&field='.$code.'">'.img_left('default', 0, 'style="max-width: 20px"').'</a></td>';
|
||||||
print '<td>';
|
print '<td>';
|
||||||
//print $text.'-'.$htmltext."<br>";
|
//print $text.'-'.$htmltext."<br>";
|
||||||
print $form->textwithpicto($text,$htmltext);
|
print $form->textwithpicto($text,$htmltext);
|
||||||
@ -573,7 +573,7 @@ if ($step == 2 && $datatoexport)
|
|||||||
print $form->textwithpicto($text,$htmltext);
|
print $form->textwithpicto($text,$htmltext);
|
||||||
//print ' ('.$code.')';
|
//print ' ('.$code.')';
|
||||||
print '</td>';
|
print '</td>';
|
||||||
print '<td align="center"><a href="'.$_SERVER["PHP_SELF"].'?step=2&datatoexport='.$datatoexport.'&action=selectfield&field='.$code.'">'.img_right().'</a></td>';
|
print '<td align="center"><a href="'.$_SERVER["PHP_SELF"].'?step=2&datatoexport='.$datatoexport.'&action=selectfield&field='.$code.'">'.img_right('default', 0, 'style="max-width: 20px"').'</a></td>';
|
||||||
print '<td> </td>';
|
print '<td> </td>';
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -63,3 +63,7 @@ create table llx_propaldet_extrafields
|
|||||||
ALTER TABLE llx_propaldet_extrafields ADD INDEX idx_propaldet_extrafields (fk_object);
|
ALTER TABLE llx_propaldet_extrafields ADD INDEX idx_propaldet_extrafields (fk_object);
|
||||||
|
|
||||||
|
|
||||||
|
DROP table llx_adherent_options;
|
||||||
|
DROP table llx_adherent_options_label;
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -1452,9 +1452,8 @@ function top_menu($head, $title='', $target='', $disablejs=0, $disablehead=0, $a
|
|||||||
|
|
||||||
if (! empty($conf->use_javascript_ajax) && ! empty($conf->global->MAIN_MENU_USE_JQUERY_LAYOUT)) print "</div><!-- End top layout -->\n";
|
if (! empty($conf->use_javascript_ajax) && ! empty($conf->global->MAIN_MENU_USE_JQUERY_LAYOUT)) print "</div><!-- End top layout -->\n";
|
||||||
|
|
||||||
print "<!-- End top horizontal menu -->\n";
|
print "<!-- End top horizontal menu -->\n\n";
|
||||||
|
|
||||||
//XXX if (empty($conf->use_javascript_ajax) || empty($conf->global->MAIN_MENU_USE_JQUERY_LAYOUT)) print '<table width="100%" class="notopnoleftnoright" summary="leftmenutable" id="undertopmenu"><tr>';
|
|
||||||
if (empty($conf->dol_hide_leftmenu) && (empty($conf->use_javascript_ajax) || empty($conf->global->MAIN_MENU_USE_JQUERY_LAYOUT))) print '<div id="id-container">';
|
if (empty($conf->dol_hide_leftmenu) && (empty($conf->use_javascript_ajax) || empty($conf->global->MAIN_MENU_USE_JQUERY_LAYOUT))) print '<div id="id-container">';
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1486,7 +1485,6 @@ function left_menu($menu_array_before, $helppagename='', $moresearchform='', $me
|
|||||||
if (empty($conf->dol_hide_leftmenu))
|
if (empty($conf->dol_hide_leftmenu))
|
||||||
{
|
{
|
||||||
if (! empty($conf->use_javascript_ajax) && ! empty($conf->global->MAIN_MENU_USE_JQUERY_LAYOUT)) print "\n".'<div class="ui-layout-west"> <!-- Begin left layout -->'."\n";
|
if (! empty($conf->use_javascript_ajax) && ! empty($conf->global->MAIN_MENU_USE_JQUERY_LAYOUT)) print "\n".'<div class="ui-layout-west"> <!-- Begin left layout -->'."\n";
|
||||||
//XXX else print '<td class="vmenu" valign="top">';
|
|
||||||
else print '<div id="id-left">';
|
else print '<div id="id-left">';
|
||||||
|
|
||||||
print "\n";
|
print "\n";
|
||||||
@ -1545,7 +1543,7 @@ function left_menu($menu_array_before, $helppagename='', $moresearchform='', $me
|
|||||||
// Left column
|
// Left column
|
||||||
print '<!-- Begin left menu -->'."\n";
|
print '<!-- Begin left menu -->'."\n";
|
||||||
|
|
||||||
print '<div class="vmenu">'."\n";
|
print '<div class="vmenu">'."\n\n";
|
||||||
|
|
||||||
$menumanager->menu_array = $menu_array_before;
|
$menumanager->menu_array = $menu_array_before;
|
||||||
$menumanager->menu_array_after = $menu_array_after;
|
$menumanager->menu_array_after = $menu_array_after;
|
||||||
|
|||||||
@ -82,6 +82,42 @@ if ($action == 'convert')
|
|||||||
$ret=$objectstatic->fetch($obj->rowid);
|
$ret=$objectstatic->fetch($obj->rowid);
|
||||||
if ($ret > 0)
|
if ($ret > 0)
|
||||||
{
|
{
|
||||||
|
$ret=0; $retm=0; $updatelevel1=false;
|
||||||
|
|
||||||
|
// Update multiprice
|
||||||
|
$listofmulti=array_reverse($objectstatic->multiprices, true); // To finish with level 1
|
||||||
|
foreach ($listofmulti as $level => $multiprices)
|
||||||
|
{
|
||||||
|
$price_base_type = $objectstatic->multiprices_base_type[$level]; // Get price_base_type of product/service to keep the same for update
|
||||||
|
if (empty($price_base_type)) continue; // Discard not defined price levels
|
||||||
|
|
||||||
|
if ($price_base_type == 'TTC')
|
||||||
|
{
|
||||||
|
$newprice=price2num($objectstatic->multiprices_ttc[$level],'MU'); // Second param must be MU (we want a unit price so 'MU'. If unit price was on 4 decimal, we must keep 4 decimals)
|
||||||
|
$newminprice=$objectstatic->multiprices_min_ttc[$level];
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
$newprice=price2num($objectstatic->multiprices[$level],'MU'); // Second param must be MU (we want a unit price so 'MU'. If unit price was on 4 decimal, we must keep 4 decimals)
|
||||||
|
$newminprice=$objectstatic->multiprices_min[$level];
|
||||||
|
}
|
||||||
|
if ($newminprice > $newprice) $newminprice=$newprice;
|
||||||
|
$newvat=str_replace('*','',$newvatrate);
|
||||||
|
$newnpr=$objectstatic->multiprices_recuperableonly[$level];
|
||||||
|
$newlevel=$level;
|
||||||
|
|
||||||
|
//print "$objectstatic->id $newprice, $price_base_type, $newvat, $newminprice, $newlevel, $newnpr<br>\n";
|
||||||
|
$retm=$objectstatic->updatePrice($newprice, $price_base_type, $user, $newvat, $newminprice, $newlevel, $newnpr);
|
||||||
|
if ($retm < 0)
|
||||||
|
{
|
||||||
|
$error++;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
if ($newlevel == 1) $updatelevel1=true;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Update single price
|
||||||
$price_base_type = $objectstatic->price_base_type; // Get price_base_type of product/service to keep the same for update
|
$price_base_type = $objectstatic->price_base_type; // Get price_base_type of product/service to keep the same for update
|
||||||
if ($price_base_type == 'TTC')
|
if ($price_base_type == 'TTC')
|
||||||
{
|
{
|
||||||
@ -97,13 +133,14 @@ if ($action == 'convert')
|
|||||||
$newvat=str_replace('*','',$newvatrate);
|
$newvat=str_replace('*','',$newvatrate);
|
||||||
$newnpr=$objectstatic->recuperableonly;
|
$newnpr=$objectstatic->recuperableonly;
|
||||||
$newlevel=0;
|
$newlevel=0;
|
||||||
|
if (! empty($price_base_type) && ! $updatelevel1)
|
||||||
|
{
|
||||||
|
//print "$objectstatic->id $newprice, $price_base_type, $newvat, $newminprice, $newlevel, $newnpr<br>\n";
|
||||||
|
$ret=$objectstatic->updatePrice($newprice, $price_base_type, $user, $newvat, $newminprice, $newlevel, $newnpr);
|
||||||
|
}
|
||||||
|
|
||||||
$ret=$objectstatic->updatePrice($objectstatic->id, $newprice, $price_base_type, $user, $newvat, $newminprice, $newlevel, $newnpr);
|
if ($ret < 0 || $retm < 0) $error++;
|
||||||
if ($ret < 0) $error++;
|
|
||||||
else $nbrecordsmodified++;
|
else $nbrecordsmodified++;
|
||||||
|
|
||||||
// FIXME Now update all price levels. Call $objectstatic->updatePrice( as many times than exisitng price_level
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
$i++;
|
$i++;
|
||||||
|
|||||||
@ -63,6 +63,7 @@ class Product extends CommonObject
|
|||||||
var $multiprices_ttc=array();
|
var $multiprices_ttc=array();
|
||||||
var $multiprices_base_type=array();
|
var $multiprices_base_type=array();
|
||||||
var $multiprices_tva_tx=array();
|
var $multiprices_tva_tx=array();
|
||||||
|
var $multiprices_recuperableonly=array();
|
||||||
//! Price by quantity arrays
|
//! Price by quantity arrays
|
||||||
var $price_by_qty;
|
var $price_by_qty;
|
||||||
var $prices_by_qty=array();
|
var $prices_by_qty=array();
|
||||||
@ -227,7 +228,6 @@ class Product extends CommonObject
|
|||||||
|
|
||||||
if (empty($this->status)) $this->status = 0;
|
if (empty($this->status)) $this->status = 0;
|
||||||
if (empty($this->status_buy)) $this->status_buy = 0;
|
if (empty($this->status_buy)) $this->status_buy = 0;
|
||||||
if (empty($this->finished)) $this->finished = 0;
|
|
||||||
|
|
||||||
$price_ht=0;
|
$price_ht=0;
|
||||||
$price_ttc=0;
|
$price_ttc=0;
|
||||||
@ -317,7 +317,7 @@ class Product extends CommonObject
|
|||||||
$sql.= ", ".$this->status;
|
$sql.= ", ".$this->status;
|
||||||
$sql.= ", ".$this->status_buy;
|
$sql.= ", ".$this->status_buy;
|
||||||
$sql.= ", '".$this->canvas."'";
|
$sql.= ", '".$this->canvas."'";
|
||||||
$sql.= ", ".$this->finished;
|
$sql.= ", ".((! isset($this->finished) || $this->finished < 0)?'null':$this->finished);
|
||||||
$sql.= ")";
|
$sql.= ")";
|
||||||
|
|
||||||
dol_syslog(get_class($this)."::Create sql=".$sql);
|
dol_syslog(get_class($this)."::Create sql=".$sql);
|
||||||
@ -436,7 +436,6 @@ class Product extends CommonObject
|
|||||||
if (empty($this->localtax1_tx)) $this->localtax1_tx = 0;
|
if (empty($this->localtax1_tx)) $this->localtax1_tx = 0;
|
||||||
if (empty($this->localtax2_tx)) $this->localtax2_tx = 0;
|
if (empty($this->localtax2_tx)) $this->localtax2_tx = 0;
|
||||||
|
|
||||||
if (empty($this->finished)) $this->finished = 0;
|
|
||||||
if (empty($this->country_id)) $this->country_id = 0;
|
if (empty($this->country_id)) $this->country_id = 0;
|
||||||
|
|
||||||
$this->accountancy_code_buy = trim($this->accountancy_code_buy);
|
$this->accountancy_code_buy = trim($this->accountancy_code_buy);
|
||||||
@ -454,7 +453,7 @@ class Product extends CommonObject
|
|||||||
|
|
||||||
$sql.= ",tosell = " . $this->status;
|
$sql.= ",tosell = " . $this->status;
|
||||||
$sql.= ",tobuy = " . $this->status_buy;
|
$sql.= ",tobuy = " . $this->status_buy;
|
||||||
$sql.= ",finished = " . ($this->finished<0 ? "null" : $this->finished);
|
$sql.= ",finished = " . ((! isset($this->finished) || $this->finished < 0) ? "null" : $this->finished);
|
||||||
$sql.= ",weight = " . ($this->weight!='' ? "'".$this->weight."'" : 'null');
|
$sql.= ",weight = " . ($this->weight!='' ? "'".$this->weight."'" : 'null');
|
||||||
$sql.= ",weight_units = " . ($this->weight_units!='' ? "'".$this->weight_units."'": 'null');
|
$sql.= ",weight_units = " . ($this->weight_units!='' ? "'".$this->weight_units."'": 'null');
|
||||||
$sql.= ",length = " . ($this->length!='' ? "'".$this->length."'" : 'null');
|
$sql.= ",length = " . ($this->length!='' ? "'".$this->length."'" : 'null');
|
||||||
@ -958,7 +957,6 @@ class Product extends CommonObject
|
|||||||
/**
|
/**
|
||||||
* Modify price of a product/Service
|
* Modify price of a product/Service
|
||||||
*
|
*
|
||||||
* @param int $id Id of product/service to change
|
|
||||||
* @param double $newprice New price
|
* @param double $newprice New price
|
||||||
* @param string $newpricebase HT or TTC
|
* @param string $newpricebase HT or TTC
|
||||||
* @param User $user Object user that make change
|
* @param User $user Object user that make change
|
||||||
@ -969,10 +967,12 @@ class Product extends CommonObject
|
|||||||
* @param int $newpsq 1 if it has price by quantity
|
* @param int $newpsq 1 if it has price by quantity
|
||||||
* @return int <0 if KO, >0 if OK
|
* @return int <0 if KO, >0 if OK
|
||||||
*/
|
*/
|
||||||
function updatePrice($id, $newprice, $newpricebase, $user, $newvat='',$newminprice='', $level=0, $newnpr=0, $newpsq=0)
|
function updatePrice($newprice, $newpricebase, $user, $newvat='',$newminprice='', $level=0, $newnpr=0, $newpsq=0)
|
||||||
{
|
{
|
||||||
global $conf,$langs;
|
global $conf,$langs;
|
||||||
|
|
||||||
|
$id=$this->id;
|
||||||
|
|
||||||
dol_syslog(get_class($this)."update_price id=".$id." newprice=".$newprice." newpricebase=".$newpricebase." newminprice=".$newminprice." level=".$level." npr=".$newnpr);
|
dol_syslog(get_class($this)."update_price id=".$id." newprice=".$newprice." newpricebase=".$newpricebase." newminprice=".$newminprice." level=".$level." npr=".$newnpr);
|
||||||
|
|
||||||
// Clean parameters
|
// Clean parameters
|
||||||
@ -1061,7 +1061,9 @@ class Product extends CommonObject
|
|||||||
// Price by quantity
|
// Price by quantity
|
||||||
$this->price_by_qty = $newpsq;
|
$this->price_by_qty = $newpsq;
|
||||||
|
|
||||||
$this->_log_price($user,$level);
|
$this->_log_price($user,$level); // Save price for level into table product_price
|
||||||
|
|
||||||
|
$this->level = $level; // Store level of price edited for trigger
|
||||||
|
|
||||||
// Appel des triggers
|
// Appel des triggers
|
||||||
include_once(DOL_DOCUMENT_ROOT . "/core/class/interfaces.class.php");
|
include_once(DOL_DOCUMENT_ROOT . "/core/class/interfaces.class.php");
|
||||||
@ -1195,7 +1197,7 @@ class Product extends CommonObject
|
|||||||
for ($i=1; $i <= $conf->global->PRODUIT_MULTIPRICES_LIMIT; $i++)
|
for ($i=1; $i <= $conf->global->PRODUIT_MULTIPRICES_LIMIT; $i++)
|
||||||
{
|
{
|
||||||
$sql = "SELECT price, price_ttc, price_min, price_min_ttc,";
|
$sql = "SELECT price, price_ttc, price_min, price_min_ttc,";
|
||||||
$sql.= " price_base_type, tva_tx, tosell, price_by_qty, rowid";
|
$sql.= " price_base_type, tva_tx, tosell, price_by_qty, rowid, recuperableonly";
|
||||||
$sql.= " FROM ".MAIN_DB_PREFIX."product_price";
|
$sql.= " FROM ".MAIN_DB_PREFIX."product_price";
|
||||||
$sql.= " WHERE price_level=".$i;
|
$sql.= " WHERE price_level=".$i;
|
||||||
$sql.= " AND fk_product = '".$this->id."'";
|
$sql.= " AND fk_product = '".$this->id."'";
|
||||||
@ -1212,6 +1214,7 @@ class Product extends CommonObject
|
|||||||
$this->multiprices_min_ttc[$i]=$result["price_min_ttc"];
|
$this->multiprices_min_ttc[$i]=$result["price_min_ttc"];
|
||||||
$this->multiprices_base_type[$i]=$result["price_base_type"];
|
$this->multiprices_base_type[$i]=$result["price_base_type"];
|
||||||
$this->multiprices_tva_tx[$i]=$result["tva_tx"];
|
$this->multiprices_tva_tx[$i]=$result["tva_tx"];
|
||||||
|
$this->multiprices_recuperableonly[$i]=$result["recuperableonly"];
|
||||||
|
|
||||||
// Price by quantity
|
// Price by quantity
|
||||||
$this->prices_by_qty[$i]=$result["price_by_qty"];
|
$this->prices_by_qty[$i]=$result["price_by_qty"];
|
||||||
|
|||||||
@ -313,7 +313,6 @@ if (empty($reshook))
|
|||||||
$object->ref = GETPOST('clone_ref');
|
$object->ref = GETPOST('clone_ref');
|
||||||
$object->status = 0;
|
$object->status = 0;
|
||||||
$object->status_buy = 0;
|
$object->status_buy = 0;
|
||||||
$object->finished = 1;
|
|
||||||
$object->id = null;
|
$object->id = null;
|
||||||
|
|
||||||
if ($object->check())
|
if ($object->check())
|
||||||
|
|||||||
@ -88,7 +88,7 @@ if ($action == 'update_price' && ! $_POST["cancel"] && ($user->rights->produit->
|
|||||||
$newpsq = empty($newpsq) ? 0 : $newpsq;
|
$newpsq = empty($newpsq) ? 0 : $newpsq;
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($object->updatePrice($object->id, $newprice, $newpricebase, $user, $newvat, $newprice_min, $level, $newnpr, $newpsq) > 0)
|
if ($object->updatePrice($newprice, $newpricebase, $user, $newvat, $newprice_min, $level, $newnpr, $newpsq) > 0)
|
||||||
{
|
{
|
||||||
$action = '';
|
$action = '';
|
||||||
$mesg = '<div class="ok">'.$langs->trans("RecordSaved").'</div>';
|
$mesg = '<div class="ok">'.$langs->trans("RecordSaved").'</div>';
|
||||||
@ -113,7 +113,7 @@ if ($action == 'activate_price_by_qty') { // Activating product price by quantit
|
|||||||
$result = $object->fetch($id);
|
$result = $object->fetch($id);
|
||||||
$level=GETPOST('level');
|
$level=GETPOST('level');
|
||||||
|
|
||||||
$object->updatePrice($object->id, 0, $object->price_base_type, $user, $object->tva_tx, 0, $level, $object->tva_npr, 1);
|
$object->updatePrice(0, $object->price_base_type, $user, $object->tva_tx, 0, $level, $object->tva_npr, 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($action == 'edit_price_by_qty') { // Edition d'un prix par quantité
|
if ($action == 'edit_price_by_qty') { // Edition d'un prix par quantité
|
||||||
@ -424,14 +424,16 @@ else
|
|||||||
print '</td></tr>';
|
print '</td></tr>';
|
||||||
|
|
||||||
// Price by quantity
|
// Price by quantity
|
||||||
if($conf->global->PRODUIT_CUSTOMER_PRICES_BY_QTY) {
|
if($conf->global->PRODUIT_CUSTOMER_PRICES_BY_QTY)
|
||||||
|
{
|
||||||
print '<tr><td>'.$langs->trans("PriceByQuantity");
|
print '<tr><td>'.$langs->trans("PriceByQuantity");
|
||||||
if($object->prices_by_qty[0] == 0) {
|
if($object->prices_by_qty[0] == 0) {
|
||||||
print ' <a href="'.$_SERVER['PHP_SELF'].'?id='.$object->id.'&action=activate_price_by_qty&level=1">'.$langs->trans("Activate");
|
print ' <a href="'.$_SERVER['PHP_SELF'].'?id='.$object->id.'&action=activate_price_by_qty&level=1">'.$langs->trans("Activate");
|
||||||
}
|
}
|
||||||
print '</td><td>';
|
print '</td><td>';
|
||||||
|
|
||||||
if($object->prices_by_qty[0] == 1) {
|
if ($object->prices_by_qty[0] == 1)
|
||||||
|
{
|
||||||
print '<table width="50%" class="noborder">';
|
print '<table width="50%" class="noborder">';
|
||||||
print '<tr class="liste_titre">';
|
print '<tr class="liste_titre">';
|
||||||
print '<td>'.$langs->trans("PriceByQuantityRange").'</td>';
|
print '<td>'.$langs->trans("PriceByQuantityRange").'</td>';
|
||||||
@ -440,7 +442,8 @@ else
|
|||||||
print '<td align="right">'.$langs->trans("Discount").'</td>';
|
print '<td align="right">'.$langs->trans("Discount").'</td>';
|
||||||
print '<td> </td>';
|
print '<td> </td>';
|
||||||
print '</tr>';
|
print '</tr>';
|
||||||
foreach ($object->prices_by_qty_list[0] as $ii=> $prices) {
|
foreach ($object->prices_by_qty_list[0] as $ii=> $prices)
|
||||||
|
{
|
||||||
if($action == 'edit_price_by_qty' && $rowid == $prices['rowid'] && ($user->rights->produit->creer || $user->rights->service->creer)) {
|
if($action == 'edit_price_by_qty' && $rowid == $prices['rowid'] && ($user->rights->produit->creer || $user->rights->service->creer)) {
|
||||||
print '<form action="'.$_SERVER["PHP_SELF"].'?id='.$object->id.'" method="POST">';
|
print '<form action="'.$_SERVER["PHP_SELF"].'?id='.$object->id.'" method="POST">';
|
||||||
print '<input type="hidden" name="action" value="update_price_by_qty">';
|
print '<input type="hidden" name="action" value="update_price_by_qty">';
|
||||||
@ -667,8 +670,8 @@ $sql.= " WHERE fk_product = ".$object->id;
|
|||||||
$sql.= " AND p.fk_user_author = u.rowid";
|
$sql.= " AND p.fk_user_author = u.rowid";
|
||||||
if (! empty($socid) && ! empty($conf->global->PRODUIT_MULTIPRICES)) $sql.= " AND p.price_level = ".$soc->price_level;
|
if (! empty($socid) && ! empty($conf->global->PRODUIT_MULTIPRICES)) $sql.= " AND p.price_level = ".$soc->price_level;
|
||||||
$sql.= " ORDER BY p.date_price DESC, p.price_level ASC";
|
$sql.= " ORDER BY p.date_price DESC, p.price_level ASC";
|
||||||
//$sql .= $db->plimit();
|
|
||||||
|
|
||||||
|
dol_syslog("sql=".$sql);
|
||||||
$result = $db->query($sql);
|
$result = $db->query($sql);
|
||||||
if ($result)
|
if ($result)
|
||||||
{
|
{
|
||||||
@ -680,7 +683,7 @@ if ($result)
|
|||||||
|
|
||||||
// Il doit au moins y avoir la ligne de prix initial.
|
// Il doit au moins y avoir la ligne de prix initial.
|
||||||
// On l'ajoute donc pour remettre a niveau (pb vieilles versions)
|
// On l'ajoute donc pour remettre a niveau (pb vieilles versions)
|
||||||
$object->updatePrice($object->id, $object->price, $object->price_base_type, $user, $newprice_min);
|
$object->updatePrice($object->price, $object->price_base_type, $user, $newprice_min);
|
||||||
|
|
||||||
$result = $db->query($sql);
|
$result = $db->query($sql);
|
||||||
$num = $db->num_rows($result);
|
$num = $db->num_rows($result);
|
||||||
|
|||||||
@ -1343,7 +1343,6 @@ class Project extends CommonObject
|
|||||||
*/
|
*/
|
||||||
function select_element($Tablename)
|
function select_element($Tablename)
|
||||||
{
|
{
|
||||||
global $db;
|
|
||||||
|
|
||||||
$projectkey="fk_projet";
|
$projectkey="fk_projet";
|
||||||
switch ($Tablename)
|
switch ($Tablename)
|
||||||
@ -1373,25 +1372,27 @@ class Project extends CommonObject
|
|||||||
}
|
}
|
||||||
$sql.= " ORDER BY ref DESC";
|
$sql.= " ORDER BY ref DESC";
|
||||||
|
|
||||||
dol_syslog("Project.Lib::select_element sql=".$sql);
|
dol_syslog(get_class($this).'::select_element sql='.$sql,LOG_DEBUG);
|
||||||
|
|
||||||
$resql=$db->query($sql);
|
$resql=$this->db->query($sql);
|
||||||
if ($resql)
|
if ($resql)
|
||||||
{
|
{
|
||||||
$num = $db->num_rows($resql);
|
$num = $this->db->num_rows($resql);
|
||||||
$i = 0;
|
$i = 0;
|
||||||
if ($num > 0)
|
if ($num > 0)
|
||||||
{
|
{
|
||||||
$sellist = '<select class="flat" name="elementselect">';
|
$sellist = '<select class="flat" name="elementselect">';
|
||||||
while ($i < $num)
|
while ($i < $num)
|
||||||
{
|
{
|
||||||
$obj = $db->fetch_object($resql);
|
$obj = $this->db->fetch_object($resql);
|
||||||
$sellist .='<option value="'.$obj->rowid.'">'.$obj->ref.'</option>';
|
$sellist .='<option value="'.$obj->rowid.'">'.$obj->ref.'</option>';
|
||||||
$i++;
|
$i++;
|
||||||
}
|
}
|
||||||
$sellist .='</select>';
|
$sellist .='</select>';
|
||||||
}
|
}
|
||||||
return $sellist ;
|
return $sellist ;
|
||||||
|
|
||||||
|
$this->db->free($resql);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1404,8 +1405,8 @@ class Project extends CommonObject
|
|||||||
*/
|
*/
|
||||||
function update_element($TableName, $ElementSelectId)
|
function update_element($TableName, $ElementSelectId)
|
||||||
{
|
{
|
||||||
global $db;
|
$sql="UPDATE ".MAIN_DB_PREFIX.$TableName;
|
||||||
$sql="update ".MAIN_DB_PREFIX.$TableName;
|
|
||||||
if ($TableName=="actioncomm")
|
if ($TableName=="actioncomm")
|
||||||
{
|
{
|
||||||
$sql.= " SET fk_project=".$this->id;
|
$sql.= " SET fk_project=".$this->id;
|
||||||
@ -1416,7 +1417,17 @@ class Project extends CommonObject
|
|||||||
$sql.= " SET fk_projet=".$this->id;
|
$sql.= " SET fk_projet=".$this->id;
|
||||||
$sql.= " WHERE rowid=".$ElementSelectId;
|
$sql.= " WHERE rowid=".$ElementSelectId;
|
||||||
}
|
}
|
||||||
$resql=$db->query($sql);
|
|
||||||
|
dol_syslog(get_class($this)."::update_element sql=" . $sql, LOG_DEBUG);
|
||||||
|
$resql=$this->db->query($sql);
|
||||||
|
if (!$resql) {
|
||||||
|
$this->error=$this->db->lasterror();
|
||||||
|
dol_syslog(get_class($this)."::update_element error : " . $this->error, LOG_ERR);
|
||||||
|
return -1;
|
||||||
|
}else {
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -46,8 +46,10 @@ if (! empty($conf->commande->enabled)) $langs->load("orders");
|
|||||||
if (! empty($conf->propal->enabled)) $langs->load("propal");
|
if (! empty($conf->propal->enabled)) $langs->load("propal");
|
||||||
if (! empty($conf->ficheinter->enabled)) $langs->load("interventions");
|
if (! empty($conf->ficheinter->enabled)) $langs->load("interventions");
|
||||||
|
|
||||||
$projectid=GETPOST('id');
|
$projectid=GETPOST('id','int');
|
||||||
$ref=GETPOST('ref');
|
$ref=GETPOST('ref','alpha');
|
||||||
|
$action=GETPOST('action','alpha');
|
||||||
|
|
||||||
if ($projectid == '' && $ref == '')
|
if ($projectid == '' && $ref == '')
|
||||||
{
|
{
|
||||||
dol_print_error('','Bad parameter');
|
dol_print_error('','Bad parameter');
|
||||||
@ -62,6 +64,8 @@ if ($ref)
|
|||||||
{
|
{
|
||||||
$project->fetch(0,$ref);
|
$project->fetch(0,$ref);
|
||||||
$projectid=$project->id;
|
$projectid=$project->id;
|
||||||
|
}else {
|
||||||
|
$project->fetch($projectid);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Security check
|
// Security check
|
||||||
@ -82,7 +86,7 @@ $form = new Form($db);
|
|||||||
$userstatic=new User($db);
|
$userstatic=new User($db);
|
||||||
|
|
||||||
$project = new Project($db);
|
$project = new Project($db);
|
||||||
$project->fetch($_GET["id"],$_GET["ref"]);
|
$project->fetch($projectid,$ref);
|
||||||
$project->societe->fetch($project->societe->id);
|
$project->societe->fetch($project->societe->id);
|
||||||
|
|
||||||
// To verify role of users
|
// To verify role of users
|
||||||
@ -191,7 +195,10 @@ if ($action=="addelement")
|
|||||||
{
|
{
|
||||||
$tablename = GETPOST("tablename");
|
$tablename = GETPOST("tablename");
|
||||||
$elementselectid = GETPOST("elementselect");
|
$elementselectid = GETPOST("elementselect");
|
||||||
$project->update_element($tablename, $elementselectid);
|
$result=$project->update_element($tablename, $elementselectid);
|
||||||
|
if ($result<0) {
|
||||||
|
setEventMessage($mailchimp->error,'errors');
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
foreach ($listofreferent as $key => $value)
|
foreach ($listofreferent as $key => $value)
|
||||||
|
|||||||
@ -469,7 +469,7 @@ foreach($mainmenuusedarray as $val)
|
|||||||
/* Login */
|
/* Login */
|
||||||
|
|
||||||
form#login {
|
form#login {
|
||||||
margin-top: 70px;
|
margin-top: <?php echo $dol_optimize_smallscreen?'30':'60' ?>px;
|
||||||
margin-bottom: 30px;
|
margin-bottom: 30px;
|
||||||
font-size: 13px;
|
font-size: 13px;
|
||||||
}
|
}
|
||||||
@ -2184,25 +2184,65 @@ div.ecmjqft {
|
|||||||
/* JMobile */
|
/* JMobile */
|
||||||
/* ============================================================================== */
|
/* ============================================================================== */
|
||||||
|
|
||||||
|
li.ui-li-divider .ui-link {
|
||||||
|
color: #FFF !important;
|
||||||
|
}
|
||||||
|
a.ui-link, a.ui-link:hover, .ui-btn:hover, span.ui-btn-text:hover, span.ui-btn-inner:hover {
|
||||||
|
text-decoration: none !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.ui-btn-inner {
|
||||||
|
padding-left: 10px;
|
||||||
|
padding-right: 10px;
|
||||||
|
/* white-space: normal; */ /* Warning, enable this break the truncate feature */
|
||||||
|
}
|
||||||
|
.ui-select .ui-btn-icon-right .ui-btn-inner {
|
||||||
|
padding-right: 36px;
|
||||||
|
}
|
||||||
|
.fiche .ui-controlgroup {
|
||||||
|
margin: 0px;
|
||||||
|
padding-bottom: 0px;
|
||||||
|
}
|
||||||
|
div.ui-controlgroup-controls div.tabsElem
|
||||||
|
{
|
||||||
|
margin-top: 2px;
|
||||||
|
}
|
||||||
|
div.ui-controlgroup-controls div.tabsElem a
|
||||||
|
{
|
||||||
|
-moz-box-shadow: 0 -3px 6px rgba(0,0,0,.2);
|
||||||
|
-webkit-box-shadow: 0 -3px 6px rgba(0,0,0,.2);
|
||||||
|
box-shadow: 0 -3px 6px rgba(0,0,0,.2);
|
||||||
|
border: none;
|
||||||
|
}
|
||||||
|
a.tab span.ui-btn-inner
|
||||||
|
{
|
||||||
|
border: none;
|
||||||
|
padding: 0;
|
||||||
|
}
|
||||||
|
|
||||||
.ui-body-c {
|
.ui-body-c {
|
||||||
border: none;
|
border: none;
|
||||||
text-shadow: none;
|
text-shadow: none;
|
||||||
}
|
}
|
||||||
|
.ui-link {
|
||||||
div.tabsElem a.ui-btn-corner-all {
|
color: rgb(<?php print $colortext; ?>) !important;
|
||||||
-webkit-border-bottom-left-radius: 0px;
|
|
||||||
-moz-border-radius-bottomleft: 0px;
|
|
||||||
border-bottom-left-radius: 0px;
|
|
||||||
-webkit-border-bottom-right-radius: 0px;
|
|
||||||
-moz-border-radius-bottomright: 0px;
|
|
||||||
border-bottom-right-radius: 0px;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.ui-btn-icon-left .ui-icon {
|
a.ui-link {
|
||||||
left: 8px;
|
word-wrap: break-word;
|
||||||
}
|
}
|
||||||
.ui-btn-icon-right .ui-icon {
|
|
||||||
right: 8px;
|
/* force wrap possible onto field overflow does not works */
|
||||||
|
.formdoc .ui-btn-inner
|
||||||
|
{
|
||||||
|
white-space: normal;
|
||||||
|
overflow: hidden;
|
||||||
|
text-overflow: hidden;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Warning: setting this may make screen not beeing refreshed after a combo selection */
|
||||||
|
.ui-body-c {
|
||||||
|
background: #fff;
|
||||||
}
|
}
|
||||||
|
|
||||||
div.ui-radio
|
div.ui-radio
|
||||||
@ -2216,6 +2256,7 @@ div.ui-radio
|
|||||||
position: static;
|
position: static;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
<?php
|
<?php
|
||||||
if (is_object($db)) $db->close();
|
if (is_object($db)) $db->close();
|
||||||
?>
|
?>
|
||||||
|
|||||||
@ -508,7 +508,7 @@ li.tmenu a.tmenudisabled {
|
|||||||
/* Login */
|
/* Login */
|
||||||
|
|
||||||
form#login {
|
form#login {
|
||||||
margin-top: 70px;
|
margin-top: <?php echo $dol_optimize_smallscreen?'30':'60' ?>px;
|
||||||
margin-bottom: 30px;
|
margin-bottom: 30px;
|
||||||
font-size: 13px;
|
font-size: 13px;
|
||||||
}
|
}
|
||||||
@ -2372,44 +2372,65 @@ div.ecmjqft {
|
|||||||
/* JMobile */
|
/* JMobile */
|
||||||
/* ============================================================================== */
|
/* ============================================================================== */
|
||||||
|
|
||||||
|
li.ui-li-divider .ui-link {
|
||||||
|
color: #FFF !important;
|
||||||
|
}
|
||||||
|
a.ui-link, a.ui-link:hover, .ui-btn:hover, span.ui-btn-text:hover, span.ui-btn-inner:hover {
|
||||||
|
text-decoration: none !important;
|
||||||
|
}
|
||||||
|
|
||||||
.ui-btn-inner {
|
.ui-btn-inner {
|
||||||
padding-left: 10px;
|
padding-left: 10px;
|
||||||
padding-right: 10px;
|
padding-right: 10px;
|
||||||
white-space: normal;
|
/* white-space: normal; */ /* Warning, enable this break the truncate feature */
|
||||||
}
|
}
|
||||||
|
.ui-select .ui-btn-icon-right .ui-btn-inner {
|
||||||
div.ui-controlgroup
|
padding-right: 36px;
|
||||||
|
}
|
||||||
|
.fiche .ui-controlgroup {
|
||||||
|
margin: 0px;
|
||||||
|
padding-bottom: 0px;
|
||||||
|
}
|
||||||
|
div.ui-controlgroup-controls div.tabsElem
|
||||||
{
|
{
|
||||||
height: auto;
|
margin-top: 2px;
|
||||||
background-image: none;
|
|
||||||
}
|
}
|
||||||
|
div.ui-controlgroup-controls div.tabsElem a
|
||||||
div.ui-controlgroup-controls div.tabsElem, div.ui-controlgroup-controls div.tabsElem a.tab
|
|
||||||
{
|
{
|
||||||
height: auto;
|
-moz-box-shadow: 0 -3px 6px rgba(0,0,0,.2);
|
||||||
|
-webkit-box-shadow: 0 -3px 6px rgba(0,0,0,.2);
|
||||||
|
box-shadow: 0 -3px 6px rgba(0,0,0,.2);
|
||||||
|
border: none;
|
||||||
}
|
}
|
||||||
|
|
||||||
a.tab span.ui-btn-inner
|
a.tab span.ui-btn-inner
|
||||||
{
|
{
|
||||||
border: none;
|
border: none;
|
||||||
padding: 0;
|
padding: 0;
|
||||||
}
|
}
|
||||||
div.tabs a.tab#active span.ui-btn-inner, div.tabs a.tab#active span.ui-btn-text, div.tabs a.tab span.ui-btn-inner, div.tabs a.tab span.ui-btn-text {
|
|
||||||
background-image: none;
|
|
||||||
color: #D45416;
|
|
||||||
height: auto;
|
|
||||||
}
|
|
||||||
|
|
||||||
.ui-body-c {
|
.ui-body-c {
|
||||||
border: none;
|
border: none;
|
||||||
text-shadow: none;
|
text-shadow: none;
|
||||||
}
|
}
|
||||||
|
.ui-link {
|
||||||
.ui-btn-icon-left .ui-icon {
|
color: rgb(<?php print $colortext; ?>) !important;
|
||||||
left: 8px;
|
|
||||||
}
|
}
|
||||||
.ui-btn-icon-right .ui-icon {
|
|
||||||
right: 8px;
|
a.ui-link {
|
||||||
|
word-wrap: break-word;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* force wrap possible onto field overflow does not works */
|
||||||
|
.formdoc .ui-btn-inner
|
||||||
|
{
|
||||||
|
white-space: normal;
|
||||||
|
overflow: hidden;
|
||||||
|
text-overflow: hidden;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Warning: setting this may make screen not beeing refreshed after a combo selection */
|
||||||
|
.ui-body-c {
|
||||||
|
background: #fff;
|
||||||
}
|
}
|
||||||
|
|
||||||
div.ui-radio
|
div.ui-radio
|
||||||
|
|||||||
@ -579,7 +579,7 @@ foreach($mainmenuusedarray as $val)
|
|||||||
/* Login */
|
/* Login */
|
||||||
|
|
||||||
form#login {
|
form#login {
|
||||||
margin-top: 70px;
|
margin-top: <?php echo $dol_optimize_smallscreen?'30':'60' ?>px;
|
||||||
margin-bottom: 30px;
|
margin-bottom: 30px;
|
||||||
font-size: 13px;
|
font-size: 13px;
|
||||||
}
|
}
|
||||||
@ -2281,38 +2281,65 @@ div.ecmjqft {
|
|||||||
/* JMobile */
|
/* JMobile */
|
||||||
/* ============================================================================== */
|
/* ============================================================================== */
|
||||||
|
|
||||||
.ui-body-c {
|
li.ui-li-divider .ui-link {
|
||||||
|
color: #FFF !important;
|
||||||
|
}
|
||||||
|
a.ui-link, a.ui-link:hover, .ui-btn:hover, span.ui-btn-text:hover, span.ui-btn-inner:hover {
|
||||||
|
text-decoration: none !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.ui-btn-inner {
|
||||||
|
padding-left: 10px;
|
||||||
|
padding-right: 10px;
|
||||||
|
/* white-space: normal; */ /* Warning, enable this break the truncate feature */
|
||||||
|
}
|
||||||
|
.ui-select .ui-btn-icon-right .ui-btn-inner {
|
||||||
|
padding-right: 36px;
|
||||||
|
}
|
||||||
|
.fiche .ui-controlgroup {
|
||||||
|
margin: 0px;
|
||||||
|
padding-bottom: 0px;
|
||||||
|
}
|
||||||
|
div.ui-controlgroup-controls div.tabsElem
|
||||||
|
{
|
||||||
|
margin-top: 2px;
|
||||||
|
}
|
||||||
|
div.ui-controlgroup-controls div.tabsElem a
|
||||||
|
{
|
||||||
|
-moz-box-shadow: 0 -3px 6px rgba(0,0,0,.2);
|
||||||
|
-webkit-box-shadow: 0 -3px 6px rgba(0,0,0,.2);
|
||||||
|
box-shadow: 0 -3px 6px rgba(0,0,0,.2);
|
||||||
border: none;
|
border: none;
|
||||||
text-shadow: none;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
div.ui-controlgroup
|
|
||||||
{
|
|
||||||
height: auto;
|
|
||||||
background-image: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
div.ui-controlgroup-controls div.tabsElem, div.ui-controlgroup-controls div.tabsElem a.tab
|
|
||||||
{
|
|
||||||
height: auto;
|
|
||||||
}
|
|
||||||
|
|
||||||
a.tab span.ui-btn-inner
|
a.tab span.ui-btn-inner
|
||||||
{
|
{
|
||||||
border: none;
|
border: none;
|
||||||
padding: 0;
|
padding: 0;
|
||||||
}
|
}
|
||||||
div.tabs a.tab#active span.ui-btn-inner, div.tabs a.tab#active span.ui-btn-text, div.tabs a.tab span.ui-btn-inner, div.tabs a.tab span.ui-btn-text {
|
|
||||||
background-image: none;
|
.ui-body-c {
|
||||||
color: #D45416;
|
border: none;
|
||||||
height: auto;
|
text-shadow: none;
|
||||||
|
}
|
||||||
|
.ui-link {
|
||||||
|
color: rgb(<?php print $colortext; ?>) !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
.ui-btn-icon-left .ui-icon {
|
a.ui-link {
|
||||||
left: 8px;
|
word-wrap: break-word;
|
||||||
}
|
}
|
||||||
.ui-btn-icon-right .ui-icon {
|
|
||||||
right: 8px;
|
/* force wrap possible onto field overflow does not works */
|
||||||
|
.formdoc .ui-btn-inner
|
||||||
|
{
|
||||||
|
white-space: normal;
|
||||||
|
overflow: hidden;
|
||||||
|
text-overflow: hidden;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Warning: setting this may make screen not beeing refreshed after a combo selection */
|
||||||
|
.ui-body-c {
|
||||||
|
background: #fff;
|
||||||
}
|
}
|
||||||
|
|
||||||
div.ui-radio
|
div.ui-radio
|
||||||
@ -2326,6 +2353,7 @@ div.ui-radio
|
|||||||
position: static;
|
position: static;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
<?php
|
<?php
|
||||||
if (is_object($db)) $db->close();
|
if (is_object($db)) $db->close();
|
||||||
?>
|
?>
|
||||||
|
|||||||
@ -903,7 +903,7 @@ font.vsmenudisabled { font-size:<?php print $fontsize ?>px; font-family: <?php p
|
|||||||
a.vsmenu:link, a.vsmenu:visited { color: #<?php echo $colortextmain; ?>; }
|
a.vsmenu:link, a.vsmenu:visited { color: #<?php echo $colortextmain; ?>; }
|
||||||
font.vsmenudisabledmargin { margin: 1px 1px 1px 8px; }
|
font.vsmenudisabledmargin { margin: 1px 1px 1px 8px; }
|
||||||
|
|
||||||
a.help:link, a.help:visited, a.help:hover, a.help:active { font-size:<?php print $fontsizesmaller ?>px; font-family: <?php print $fontlist ?>; text-align: <?php print $left; ?>; font-weight: normal; color: #666666; }
|
a.help:link, a.help:visited, a.help:hover, a.help:active { font-size:<?php print $fontsizesmaller ?>px; font-family: <?php print $fontlist ?>; text-align: <?php print $left; ?>; font-weight: normal; color: #666666; text-decoration: none; }
|
||||||
|
|
||||||
|
|
||||||
div.blockvmenupair, div.blockvmenuimpair, div.blockvmenubookmarks
|
div.blockvmenupair, div.blockvmenuimpair, div.blockvmenubookmarks
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<con:soapui-project name="Dolibarr" soapui-version="3.6.1" abortOnError="false" runType="SEQUENTIAL" resourceRoot="" xmlns:con="http://eviware.com/soapui/config"><con:settings/><con:interface xsi:type="con:WsdlInterface" wsaVersion="NONE" name="WebServicesDolibarrOtherBinding" type="wsdl" bindingName="{http://www.dolibarr.org/ns/}WebServicesDolibarrOtherBinding" soapVersion="1_1" anonymous="optional" definition="http://localhostdolibarr/dolibarrnew/webservices/server_other.php?wsdl" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><con:settings/><con:definitionCache type="TEXT" rootPart="http://localhostdolibarr/dolibarrnew/webservices/server_other.php?wsdl"><con:part><con:url>http://localhostdolibarr/dolibarrnew/webservices/server_other.php?wsdl</con:url><con:content><![CDATA[<definitions targetNamespace="http://www.dolibarr.org/ns/" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tns="http://www.dolibarr.org/ns/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns="http://schemas.xmlsoap.org/wsdl/">
|
<con:soapui-project name="Dolibarr" soapui-version="4.0.1" abortOnError="false" runType="SEQUENTIAL" resourceRoot="" xmlns:con="http://eviware.com/soapui/config"><con:settings/><con:interface xsi:type="con:WsdlInterface" wsaVersion="NONE" name="WebServicesDolibarrOtherBinding" type="wsdl" bindingName="{http://www.dolibarr.org/ns/}WebServicesDolibarrOtherBinding" soapVersion="1_1" anonymous="optional" definition="http://localhostdolibarr/dolibarrnew/webservices/server_other.php?wsdl" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><con:settings/><con:definitionCache type="TEXT" rootPart="http://localhostdolibarr/dolibarrnew/webservices/server_other.php?wsdl"><con:part><con:url>http://localhostdolibarr/dolibarrnew/webservices/server_other.php?wsdl</con:url><con:content><![CDATA[<definitions targetNamespace="http://www.dolibarr.org/ns/" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tns="http://www.dolibarr.org/ns/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns="http://schemas.xmlsoap.org/wsdl/">
|
||||||
<types>
|
<types>
|
||||||
<xsd:schema targetNamespace="http://www.dolibarr.org/ns/">
|
<xsd:schema targetNamespace="http://www.dolibarr.org/ns/">
|
||||||
<xsd:import namespace="http://schemas.xmlsoap.org/soap/encoding/"/>
|
<xsd:import namespace="http://schemas.xmlsoap.org/soap/encoding/"/>
|
||||||
@ -757,7 +757,7 @@
|
|||||||
<idthirdparty xsi:type="xsd:string">all</idthirdparty>
|
<idthirdparty xsi:type="xsd:string">all</idthirdparty>
|
||||||
</ns:getSupplierInvoicesForThirdParty>
|
</ns:getSupplierInvoicesForThirdParty>
|
||||||
</soapenv:Body>
|
</soapenv:Body>
|
||||||
</soapenv:Envelope>]]></con:request><con:jmsConfig JMSDeliveryMode="PERSISTENT"/><con:jmsPropertyConfig/><con:wsaConfig mustUnderstand="NONE" version="200508" action="http://www.dolibarr.org/ns/#getSupplierInvoicesForThirdParty"/><con:wsrmConfig version="1.2"/></con:call></con:operation></con:interface><con:interface xsi:type="con:WsdlInterface" wsaVersion="NONE" name="WebServicesDolibarrProductOrServiceBinding" type="wsdl" bindingName="{http://www.dolibarr.org/ns/}WebServicesDolibarrProductOrServiceBinding" soapVersion="1_1" anonymous="optional" definition="http://localhostdolibarr/dolibarrnew/webservices/server_productorservice.php?wsdl" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><con:settings/><con:definitionCache type="TEXT" rootPart="http://localhostdolibarr/dolibarrnew/webservices/server_productorservice.php?wsdl"><con:part><con:url>http://localhostdolibarr/dolibarrnew/webservices/server_productorservice.php?wsdl</con:url><con:content><![CDATA[<definitions targetNamespace="http://www.dolibarr.org/ns/" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tns="http://www.dolibarr.org/ns/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns="http://schemas.xmlsoap.org/wsdl/">
|
</soapenv:Envelope>]]></con:request><con:jmsConfig JMSDeliveryMode="PERSISTENT"/><con:jmsPropertyConfig/><con:wsaConfig mustUnderstand="NONE" version="200508" action="http://www.dolibarr.org/ns/#getSupplierInvoicesForThirdParty"/><con:wsrmConfig version="1.2"/></con:call></con:operation></con:interface><con:interface xsi:type="con:WsdlInterface" wsaVersion="NONE" name="WebServicesDolibarrProductOrServiceBinding" type="wsdl" bindingName="{http://www.dolibarr.org/ns/}WebServicesDolibarrProductOrServiceBinding" soapVersion="1_1" anonymous="optional" definition="http://localhost/dolibarr/htdocs/webservices/server_productorservice.php?wsdl" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><con:settings/><con:definitionCache type="TEXT" rootPart="http://localhost/dolibarr/htdocs/webservices/server_productorservice.php?wsdl"><con:part><con:url>http://localhost/dolibarr/htdocs/webservices/server_productorservice.php?wsdl</con:url><con:content><![CDATA[<definitions targetNamespace="http://www.dolibarr.org/ns/" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tns="http://www.dolibarr.org/ns/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns="http://schemas.xmlsoap.org/wsdl/">
|
||||||
<types>
|
<types>
|
||||||
<xsd:schema targetNamespace="http://www.dolibarr.org/ns/">
|
<xsd:schema targetNamespace="http://www.dolibarr.org/ns/">
|
||||||
<xsd:import namespace="http://schemas.xmlsoap.org/soap/encoding/"/>
|
<xsd:import namespace="http://schemas.xmlsoap.org/soap/encoding/"/>
|
||||||
@ -820,8 +820,8 @@
|
|||||||
</xsd:complexType>
|
</xsd:complexType>
|
||||||
<xsd:complexType name="image">
|
<xsd:complexType name="image">
|
||||||
<xsd:all>
|
<xsd:all>
|
||||||
<xsd:element name="original" type="xsd:string"/>
|
<xsd:element name="photo" type="xsd:string"/>
|
||||||
<xsd:element name="thumble" type="xsd:string"/>
|
<xsd:element name="photo_vignette" type="xsd:string"/>
|
||||||
<xsd:element name="imgWidth" type="xsd:string"/>
|
<xsd:element name="imgWidth" type="xsd:string"/>
|
||||||
<xsd:element name="imgHeight" type="xsd:string"/>
|
<xsd:element name="imgHeight" type="xsd:string"/>
|
||||||
</xsd:all>
|
</xsd:all>
|
||||||
@ -937,51 +937,106 @@
|
|||||||
</binding>
|
</binding>
|
||||||
<service name="WebServicesDolibarrProductOrService">
|
<service name="WebServicesDolibarrProductOrService">
|
||||||
<port name="WebServicesDolibarrProductOrServicePort" binding="tns:WebServicesDolibarrProductOrServiceBinding">
|
<port name="WebServicesDolibarrProductOrServicePort" binding="tns:WebServicesDolibarrProductOrServiceBinding">
|
||||||
<soap:address location="http://localhostdolibarr/dolibarrnew/webservices/server_productorservice.php"/>
|
<soap:address location="http://localhost/dolibarr/htdocs/webservices/server_productorservice.php"/>
|
||||||
</port>
|
</port>
|
||||||
</service>
|
</service>
|
||||||
</definitions>]]></con:content><con:type>http://schemas.xmlsoap.org/wsdl/</con:type></con:part></con:definitionCache><con:endpoints><con:endpoint>http://localhost/dolibarrnew/webservices/server_productorservice.php</con:endpoint><con:endpoint>http://localhostdolibarr/dolibarrnew/webservices/server_productorservice.php</con:endpoint></con:endpoints><con:operation isOneWay="false" action="http://www.dolibarr.org/ns/#createProductOrService" name="createProductOrService" bindingOperationName="createProductOrService" type="Request-Response" inputName="" receivesAttachments="false" sendsAttachments="false" anonymous="optional"><con:settings/><con:call name="Request 1"><con:settings><con:setting id="com.eviware.soapui.impl.wsdl.WsdlRequest@request-headers"><xml-fragment/></con:setting></con:settings><con:encoding>UTF-8</con:encoding><con:endpoint>http://localhostdolibarr/dolibarrnew/webservices/server_productorservice.php</con:endpoint><con:request><![CDATA[<soapenv:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns="http://www.dolibarr.org/ns/">
|
</definitions>]]></con:content><con:type>http://schemas.xmlsoap.org/wsdl/</con:type></con:part></con:definitionCache><con:endpoints><con:endpoint>http://localhost/dolibarrnew/webservices/server_productorservice.php</con:endpoint><con:endpoint>http://localhostdolibarr/dolibarrnew/webservices/server_productorservice.php</con:endpoint><con:endpoint>http://localhost/dolibarr/htdocs/webservices/server_productorservice.php</con:endpoint></con:endpoints><con:operation isOneWay="false" action="http://www.dolibarr.org/ns/#createProductOrService" name="createProductOrService" bindingOperationName="createProductOrService" type="Request-Response" inputName="" receivesAttachments="false" sendsAttachments="false" anonymous="optional"><con:settings/><con:call name="Request 1"><con:settings><con:setting id="com.eviware.soapui.impl.wsdl.WsdlRequest@request-headers"><xml-fragment/></con:setting></con:settings><con:encoding>UTF-8</con:encoding><con:endpoint>http://localhost/dolibarr/htdocs/webservices/server_productorservice.php</con:endpoint><con:request><![CDATA[<SOAP-ENV:Envelope SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/">
|
||||||
|
<SOAP-ENV:Body>
|
||||||
|
<ns8543:createProductOrService xmlns:ns8543="http://www.Dolibarr.org/ns/">
|
||||||
|
<authentication>
|
||||||
|
<dolibarrkey xsi:type="xsd:string">dolibarrkey</dolibarrkey>
|
||||||
|
<sourceapplication xsi:type="xsd:string">PRESTASHOP</sourceapplication>
|
||||||
|
<login xsi:type="xsd:string">admin</login>
|
||||||
|
<password xsi:type="xsd:string">admin</password>
|
||||||
|
<entity xsi:type="xsd:string"/>
|
||||||
|
</authentication>
|
||||||
|
<product>
|
||||||
|
<id xsi:type="xsd:string"/>
|
||||||
|
<ref xsi:type="xsd:string">aaa</ref>
|
||||||
|
<ref_ext xsi:type="xsd:string">aaa</ref_ext>
|
||||||
|
<type xsi:type="xsd:string">0</type>
|
||||||
|
<label xsi:type="xsd:string">Écouteurs à isolation sonore Shure SE210</label>
|
||||||
|
<description xsi:type="xsd:string">les couteurs isolation sonore ergonomiques et l gers offrent la reproduction audio la plus fid le en provenance de sources audio st r o portables ou de salon.</description>
|
||||||
|
<date_creation xsi:type="xsd:string">2013-03-06 09:24:51</date_creation>
|
||||||
|
<date_modification xsi:type="xsd:string">2013-03-06 09:24:51</date_modification>
|
||||||
|
<note xsi:type="xsd:string">imported from Prestashop</note>
|
||||||
|
<status_tobuy xsi:type="xsd:int">0</status_tobuy>
|
||||||
|
<status_tosell xsi:type="xsd:int">1</status_tosell>
|
||||||
|
<barcode xsi:type="xsd:string"/>
|
||||||
|
<barcode_type xsi:type="xsd:string">upc</barcode_type>
|
||||||
|
<country_id xsi:type="xsd:string"/>
|
||||||
|
<country_code xsi:type="xsd:string"/>
|
||||||
|
<customcode xsi:type="xsd:string"/>
|
||||||
|
<price_net xsi:type="xsd:string"/>
|
||||||
|
<price xsi:type="xsd:float">149</price>
|
||||||
|
<price_base_type xsi:type="xsd:string"/>
|
||||||
|
<stock_alert xsi:type="xsd:string"/>
|
||||||
|
<stock_real xsi:type="xsd:string">0</stock_real>
|
||||||
|
<stock_pmp xsi:type="xsd:string"/>
|
||||||
|
<canvas xsi:type="xsd:string"/>
|
||||||
|
<import_key xsi:type="xsd:string"/>
|
||||||
|
</product>
|
||||||
|
</ns8543:createProductOrService>
|
||||||
|
</SOAP-ENV:Body>
|
||||||
|
</SOAP-ENV:Envelope>]]></con:request><con:jmsConfig JMSDeliveryMode="PERSISTENT"/><con:jmsPropertyConfig/><con:wsaConfig mustUnderstand="NONE" version="200508" action="http://www.dolibarr.org/ns/#createProductOrService"/><con:wsrmConfig version="1.2"/></con:call><con:call name="Request 2"><con:settings/><con:encoding>UTF-8</con:encoding><con:endpoint>http://localhost/dolibarrnew/webservices/server_productorservice.php</con:endpoint><con:request><![CDATA[<soapenv:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns="http://www.dolibarr.org/ns/">
|
||||||
<soapenv:Header/>
|
<soapenv:Header/>
|
||||||
<soapenv:Body>
|
<soapenv:Body>
|
||||||
<ns:createProductOrService soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
|
<ns:createProductOrService soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
|
||||||
<authentication xsi:type="ns:authentication">
|
<authentication xsi:type="ns:authentication">
|
||||||
<!--You may enter the following 5 items in any order-->
|
<!--You may enter the following 5 items in any order-->
|
||||||
<dolibarrkey xsi:type="xsd:string">dolibarrkey</dolibarrkey>
|
<dolibarrkey xsi:type="xsd:string">?</dolibarrkey>
|
||||||
<sourceapplication xsi:type="xsd:string">aaa</sourceapplication>
|
<sourceapplication xsi:type="xsd:string">?</sourceapplication>
|
||||||
<login xsi:type="xsd:string">admin</login>
|
<login xsi:type="xsd:string">?</login>
|
||||||
<password xsi:type="xsd:string">admin</password>
|
<password xsi:type="xsd:string">?</password>
|
||||||
<entity xsi:type="xsd:string"/>
|
<entity xsi:type="xsd:string">?</entity>
|
||||||
</authentication>
|
</authentication>
|
||||||
<product xsi:type="ns:product">
|
<product xsi:type="ns:product">
|
||||||
<!--You may enter the following 24 items in any order-->
|
<!--You may enter the following 32 items in any order-->
|
||||||
<id xsi:type="xsd:string">?</id>
|
<id xsi:type="xsd:string">?</id>
|
||||||
<ref xsi:type="xsd:string">PPP</ref>
|
<ref xsi:type="xsd:string">?</ref>
|
||||||
<ref_ext xsi:type="xsd:string"/>
|
<ref_ext xsi:type="xsd:string">?</ref_ext>
|
||||||
<type xsi:type="xsd:string">1</type>
|
<type xsi:type="xsd:string">?</type>
|
||||||
<label xsi:type="xsd:string">PPP Label</label>
|
<label xsi:type="xsd:string">?</label>
|
||||||
<description xsi:type="xsd:string">Description of PPP</description>
|
<description xsi:type="xsd:string">?</description>
|
||||||
<date_creation xsi:type="xsd:dateTime">?</date_creation>
|
<date_creation xsi:type="xsd:dateTime">?</date_creation>
|
||||||
<date_modification xsi:type="xsd:dateTime">?</date_modification>
|
<date_modification xsi:type="xsd:dateTime">?</date_modification>
|
||||||
<note xsi:type="xsd:string">xxxxx</note>
|
<note xsi:type="xsd:string">?</note>
|
||||||
<status_tobuy xsi:type="xsd:string">?</status_tobuy>
|
<status_tobuy xsi:type="xsd:string">?</status_tobuy>
|
||||||
<status_tosell xsi:type="xsd:string">?</status_tosell>
|
<status_tosell xsi:type="xsd:string">?</status_tosell>
|
||||||
<barcode xsi:type="xsd:string">123456</barcode>
|
<barcode xsi:type="xsd:string">?</barcode>
|
||||||
<barcode_type xsi:type="xsd:string">?</barcode_type>
|
<barcode_type xsi:type="xsd:string">?</barcode_type>
|
||||||
<country_id xsi:type="xsd:string">?</country_id>
|
<country_id xsi:type="xsd:string">?</country_id>
|
||||||
<country_code xsi:type="xsd:string">FR</country_code>
|
<country_code xsi:type="xsd:string">?</country_code>
|
||||||
<customcode xsi:type="xsd:string">?</customcode>
|
<customcode xsi:type="xsd:string">?</customcode>
|
||||||
<price_net xsi:type="xsd:string">?</price_net>
|
<price_net xsi:type="xsd:string">?</price_net>
|
||||||
<price xsi:type="xsd:string">?</price>
|
<price xsi:type="xsd:string">?</price>
|
||||||
|
<price_min_net xsi:type="xsd:string">?</price_min_net>
|
||||||
|
<price_min xsi:type="xsd:string">?</price_min>
|
||||||
<price_base_type xsi:type="xsd:string">?</price_base_type>
|
<price_base_type xsi:type="xsd:string">?</price_base_type>
|
||||||
<stock_alert xsi:type="xsd:string">10</stock_alert>
|
<vat_rate xsi:type="xsd:string">?</vat_rate>
|
||||||
|
<vat_npr xsi:type="xsd:string">?</vat_npr>
|
||||||
|
<localtax1_tx xsi:type="xsd:string">?</localtax1_tx>
|
||||||
|
<localtax2_tx xsi:type="xsd:string">?</localtax2_tx>
|
||||||
|
<stock_alert xsi:type="xsd:string">?</stock_alert>
|
||||||
<stock_real xsi:type="xsd:string">?</stock_real>
|
<stock_real xsi:type="xsd:string">?</stock_real>
|
||||||
<stock_pmp xsi:type="xsd:string">?</stock_pmp>
|
<stock_pmp xsi:type="xsd:string">?</stock_pmp>
|
||||||
<canvas xsi:type="xsd:string">?</canvas>
|
<canvas xsi:type="xsd:string">?</canvas>
|
||||||
<import_key xsi:type="xsd:string">?</import_key>
|
<import_key xsi:type="xsd:string">?</import_key>
|
||||||
|
<dir xsi:type="xsd:string">?</dir>
|
||||||
|
<images xsi:type="ns:ImagesArray">
|
||||||
|
<!--Zero or more repetitions:-->
|
||||||
|
<image xsi:type="ns:image">
|
||||||
|
<!--You may enter the following 4 items in any order-->
|
||||||
|
<photo xsi:type="xsd:string">?</photo>
|
||||||
|
<photo_vignette xsi:type="xsd:string">?</photo_vignette>
|
||||||
|
<imgWidth xsi:type="xsd:string">?</imgWidth>
|
||||||
|
<imgHeight xsi:type="xsd:string">?</imgHeight>
|
||||||
|
</image>
|
||||||
|
</images>
|
||||||
</product>
|
</product>
|
||||||
</ns:createProductOrService>
|
</ns:createProductOrService>
|
||||||
</soapenv:Body>
|
</soapenv:Body>
|
||||||
</soapenv:Envelope>]]></con:request><con:jmsConfig JMSDeliveryMode="PERSISTENT"/><con:jmsPropertyConfig/><con:wsaConfig mustUnderstand="NONE" version="200508" action="http://www.dolibarr.org/ns/#createProductOrService"/><con:wsrmConfig version="1.2"/></con:call></con:operation><con:operation isOneWay="false" action="http://www.dolibarr.org/ns/#getProductOrService" name="getProductOrService" bindingOperationName="getProductOrService" type="Request-Response" inputName="" receivesAttachments="false" sendsAttachments="false" anonymous="optional"><con:settings/><con:call name="Request 1"><con:settings><con:setting id="com.eviware.soapui.impl.wsdl.WsdlRequest@request-headers"><xml-fragment/></con:setting></con:settings><con:encoding>UTF-8</con:encoding><con:endpoint>http://localhostdolibarr/dolibarrnew/webservices/server_productorservice.php</con:endpoint><con:request><![CDATA[<soapenv:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns="http://www.dolibarr.org/ns/">
|
</soapenv:Envelope>]]></con:request><con:jmsConfig JMSDeliveryMode="PERSISTENT"/><con:jmsPropertyConfig/><con:wsaConfig mustUnderstand="NONE" version="200508" action="http://www.dolibarr.org/ns/#createProductOrService"/><con:wsrmConfig version="1.2"/></con:call></con:operation><con:operation isOneWay="false" action="http://www.dolibarr.org/ns/#getProductOrService" name="getProductOrService" bindingOperationName="getProductOrService" type="Request-Response" inputName="" receivesAttachments="false" sendsAttachments="false" anonymous="optional"><con:settings/><con:call name="Request 1"><con:settings><con:setting id="com.eviware.soapui.impl.wsdl.WsdlRequest@request-headers"><xml-fragment/></con:setting></con:settings><con:encoding>UTF-8</con:encoding><con:endpoint>http://localhost/dolibarr/htdocs/webservices/server_productorservice.php</con:endpoint><con:request><![CDATA[<soapenv:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns="http://www.dolibarr.org/ns/">
|
||||||
<soapenv:Header/>
|
<soapenv:Header/>
|
||||||
<soapenv:Body>
|
<soapenv:Body>
|
||||||
<ns:getProductOrService soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
|
<ns:getProductOrService soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
|
||||||
@ -998,7 +1053,7 @@
|
|||||||
<ref_ext xsi:type="xsd:string"></ref_ext>
|
<ref_ext xsi:type="xsd:string"></ref_ext>
|
||||||
</ns:getProductOrService>
|
</ns:getProductOrService>
|
||||||
</soapenv:Body>
|
</soapenv:Body>
|
||||||
</soapenv:Envelope>]]></con:request><con:jmsConfig JMSDeliveryMode="PERSISTENT"/><con:jmsPropertyConfig/><con:wsaConfig mustUnderstand="NONE" version="200508" action="http://www.dolibarr.org/ns/#getProductOrService"/><con:wsrmConfig version="1.2"/></con:call><con:call name="Request 2"><con:settings><con:setting id="com.eviware.soapui.impl.wsdl.WsdlRequest@request-headers"><xml-fragment/></con:setting></con:settings><con:encoding>UTF-8</con:encoding><con:endpoint>http://localhostdolibarr/dolibarrnew/webservices/server_productorservice.php</con:endpoint><con:request><![CDATA[<soapenv:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns="http://www.dolibarr.org/ns/">
|
</soapenv:Envelope>]]></con:request><con:jmsConfig JMSDeliveryMode="PERSISTENT"/><con:jmsPropertyConfig/><con:wsaConfig mustUnderstand="NONE" version="200508" action="http://www.dolibarr.org/ns/#getProductOrService"/><con:wsrmConfig version="1.2"/></con:call><con:call name="Request 2"><con:settings><con:setting id="com.eviware.soapui.impl.wsdl.WsdlRequest@request-headers"><xml-fragment/></con:setting></con:settings><con:encoding>UTF-8</con:encoding><con:endpoint>http://localhost/dolibarr/htdocs/webservices/server_productorservice.php</con:endpoint><con:request><![CDATA[<soapenv:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns="http://www.dolibarr.org/ns/">
|
||||||
<soapenv:Header/>
|
<soapenv:Header/>
|
||||||
<soapenv:Body>
|
<soapenv:Body>
|
||||||
<ns:getProductOrService soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
|
<ns:getProductOrService soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
|
||||||
@ -1015,7 +1070,7 @@
|
|||||||
<ref_ext xsi:type="xsd:string">?</ref_ext>
|
<ref_ext xsi:type="xsd:string">?</ref_ext>
|
||||||
</ns:getProductOrService>
|
</ns:getProductOrService>
|
||||||
</soapenv:Body>
|
</soapenv:Body>
|
||||||
</soapenv:Envelope>]]></con:request><con:jmsConfig JMSDeliveryMode="PERSISTENT"/><con:jmsPropertyConfig/><con:wsaConfig mustUnderstand="NONE" version="200508" action="http://www.dolibarr.org/ns/#getProductOrService"/><con:wsrmConfig version="1.2"/></con:call></con:operation><con:operation isOneWay="false" action="http://www.dolibarr.org/ns/#getListOfProductsOrServices" name="getListOfProductsOrServices" bindingOperationName="getListOfProductsOrServices" type="Request-Response" inputName="" receivesAttachments="false" sendsAttachments="false" anonymous="optional"><con:settings/><con:call name="Request 1"><con:settings/><con:encoding>UTF-8</con:encoding><con:endpoint>http://localhostdolibarr/dolibarrnew/webservices/server_productorservice.php</con:endpoint><con:request><![CDATA[<soapenv:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns="http://www.dolibarr.org/ns/">
|
</soapenv:Envelope>]]></con:request><con:jmsConfig JMSDeliveryMode="PERSISTENT"/><con:jmsPropertyConfig/><con:wsaConfig mustUnderstand="NONE" version="200508" action="http://www.dolibarr.org/ns/#getProductOrService"/><con:wsrmConfig version="1.2"/></con:call></con:operation><con:operation isOneWay="false" action="http://www.dolibarr.org/ns/#getListOfProductsOrServices" name="getListOfProductsOrServices" bindingOperationName="getListOfProductsOrServices" type="Request-Response" inputName="" receivesAttachments="false" sendsAttachments="false" anonymous="optional"><con:settings/><con:call name="Request 1"><con:settings/><con:encoding>UTF-8</con:encoding><con:endpoint>http://localhost/dolibarr/htdocs/webservices/server_productorservice.php</con:endpoint><con:request><![CDATA[<soapenv:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns="http://www.dolibarr.org/ns/">
|
||||||
<soapenv:Header/>
|
<soapenv:Header/>
|
||||||
<soapenv:Body>
|
<soapenv:Body>
|
||||||
<ns:getListOfProductsOrServices soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
|
<ns:getListOfProductsOrServices soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
|
||||||
@ -1035,7 +1090,7 @@
|
|||||||
</filterproduct>
|
</filterproduct>
|
||||||
</ns:getListOfProductsOrServices>
|
</ns:getListOfProductsOrServices>
|
||||||
</soapenv:Body>
|
</soapenv:Body>
|
||||||
</soapenv:Envelope>]]></con:request><con:wsaConfig mustUnderstand="NONE" version="200508" action="http://www.dolibarr.org/ns/#getListOfProductsOrServices"/></con:call></con:operation><con:operation isOneWay="false" action="http://www.dolibarr.org/ns/#getProductsForCategory" name="getProductsForCategory" bindingOperationName="getProductsForCategory" type="Request-Response" inputName="" receivesAttachments="false" sendsAttachments="false" anonymous="optional"><con:settings/><con:call name="Request 1"><con:settings><con:setting id="com.eviware.soapui.impl.wsdl.WsdlRequest@request-headers"><xml-fragment/></con:setting></con:settings><con:encoding>UTF-8</con:encoding><con:endpoint>http://localhost/dolibarrnew/webservices/server_productorservice.php</con:endpoint><con:request><![CDATA[<soapenv:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns="http://www.dolibarr.org/ns/">
|
</soapenv:Envelope>]]></con:request><con:wsaConfig mustUnderstand="NONE" version="200508" action="http://www.dolibarr.org/ns/#getListOfProductsOrServices"/></con:call></con:operation><con:operation isOneWay="false" action="http://www.dolibarr.org/ns/#getProductsForCategory" name="getProductsForCategory" bindingOperationName="getProductsForCategory" type="Request-Response" inputName="" receivesAttachments="false" sendsAttachments="false" anonymous="optional"><con:settings/><con:call name="Request 1"><con:settings><con:setting id="com.eviware.soapui.impl.wsdl.WsdlRequest@request-headers"><xml-fragment/></con:setting></con:settings><con:encoding>UTF-8</con:encoding><con:endpoint>http://localhost/dolibarr/htdocs/webservices/server_productorservice.php</con:endpoint><con:request><![CDATA[<soapenv:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns="http://www.dolibarr.org/ns/">
|
||||||
<soapenv:Header/>
|
<soapenv:Header/>
|
||||||
<soapenv:Body>
|
<soapenv:Body>
|
||||||
<ns:getProductsForCategory soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
|
<ns:getProductsForCategory soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user