Merge branch 'develop' of git@github.com:Dolibarr/dolibarr.git into develop
This commit is contained in:
commit
fdf787fca4
@ -1,6 +1,6 @@
|
|||||||
<?php
|
<?php
|
||||||
/* Copyright (C) 2004-2011 Laurent Destailleur <eldy@users.sourceforge.net>
|
/* Copyright (C) 2004-2011 Laurent Destailleur <eldy@users.sourceforge.net>
|
||||||
* Copyright (C) 2005-2010 Regis Houssin <regis@dolibarr.fr>
|
* Copyright (C) 2005-2012 Regis Houssin <regis@dolibarr.fr>
|
||||||
*
|
*
|
||||||
* This program is free software; you can redistribute it and/or modify
|
* This program is free software; you can redistribute it and/or modify
|
||||||
* it under the terms of the GNU General Public License as published by
|
* it under the terms of the GNU General Public License as published by
|
||||||
@ -24,13 +24,17 @@
|
|||||||
|
|
||||||
require '../main.inc.php';
|
require '../main.inc.php';
|
||||||
require_once DOL_DOCUMENT_ROOT.'/core/lib/admin.lib.php';
|
require_once DOL_DOCUMENT_ROOT.'/core/lib/admin.lib.php';
|
||||||
|
require_once DOL_DOCUMENT_ROOT.'/core/lib/files.lib.php';
|
||||||
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formfile.class.php';
|
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formfile.class.php';
|
||||||
|
|
||||||
$langs->load("users");
|
$langs->load("users");
|
||||||
$langs->load("admin");
|
$langs->load("admin");
|
||||||
$langs->load("other");
|
$langs->load("other");
|
||||||
|
|
||||||
if (!$user->admin) accessforbidden();
|
if (! $user->admin)
|
||||||
|
accessforbidden();
|
||||||
|
|
||||||
|
$action=GETPOST('action','alpha');
|
||||||
|
|
||||||
$upload_dir=$conf->admin->dir_temp;
|
$upload_dir=$conf->admin->dir_temp;
|
||||||
|
|
||||||
@ -43,65 +47,75 @@ if (GETPOST('sendit') && ! empty($conf->global->MAIN_UPLOAD_DOC))
|
|||||||
{
|
{
|
||||||
require_once DOL_DOCUMENT_ROOT.'/core/lib/files.lib.php';
|
require_once DOL_DOCUMENT_ROOT.'/core/lib/files.lib.php';
|
||||||
|
|
||||||
dol_add_file_process($upload_dir,0,0);
|
dol_add_file_process($upload_dir, 0, 0, 'userfile');
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($_GET["action"] == 'activate_captcha')
|
if (preg_match('/set_(.*)/',$action,$reg))
|
||||||
{
|
{
|
||||||
dolibarr_set_const($db, "MAIN_SECURITY_ENABLECAPTCHA", '1','chaine',0,'',$conf->entity);
|
$code=$reg[1];
|
||||||
header("Location: security_other.php");
|
$value=(GETPOST($code) ? GETPOST($code) : 1);
|
||||||
exit;
|
if (dolibarr_set_const($db, $code, $value, 'chaine', 0, '', $conf->entity) > 0)
|
||||||
}
|
{
|
||||||
else if ($_GET["action"] == 'disable_captcha')
|
Header("Location: ".$_SERVER["PHP_SELF"]);
|
||||||
{
|
exit;
|
||||||
dolibarr_del_const($db, "MAIN_SECURITY_ENABLECAPTCHA",$conf->entity);
|
}
|
||||||
header("Location: security_other.php");
|
else
|
||||||
exit;
|
{
|
||||||
|
dol_print_error($db);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($_GET["action"] == 'activate_advancedperms')
|
else if (preg_match('/del_(.*)/',$action,$reg))
|
||||||
{
|
{
|
||||||
dolibarr_set_const($db, "MAIN_USE_ADVANCED_PERMS", '1','chaine',0,'',$conf->entity);
|
$code=$reg[1];
|
||||||
header("Location: security_other.php");
|
if (dolibarr_del_const($db, $code, $conf->entity) > 0)
|
||||||
exit;
|
{
|
||||||
}
|
Header("Location: ".$_SERVER["PHP_SELF"]);
|
||||||
else if ($_GET["action"] == 'disable_advancedperms')
|
exit;
|
||||||
{
|
}
|
||||||
dolibarr_del_const($db, "MAIN_USE_ADVANCED_PERMS",$conf->entity);
|
else
|
||||||
header("Location: security_other.php");
|
{
|
||||||
exit;
|
dol_print_error($db);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($_GET["action"] == 'MAIN_SESSION_TIMEOUT')
|
else if ($action == 'MAIN_SESSION_TIMEOUT')
|
||||||
{
|
{
|
||||||
if (! dolibarr_set_const($db, "MAIN_SESSION_TIMEOUT", $_POST["MAIN_SESSION_TIMEOUT"],'chaine',0,'',$conf->entity)) dol_print_error($db);
|
if (! dolibarr_set_const($db, "MAIN_SESSION_TIMEOUT", $_POST["MAIN_SESSION_TIMEOUT"],'chaine',0,'',$conf->entity)) dol_print_error($db);
|
||||||
else $mesg=$langs->trans("RecordModifiedSuccessfully");
|
else $mesg=$langs->trans("RecordModifiedSuccessfully");
|
||||||
}
|
}
|
||||||
|
else if ($action == 'MAIN_UPLOAD_DOC')
|
||||||
if ($_GET["action"] == 'MAIN_UPLOAD_DOC')
|
|
||||||
{
|
{
|
||||||
if (! dolibarr_set_const($db, 'MAIN_UPLOAD_DOC',$_POST["MAIN_UPLOAD_DOC"],'chaine',0,'',$conf->entity)) dol_print_error($db);
|
if (! dolibarr_set_const($db, 'MAIN_UPLOAD_DOC',$_POST["MAIN_UPLOAD_DOC"],'chaine',0,'',$conf->entity)) dol_print_error($db);
|
||||||
else $mesg=$langs->trans("RecordModifiedSuccessfully");
|
else $mesg=$langs->trans("RecordModifiedSuccessfully");
|
||||||
}
|
}
|
||||||
|
else if ($action == 'MAIN_UMASK')
|
||||||
if ($_GET["action"] == 'MAIN_UMASK')
|
|
||||||
{
|
{
|
||||||
if (! dolibarr_set_const($db, "MAIN_UMASK", $_POST["MAIN_UMASK"],'chaine',0,'',$conf->entity)) dol_print_error($db);
|
if (! dolibarr_set_const($db, "MAIN_UMASK", $_POST["MAIN_UMASK"],'chaine',0,'',$conf->entity)) dol_print_error($db);
|
||||||
else $mesg=$langs->trans("RecordModifiedSuccessfully");
|
else $mesg=$langs->trans("RecordModifiedSuccessfully");
|
||||||
}
|
}
|
||||||
|
else if ($action == 'MAIN_ANTIVIRUS_COMMAND')
|
||||||
if ($_GET["action"] == 'MAIN_ANTIVIRUS_COMMAND')
|
|
||||||
{
|
{
|
||||||
if (! dolibarr_set_const($db, "MAIN_ANTIVIRUS_COMMAND", $_POST["MAIN_ANTIVIRUS_COMMAND"],'chaine',0,'',$conf->entity)) dol_print_error($db);
|
if (! dolibarr_set_const($db, "MAIN_ANTIVIRUS_COMMAND", $_POST["MAIN_ANTIVIRUS_COMMAND"],'chaine',0,'',$conf->entity)) dol_print_error($db);
|
||||||
else $mesg=$langs->trans("RecordModifiedSuccessfully");
|
else $mesg=$langs->trans("RecordModifiedSuccessfully");
|
||||||
}
|
}
|
||||||
|
else if ($action == 'MAIN_ANTIVIRUS_PARAM')
|
||||||
if ($_GET["action"] == 'MAIN_ANTIVIRUS_PARAM')
|
|
||||||
{
|
{
|
||||||
if (! dolibarr_set_const($db, "MAIN_ANTIVIRUS_PARAM", $_POST["MAIN_ANTIVIRUS_PARAM"],'chaine',0,'',$conf->entity)) dol_print_error($db);
|
if (! dolibarr_set_const($db, "MAIN_ANTIVIRUS_PARAM", $_POST["MAIN_ANTIVIRUS_PARAM"],'chaine',0,'',$conf->entity)) dol_print_error($db);
|
||||||
else $mesg=$langs->trans("RecordModifiedSuccessfully");
|
else $mesg=$langs->trans("RecordModifiedSuccessfully");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Delete file
|
||||||
|
else if ($action == 'delete')
|
||||||
|
{
|
||||||
|
$langs->load("other");
|
||||||
|
$file = $conf->admin->dir_temp . '/' . GETPOST('urlfile'); // Do not use urldecode here ($_GET and $_REQUEST are already decoded by PHP).
|
||||||
|
$ret=dol_delete_file($file);
|
||||||
|
if ($ret) setEventMessage($langs->trans("FileWasRemoved", GETPOST('urlfile')));
|
||||||
|
else setEventMessage($langs->trans("ErrorFailToDeleteFile", GETPOST('urlfile')), 'errors');
|
||||||
|
Header('Location: '.$_SERVER["PHP_SELF"]);
|
||||||
|
exit;
|
||||||
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* View
|
* View
|
||||||
@ -168,14 +182,21 @@ print '<td colspan="3">'.$langs->trans("UseCaptchaCode").'</td>';
|
|||||||
print '<td align="right">';
|
print '<td align="right">';
|
||||||
if (function_exists("imagecreatefrompng"))
|
if (function_exists("imagecreatefrompng"))
|
||||||
{
|
{
|
||||||
if ($conf->global->MAIN_SECURITY_ENABLECAPTCHA == 0)
|
if (! empty($conf->use_javascript_ajax))
|
||||||
{
|
{
|
||||||
print '<a href="security_other.php?action=activate_captcha">'.img_picto($langs->trans("Disabled"),'switch_off').'</a>';
|
print ajax_constantonoff('MAIN_SECURITY_ENABLECAPTCHA');
|
||||||
}
|
}
|
||||||
if($conf->global->MAIN_SECURITY_ENABLECAPTCHA == 1)
|
else
|
||||||
{
|
{
|
||||||
print '<a href="security_other.php?action=disable_captcha">'.img_picto($langs->trans("Enabled"),'switch_on').'</a>';
|
if (empty($conf->global->MAIN_SECURITY_ENABLECAPTCHA))
|
||||||
}
|
{
|
||||||
|
print '<a href="'.$_SERVER['PHP_SELF'].'?action=set_MAIN_SECURITY_ENABLECAPTCHA">'.img_picto($langs->trans("Disabled"),'off').'</a>';
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
print '<a href="'.$_SERVER['PHP_SELF'].'?action=del_MAIN_SECURITY_ENABLECAPTCHA">'.img_picto($langs->trans("Enabled"),'on').'</a>';
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
@ -183,35 +204,34 @@ else
|
|||||||
$desc = $form->textwithpicto('',$langs->transnoentities("EnableGDLibraryDesc"),1,'warning');
|
$desc = $form->textwithpicto('',$langs->transnoentities("EnableGDLibraryDesc"),1,'warning');
|
||||||
print $desc;
|
print $desc;
|
||||||
}
|
}
|
||||||
print "</td>";
|
print '</td></tr>';
|
||||||
|
|
||||||
print "</td>";
|
|
||||||
print '</tr>';
|
|
||||||
|
|
||||||
// Enable advanced perms
|
// Enable advanced perms
|
||||||
$var=!$var;
|
$var=!$var;
|
||||||
print "<tr ".$bc[$var].">";
|
print "<tr ".$bc[$var].">";
|
||||||
print '<td colspan="3">'.$langs->trans("UseAdvancedPerms").'</td>';
|
print '<td colspan="3">'.$langs->trans("UseAdvancedPerms").'</td>';
|
||||||
print '<td align="right">';
|
print '<td align="right">';
|
||||||
if ($conf->global->MAIN_USE_ADVANCED_PERMS == 0)
|
if (! empty($conf->use_javascript_ajax))
|
||||||
{
|
{
|
||||||
print '<a href="security_other.php?action=activate_advancedperms">'.img_picto($langs->trans("Disabled"),'switch_off').'</a>';
|
print ajax_constantonoff('MAIN_USE_ADVANCED_PERMS');
|
||||||
}
|
}
|
||||||
if($conf->global->MAIN_USE_ADVANCED_PERMS == 1)
|
else
|
||||||
{
|
{
|
||||||
print '<a href="security_other.php?action=disable_advancedperms">'.img_picto($langs->trans("Enabled"),'switch_on').'</a>';
|
if (empty($conf->global->MAIN_USE_ADVANCED_PERMS))
|
||||||
|
{
|
||||||
|
print '<a href="'.$_SERVER['PHP_SELF'].'?action=set_MAIN_USE_ADVANCED_PERMS">'.img_picto($langs->trans("Disabled"),'off').'</a>';
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
print '<a href="'.$_SERVER['PHP_SELF'].'?action=del_MAIN_USE_ADVANCED_PERMS">'.img_picto($langs->trans("Enabled"),'on').'</a>';
|
||||||
|
}
|
||||||
}
|
}
|
||||||
print "</td>";
|
print "</td></tr>";
|
||||||
|
|
||||||
print "</td>";
|
|
||||||
print '</tr>';
|
|
||||||
|
|
||||||
print '</table>';
|
print '</table>';
|
||||||
|
|
||||||
|
|
||||||
print '<br>';
|
print '<br>';
|
||||||
|
|
||||||
|
|
||||||
// Upload options
|
// Upload options
|
||||||
$var=false;
|
$var=false;
|
||||||
|
|
||||||
@ -274,7 +294,7 @@ if (ini_get('safe_mode') && ! empty($conf->global->MAIN_ANTIVIRUS_COMMAND))
|
|||||||
dol_syslog("safe_mode is on, basedir is ".$basedir.", safe_mode_exec_dir is ".ini_get('safe_mode_exec_dir'), LOG_WARNING);
|
dol_syslog("safe_mode is on, basedir is ".$basedir.", safe_mode_exec_dir is ".ini_get('safe_mode_exec_dir'), LOG_WARNING);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
print '<input type="text" name="MAIN_ANTIVIRUS_COMMAND" size="72" value="'.htmlentities($conf->global->MAIN_ANTIVIRUS_COMMAND).'">';
|
print '<input type="text" name="MAIN_ANTIVIRUS_COMMAND" size="72" value="'.(! empty($conf->global->MAIN_ANTIVIRUS_COMMAND)?dol_htmlentities($conf->global->MAIN_ANTIVIRUS_COMMAND):'').'">';
|
||||||
print "</td>";
|
print "</td>";
|
||||||
print '<td align="right">';
|
print '<td align="right">';
|
||||||
print '<input type="submit" class="button" name="button" value="'.$langs->trans("Modify").'">';
|
print '<input type="submit" class="button" name="button" value="'.$langs->trans("Modify").'">';
|
||||||
@ -291,7 +311,7 @@ print '<td colspan="2">'.$langs->trans("AntiVirusParam").'<br>';
|
|||||||
print $langs->trans("AntiVirusParamExample");
|
print $langs->trans("AntiVirusParamExample");
|
||||||
print '</td>';
|
print '</td>';
|
||||||
print '<td>';
|
print '<td>';
|
||||||
print '<input type="text" name="MAIN_ANTIVIRUS_PARAM" size="72" value="'.htmlentities($conf->global->MAIN_ANTIVIRUS_PARAM).'">';
|
print '<input type="text" name="MAIN_ANTIVIRUS_PARAM" size="72" value="'.(! empty($conf->global->MAIN_ANTIVIRUS_PARAM)?dol_htmlentities($conf->global->MAIN_ANTIVIRUS_PARAM):'').'">';
|
||||||
print "</td>";
|
print "</td>";
|
||||||
print '<td align="right">';
|
print '<td align="right">';
|
||||||
print '<input type="submit" class="button" name="button" value="'.$langs->trans("Modify").'">';
|
print '<input type="submit" class="button" name="button" value="'.$langs->trans("Modify").'">';
|
||||||
@ -301,19 +321,16 @@ print '</form>';
|
|||||||
|
|
||||||
print '</table>';
|
print '</table>';
|
||||||
|
|
||||||
print '</div>';
|
|
||||||
|
|
||||||
|
|
||||||
// Form to test upload
|
// Form to test upload
|
||||||
dol_htmloutput_mesg($mesg);
|
|
||||||
|
|
||||||
// Affiche formulaire upload
|
|
||||||
print '<br>';
|
print '<br>';
|
||||||
$formfile=new FormFile($db);
|
$formfile=new FormFile($db);
|
||||||
$formfile->form_attach_new_file(DOL_URL_ROOT.'/admin/security_other.php',$langs->trans("FormToTestFileUploadForm"),0,0,1);
|
$formfile->form_attach_new_file($_SERVER['PHP_SELF'], $langs->trans("FormToTestFileUploadForm"), 0, 0, 1);
|
||||||
|
|
||||||
|
// List of document
|
||||||
|
$filearray=dol_dir_list($upload_dir, "files", 0, '', '', 'name', SORT_ASC, 1);
|
||||||
|
$formfile->list_of_documents($filearray, '', 'admin_temp', '');
|
||||||
|
|
||||||
|
|
||||||
llxFooter();
|
llxFooter();
|
||||||
|
|
||||||
$db->close();
|
$db->close();
|
||||||
?>
|
?>
|
||||||
|
|||||||
@ -120,11 +120,11 @@ class ActionComm extends CommonObject
|
|||||||
if (empty($this->punctual)) $this->punctual = 0;
|
if (empty($this->punctual)) $this->punctual = 0;
|
||||||
if ($this->percentage > 100) $this->percentage = 100;
|
if ($this->percentage > 100) $this->percentage = 100;
|
||||||
if ($this->percentage == 100 && ! $this->dateend) $this->dateend = $this->date;
|
if ($this->percentage == 100 && ! $this->dateend) $this->dateend = $this->date;
|
||||||
if ($this->datep && $this->datef) $this->durationp=($this->datef - $this->datep);
|
if (! empty($this->datep) && ! empty($this->datef)) $this->durationp=($this->datef - $this->datep);
|
||||||
if ($this->date && $this->dateend) $this->durationa=($this->dateend - $this->date);
|
if (! empty($this->date) && ! empty($this->dateend)) $this->durationa=($this->dateend - $this->date);
|
||||||
if ($this->datep && $this->datef && $this->datep > $this->datef) $this->datef=$this->datep;
|
if (! empty($this->datep) && ! empty($this->datef) && $this->datep > $this->datef) $this->datef=$this->datep;
|
||||||
if ($this->date && $this->dateend && $this->date > $this->dateend) $this->dateend=$this->date;
|
if (! empty($this->date) && ! empty($this->dateend) && $this->date > $this->dateend) $this->dateend=$this->date;
|
||||||
if ($this->fk_project < 0) $this->fk_project = 0;
|
if (! isset($this->fk_project) || $this->fk_project < 0) $this->fk_project = 0;
|
||||||
if ($this->elementtype=='facture') $this->elementtype='invoice';
|
if ($this->elementtype=='facture') $this->elementtype='invoice';
|
||||||
if ($this->elementtype=='commande') $this->elementtype='order';
|
if ($this->elementtype=='commande') $this->elementtype='order';
|
||||||
if ($this->elementtype=='contrat') $this->elementtype='contract';
|
if ($this->elementtype=='contrat') $this->elementtype='contract';
|
||||||
@ -186,19 +186,19 @@ class ActionComm extends CommonObject
|
|||||||
$sql.= (strval($this->datef)!=''?"'".$this->db->idate($this->datef)."'":"null").",";
|
$sql.= (strval($this->datef)!=''?"'".$this->db->idate($this->datef)."'":"null").",";
|
||||||
//$sql.= (strval($this->date)!=''?"'".$this->db->idate($this->date)."'":"null").",";
|
//$sql.= (strval($this->date)!=''?"'".$this->db->idate($this->date)."'":"null").",";
|
||||||
//$sql.= (strval($this->dateend)!=''?"'".$this->db->idate($this->dateend)."'":"null").",";
|
//$sql.= (strval($this->dateend)!=''?"'".$this->db->idate($this->dateend)."'":"null").",";
|
||||||
$sql.= ($this->durationp >= 0 && $this->durationp != ''?"'".$this->durationp."'":"null").",";
|
$sql.= (isset($this->durationp) && $this->durationp >= 0 && $this->durationp != ''?"'".$this->durationp."'":"null").",";
|
||||||
//$sql.= ($this->durationa >= 0 && $this->durationa != ''?"'".$this->durationa."'":"null").",";
|
//$sql.= ($this->durationa >= 0 && $this->durationa != ''?"'".$this->durationa."'":"null").",";
|
||||||
$sql.= " '".$this->type_id."',";
|
$sql.= " '".$this->type_id."',";
|
||||||
$sql.= ($this->societe->id>0?" '".$this->societe->id."'":"null").",";
|
$sql.= (isset($this->societe->id) && $this->societe->id > 0?" '".$this->societe->id."'":"null").",";
|
||||||
$sql.= ($this->fk_project>0?" '".$this->fk_project."'":"null").",";
|
$sql.= (isset($this->fk_project) && $this->fk_project > 0?" '".$this->fk_project."'":"null").",";
|
||||||
$sql.= " '".$this->db->escape($this->note)."',";
|
$sql.= " '".$this->db->escape($this->note)."',";
|
||||||
$sql.= ($this->contact->id > 0?"'".$this->contact->id."'":"null").",";
|
$sql.= (isset($this->contact->id) && $this->contact->id > 0?"'".$this->contact->id."'":"null").",";
|
||||||
$sql.= ($user->id > 0 ? "'".$user->id."'":"null").",";
|
$sql.= (isset($user->id) && $user->id > 0 ? "'".$user->id."'":"null").",";
|
||||||
$sql.= ($this->usertodo->id > 0?"'".$this->usertodo->id."'":"null").",";
|
$sql.= (isset($this->usertodo->id) && $this->usertodo->id > 0?"'".$this->usertodo->id."'":"null").",";
|
||||||
$sql.= ($this->userdone->id > 0?"'".$this->userdone->id."'":"null").",";
|
$sql.= (isset($this->userdone->id) && $this->userdone->id > 0?"'".$this->userdone->id."'":"null").",";
|
||||||
$sql.= "'".$this->db->escape($this->label)."','".$this->percentage."','".$this->priority."','".$this->fulldayevent."','".$this->db->escape($this->location)."','".$this->punctual."',";
|
$sql.= "'".$this->db->escape($this->label)."','".$this->percentage."','".$this->priority."','".$this->fulldayevent."','".$this->db->escape($this->location)."','".$this->punctual."',";
|
||||||
$sql.= ($this->fk_element?$this->fk_element:"null").",";
|
$sql.= (! empty($this->fk_element)?$this->fk_element:"null").",";
|
||||||
$sql.= ($this->elementtype?"'".$this->elementtype."'":"null").",";
|
$sql.= (! empty($this->elementtype)?"'".$this->elementtype."'":"null").",";
|
||||||
$sql.= $conf->entity;
|
$sql.= $conf->entity;
|
||||||
$sql.= ")";
|
$sql.= ")";
|
||||||
|
|
||||||
|
|||||||
@ -1688,7 +1688,7 @@ class Facture extends CommonInvoice
|
|||||||
$result=$this->client->set_as_client();
|
$result=$this->client->set_as_client();
|
||||||
|
|
||||||
// Si active on decremente le produit principal et ses composants a la validation de facture
|
// Si active on decremente le produit principal et ses composants a la validation de facture
|
||||||
if ($this->type != 3 && $result >= 0 && $conf->stock->enabled && $conf->global->STOCK_CALCULATE_ON_BILL)
|
if ($this->type != 3 && $result >= 0 && ! empty($conf->stock->enabled) && ! empty($conf->global->STOCK_CALCULATE_ON_BILL))
|
||||||
{
|
{
|
||||||
require_once DOL_DOCUMENT_ROOT.'/product/stock/class/mouvementstock.class.php';
|
require_once DOL_DOCUMENT_ROOT.'/product/stock/class/mouvementstock.class.php';
|
||||||
$langs->load("agenda");
|
$langs->load("agenda");
|
||||||
|
|||||||
@ -30,6 +30,8 @@ if (! defined('NOREQUIRETRAN')) define('NOREQUIRETRAN','1');
|
|||||||
require '../../main.inc.php';
|
require '../../main.inc.php';
|
||||||
require_once DOL_DOCUMENT_ROOT.'/core/lib/admin.lib.php';
|
require_once DOL_DOCUMENT_ROOT.'/core/lib/admin.lib.php';
|
||||||
|
|
||||||
|
$action=GETPOST('action','alpha');
|
||||||
|
$name=GETPOST('name','alpha');
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* View
|
* View
|
||||||
@ -45,17 +47,16 @@ top_httphead();
|
|||||||
print '<!-- Ajax page called with url '.$_SERVER["PHP_SELF"].'?'.$_SERVER["QUERY_STRING"].' -->'."\n";
|
print '<!-- Ajax page called with url '.$_SERVER["PHP_SELF"].'?'.$_SERVER["QUERY_STRING"].' -->'."\n";
|
||||||
|
|
||||||
// Registering the location of boxes
|
// Registering the location of boxes
|
||||||
if ((isset($_GET['action']) && ! empty($_GET['action'])) && (isset($_GET['name']) && ! empty($_GET['name'])) )
|
if (! empty($action) && ! empty($name))
|
||||||
{
|
{
|
||||||
$entity = GETPOST('entity','int');
|
$entity = GETPOST('entity','int');
|
||||||
$action = GETPOST('action', 'alpha');
|
$value = (GETPOST('value')?GETPOST('value'):1);
|
||||||
$name = GETPOST('name', 'alpha');
|
|
||||||
|
|
||||||
if ($user->admin)
|
if ($user->admin)
|
||||||
{
|
{
|
||||||
if ($action == 'set')
|
if ($action == 'set')
|
||||||
{
|
{
|
||||||
dolibarr_set_const($db, $name, 1, 'chaine', 0, '', $entity);
|
dolibarr_set_const($db, $name, $value, 'chaine', 0, '', $entity);
|
||||||
}
|
}
|
||||||
else if ($action == 'del')
|
else if ($action == 'del')
|
||||||
{
|
{
|
||||||
|
|||||||
@ -1,8 +1,8 @@
|
|||||||
<?php
|
<?php
|
||||||
/* Copyright (C) 2003-2005 Rodolphe Quiedeville <rodolphe@quiedeville.org>
|
/* Copyright (C) 2003-2005 Rodolphe Quiedeville <rodolphe@quiedeville.org>
|
||||||
* Copyright (C) 2004-2010 Laurent Destailleur <eldy@users.sourceforge.net>
|
* Copyright (C) 2004-2010 Laurent Destailleur <eldy@users.sourceforge.net>
|
||||||
* Copyright (C) 2004 Eric Seigne <eric.seigne@ryxeo.com>
|
* Copyright (C) 2004 Eric Seigne <eric.seigne@ryxeo.com>
|
||||||
* Copyright (C) 2005-2007 Regis Houssin <regis@dolibarr.fr>
|
* Copyright (C) 2005-2012 Regis Houssin <regis@dolibarr.fr>
|
||||||
*
|
*
|
||||||
* This program is free software; you can redistribute it and/or modify
|
* This program is free software; you can redistribute it and/or modify
|
||||||
* it under the terms of the GNU General Public License as published by
|
* it under the terms of the GNU General Public License as published by
|
||||||
@ -50,11 +50,11 @@ abstract class CommonDocGenerator
|
|||||||
'myuser_lastname'=>$user->lastname,
|
'myuser_lastname'=>$user->lastname,
|
||||||
'myuser_firstname'=>$user->firstname,
|
'myuser_firstname'=>$user->firstname,
|
||||||
'myuser_login'=>$user->login,
|
'myuser_login'=>$user->login,
|
||||||
'myuser_phone'=>$user->officephone,
|
'myuser_phone'=>$user->office_phone,
|
||||||
'myuser_fax'=>$user->officefax,
|
'myuser_fax'=>$user->office_fax,
|
||||||
'myuser_mobile'=>$user->user_mobile,
|
'myuser_mobile'=>$user->user_mobile,
|
||||||
'myuser_email'=>$user->user_email,
|
'myuser_email'=>$user->email,
|
||||||
'myuser_web'=>$user->url
|
//'myuser_web'=>$user->url // FIXME url not exist in $user object
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -382,6 +382,9 @@ class Conf
|
|||||||
if (! isset($this->global->MAIN_MAX_DECIMALS_TOT)) $this->global->MAIN_MAX_DECIMALS_TOT=2;
|
if (! isset($this->global->MAIN_MAX_DECIMALS_TOT)) $this->global->MAIN_MAX_DECIMALS_TOT=2;
|
||||||
if (! isset($this->global->MAIN_MAX_DECIMALS_SHOWN)) $this->global->MAIN_MAX_DECIMALS_SHOWN=8;
|
if (! isset($this->global->MAIN_MAX_DECIMALS_SHOWN)) $this->global->MAIN_MAX_DECIMALS_SHOWN=8;
|
||||||
|
|
||||||
|
// Default max file size for upload
|
||||||
|
$this->maxfilesize = (! empty($this->global->MAIN_UPLOAD_DOC) ? $this->global->MAIN_UPLOAD_DOC * 1024 : 2097152);
|
||||||
|
|
||||||
// Timeouts
|
// Timeouts
|
||||||
if (empty($this->global->MAIN_USE_CONNECT_TIMEOUT)) $this->global->MAIN_USE_CONNECT_TIMEOUT=10;
|
if (empty($this->global->MAIN_USE_CONNECT_TIMEOUT)) $this->global->MAIN_USE_CONNECT_TIMEOUT=10;
|
||||||
if (empty($this->global->MAIN_USE_RESPONSE_TIMEOUT)) $this->global->MAIN_USE_RESPONSE_TIMEOUT=30;
|
if (empty($this->global->MAIN_USE_RESPONSE_TIMEOUT)) $this->global->MAIN_USE_RESPONSE_TIMEOUT=30;
|
||||||
|
|||||||
@ -1,9 +1,9 @@
|
|||||||
<?php
|
<?php
|
||||||
/* Copyright (C) 2001 Fabien Seisen <seisen@linuxfr.org>
|
/* Copyright (C) 2001 Fabien Seisen <seisen@linuxfr.org>
|
||||||
* Copyright (C) 2002-2007 Rodolphe Quiedeville <rodolphe@quiedeville.org>
|
* Copyright (C) 2002-2007 Rodolphe Quiedeville <rodolphe@quiedeville.org>
|
||||||
* Copyright (C) 2004-2011 Laurent Destailleur <eldy@users.sourceforge.net>
|
* Copyright (C) 2004-2011 Laurent Destailleur <eldy@users.sourceforge.net>
|
||||||
* Copyright (C) 2006 Andre Cianfarani <acianfa@free.fr>
|
* Copyright (C) 2006 Andre Cianfarani <acianfa@free.fr>
|
||||||
* Copyright (C) 2005-2009 Regis Houssin <regis@dolibarr.fr>
|
* Copyright (C) 2005-2012 Regis Houssin <regis@dolibarr.fr>
|
||||||
*
|
*
|
||||||
* This program is free software; you can redistribute it and/or modify
|
* This program is free software; you can redistribute it and/or modify
|
||||||
* it under the terms of the GNU General Public License as published by
|
* it under the terms of the GNU General Public License as published by
|
||||||
@ -714,10 +714,10 @@ class DoliDBMysql
|
|||||||
global $conf;
|
global $conf;
|
||||||
|
|
||||||
// Type of encryption (2: AES (recommended), 1: DES , 0: no encryption)
|
// Type of encryption (2: AES (recommended), 1: DES , 0: no encryption)
|
||||||
$cryptType = ($conf->db->dolibarr_main_db_encryption?$conf->db->dolibarr_main_db_encryption:0);
|
$cryptType = (isset($conf->db->dolibarr_main_db_encryption)?$conf->db->dolibarr_main_db_encryption:0);
|
||||||
|
|
||||||
//Encryption key
|
//Encryption key
|
||||||
$cryptKey = (!empty($conf->db->dolibarr_main_db_cryptkey)?$conf->db->dolibarr_main_db_cryptkey:'');
|
$cryptKey = (! empty($conf->db->dolibarr_main_db_cryptkey)?$conf->db->dolibarr_main_db_cryptkey:'');
|
||||||
|
|
||||||
$return = ($withQuotes?"'":"").$this->escape($fieldorvalue).($withQuotes?"'":"");
|
$return = ($withQuotes?"'":"").$this->escape($fieldorvalue).($withQuotes?"'":"");
|
||||||
|
|
||||||
|
|||||||
@ -1,9 +1,9 @@
|
|||||||
<?php
|
<?php
|
||||||
/* Copyright (C) 2001 Fabien Seisen <seisen@linuxfr.org>
|
/* Copyright (C) 2001 Fabien Seisen <seisen@linuxfr.org>
|
||||||
* Copyright (C) 2002-2005 Rodolphe Quiedeville <rodolphe@quiedeville.org>
|
* Copyright (C) 2002-2005 Rodolphe Quiedeville <rodolphe@quiedeville.org>
|
||||||
* Copyright (C) 2004-2011 Laurent Destailleur <eldy@users.sourceforge.net>
|
* Copyright (C) 2004-2011 Laurent Destailleur <eldy@users.sourceforge.net>
|
||||||
* Copyright (C) 2006 Andre Cianfarani <acianfa@free.fr>
|
* Copyright (C) 2006 Andre Cianfarani <acianfa@free.fr>
|
||||||
* Copyright (C) 2005-2009 Regis Houssin <regis@dolibarr.fr>
|
* Copyright (C) 2005-2012 Regis Houssin <regis@dolibarr.fr>
|
||||||
*
|
*
|
||||||
* This program is free software; you can redistribute it and/or modify
|
* This program is free software; you can redistribute it and/or modify
|
||||||
* it under the terms of the GNU General Public License as published by
|
* it under the terms of the GNU General Public License as published by
|
||||||
@ -709,10 +709,10 @@ class DoliDBMysqli
|
|||||||
global $conf;
|
global $conf;
|
||||||
|
|
||||||
// Type of encryption (2: AES (recommended), 1: DES , 0: no encryption)
|
// Type of encryption (2: AES (recommended), 1: DES , 0: no encryption)
|
||||||
$cryptType = ($conf->db->dolibarr_main_db_encryption?$conf->db->dolibarr_main_db_encryption:0);
|
$cryptType = (isset($conf->db->dolibarr_main_db_encryption)?$conf->db->dolibarr_main_db_encryption:0);
|
||||||
|
|
||||||
//Encryption key
|
//Encryption key
|
||||||
$cryptKey = (!empty($conf->db->dolibarr_main_db_cryptkey)?$conf->db->dolibarr_main_db_cryptkey:'');
|
$cryptKey = (! empty($conf->db->dolibarr_main_db_cryptkey)?$conf->db->dolibarr_main_db_cryptkey:'');
|
||||||
|
|
||||||
$return = ($withQuotes?"'":"").$this->escape($fieldorvalue).($withQuotes?"'":"");
|
$return = ($withQuotes?"'":"").$this->escape($fieldorvalue).($withQuotes?"'":"");
|
||||||
|
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
// Copyright (C) 2005-2010 Laurent Destailleur <eldy@users.sourceforge.net>
|
// Copyright (C) 2005-2010 Laurent Destailleur <eldy@users.sourceforge.net>
|
||||||
// Copyright (C) 2005-2009 Regis Houssin <regis@dolibarr.fr>
|
// Copyright (C) 2005-2012 Regis Houssin <regis@dolibarr.fr>
|
||||||
//
|
//
|
||||||
// This program is free software; you can redistribute it and/or modify
|
// This program is free software; you can redistribute it and/or modify
|
||||||
// it under the terms of the GNU General Public License as published by
|
// it under the terms of the GNU General Public License as published by
|
||||||
@ -627,8 +627,134 @@ function hideMessage(fieldId,message) {
|
|||||||
if (textbox.value == message) textbox.value = '';
|
if (textbox.value == message) textbox.value = '';
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
function setConstant(url, code, input, entity) {
|
||||||
|
$.get( url, {
|
||||||
|
action: "set",
|
||||||
|
name: code,
|
||||||
|
entity: entity
|
||||||
|
},
|
||||||
|
function() {
|
||||||
|
$("#set_" + code).hide();
|
||||||
|
$("#del_" + code).show();
|
||||||
|
$.each(input, function(type, data) {
|
||||||
|
// Enable another element
|
||||||
|
if (type == "disabled") {
|
||||||
|
$.each(data, function(key, value) {
|
||||||
|
$("#" + value).removeAttr("disabled");
|
||||||
|
if ($("#" + value).hasClass("butActionRefused") == true) {
|
||||||
|
$("#" + value).removeClass("butActionRefused");
|
||||||
|
$("#" + value).addClass("butAction");
|
||||||
|
}
|
||||||
|
});
|
||||||
|
// Show another element
|
||||||
|
} else if (type == "showhide" || type == "show") {
|
||||||
|
$.each(data, function(key, value) {
|
||||||
|
$("#" + value).show();
|
||||||
|
});
|
||||||
|
// Set another constant
|
||||||
|
} else if (type == "set") {
|
||||||
|
$.each(data, function(key, value) {
|
||||||
|
$("#set_" + key).hide();
|
||||||
|
$("#del_" + key).show();
|
||||||
|
$.get( url, {
|
||||||
|
action: "set",
|
||||||
|
name: key,
|
||||||
|
value: value,
|
||||||
|
entity: entity
|
||||||
|
});
|
||||||
|
});
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
function delConstant(url, code, input, entity) {
|
||||||
|
$.get( url, {
|
||||||
|
action: "del",
|
||||||
|
name: code,
|
||||||
|
entity: entity
|
||||||
|
},
|
||||||
|
function() {
|
||||||
|
$("#del_" + code).hide();
|
||||||
|
$("#set_" + code).show();
|
||||||
|
$.each(input, function(type, data) {
|
||||||
|
// Disable another element
|
||||||
|
if (type == "disabled") {
|
||||||
|
$.each(data, function(key, value) {
|
||||||
|
$("#" + value).attr("disabled", true);
|
||||||
|
if ($("#" + value).hasClass("butAction") == true) {
|
||||||
|
$("#" + value).removeClass("butAction");
|
||||||
|
$("#" + value).addClass("butActionRefused");
|
||||||
|
}
|
||||||
|
});
|
||||||
|
// Hide another element
|
||||||
|
} else if (type == "showhide" || type == "hide") {
|
||||||
|
$.each(data, function(key, value) {
|
||||||
|
$("#" + value).hide();
|
||||||
|
});
|
||||||
|
// Delete another constant
|
||||||
|
} else if (type == "del") {
|
||||||
|
$.each(data, function(key, value) {
|
||||||
|
$("#del_" + value).hide();
|
||||||
|
$("#set_" + value).show();
|
||||||
|
$.get( url, {
|
||||||
|
action: "del",
|
||||||
|
name: value,
|
||||||
|
entity: entity
|
||||||
|
});
|
||||||
|
});
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
function confirmConstantAction(action, url, code, input, box, entity, yesButton, noButton) {
|
||||||
|
$("#confirm_" + code)
|
||||||
|
.attr("title", box.title)
|
||||||
|
.html(box.content)
|
||||||
|
.dialog({
|
||||||
|
resizable: false,
|
||||||
|
height: 170,
|
||||||
|
width: 500,
|
||||||
|
modal: true,
|
||||||
|
buttons: [
|
||||||
|
{
|
||||||
|
text : yesButton,
|
||||||
|
click : function() {
|
||||||
|
if (action == "set") {
|
||||||
|
setConstant(url, code, input, entity);
|
||||||
|
} else if (action == "del") {
|
||||||
|
delConstant(url, code, input, entity);
|
||||||
|
}
|
||||||
|
// Close dialog
|
||||||
|
$(this).dialog("close");
|
||||||
|
// Execute another function
|
||||||
|
if (box.function) {
|
||||||
|
var fnName = box.function;
|
||||||
|
if (window.hasOwnProperty(fnName)) {
|
||||||
|
window[fnName]();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
text : noButton,
|
||||||
|
click : function() {
|
||||||
|
$(this).dialog("close");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
/* This is to allow to transform all select box into ajax autocomplete box
|
/* This is to allow to transform all select box into ajax autocomplete box
|
||||||
* with just one line: $(function() { $( "#listmotifcons" ).combobox(); });
|
* with just one line: $(function() { $( "#listmotifcons" ).combobox(); });
|
||||||
|
|||||||
@ -277,7 +277,7 @@ function ajax_dialog($title,$message,$w=350,$h=150)
|
|||||||
modal: true,
|
modal: true,
|
||||||
buttons: {
|
buttons: {
|
||||||
Ok: function() {
|
Ok: function() {
|
||||||
jQuery(this ).dialog(\'close\');
|
jQuery(this).dialog(\'close\');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
@ -346,11 +346,11 @@ function ajax_combobox($htmlname, $event=array())
|
|||||||
* On/off button for constant
|
* On/off button for constant
|
||||||
*
|
*
|
||||||
* @param string $code Name of constant
|
* @param string $code Name of constant
|
||||||
* @param array $input Input element
|
* @param array $input Input element (enable/disable or show/hide another element, set/del another constant)
|
||||||
* @param int $entity Entity to set
|
* @param int $entity Entity to set
|
||||||
* @return void
|
* @return void
|
||||||
*/
|
*/
|
||||||
function ajax_constantonoff($code,$input=array(),$entity=false)
|
function ajax_constantonoff($code, $input=array(), $entity=false)
|
||||||
{
|
{
|
||||||
global $conf, $langs;
|
global $conf, $langs;
|
||||||
|
|
||||||
@ -359,65 +359,33 @@ function ajax_constantonoff($code,$input=array(),$entity=false)
|
|||||||
$out= '<script type="text/javascript">
|
$out= '<script type="text/javascript">
|
||||||
$(function() {
|
$(function() {
|
||||||
var input = '.json_encode($input).';
|
var input = '.json_encode($input).';
|
||||||
|
var url = \''.DOL_URL_ROOT.'/core/ajax/constantonoff.php\';
|
||||||
|
var code = \''.$code.'\';
|
||||||
|
var entity = \''.$entity.'\';
|
||||||
|
var yesButton = "'.dol_escape_js($langs->transnoentities("Yes")).'";
|
||||||
|
var noButton = "'.dol_escape_js($langs->transnoentities("No")).'";
|
||||||
|
|
||||||
// Set constant
|
// Set constant
|
||||||
$("#set_'.$code.'").click(function() {
|
$("#set_" + code).click(function() {
|
||||||
$.get( "'.DOL_URL_ROOT.'/core/ajax/constantonoff.php", {
|
if (input.alert && input.alert.set) {
|
||||||
action: \'set\',
|
confirmConstantAction("set", url, code, input, input.alert.set, entity, yesButton, noButton);
|
||||||
name: \''.$code.'\',
|
} else {
|
||||||
entity: \''.$entity.'\'
|
setConstant(url, code, input, entity);
|
||||||
},
|
}
|
||||||
function() {
|
|
||||||
$("#set_'.$code.'").hide();
|
|
||||||
$("#del_'.$code.'").show();
|
|
||||||
// Enable another element
|
|
||||||
if (input.disabled && input.disabled.length > 0) {
|
|
||||||
$.each(input.disabled, function(key,value) {
|
|
||||||
$("#" + value).removeAttr("disabled");
|
|
||||||
if ($("#" + value).hasClass("butActionRefused") == true) {
|
|
||||||
$("#" + value).removeClass("butActionRefused");
|
|
||||||
$("#" + value).addClass("butAction");
|
|
||||||
}
|
|
||||||
});
|
|
||||||
// Show another element
|
|
||||||
} else if (input.showhide && input.showhide.length > 0) {
|
|
||||||
$.each(input.showhide, function(key,value) {
|
|
||||||
$("#" + value).show();
|
|
||||||
});
|
|
||||||
}
|
|
||||||
});
|
|
||||||
});
|
});
|
||||||
|
|
||||||
// Del constant
|
// Del constant
|
||||||
$("#del_'.$code.'").click(function() {
|
$("#del_" + code).click(function() {
|
||||||
$.get( "'.DOL_URL_ROOT.'/core/ajax/constantonoff.php", {
|
if (input.alert && input.alert.del) {
|
||||||
action: \'del\',
|
confirmConstantAction("del", url, code, input, input.alert.del, entity, yesButton, noButton);
|
||||||
name: \''.$code.'\',
|
} else {
|
||||||
entity: \''.$entity.'\'
|
delConstant(url, code, input, entity);
|
||||||
},
|
}
|
||||||
function() {
|
|
||||||
$("#del_'.$code.'").hide();
|
|
||||||
$("#set_'.$code.'").show();
|
|
||||||
// Disable another element
|
|
||||||
if (input.disabled && input.disabled.length > 0) {
|
|
||||||
$.each(input.disabled, function(key,value) {
|
|
||||||
$("#" + value).attr("disabled", true);
|
|
||||||
if ($("#" + value).hasClass("butAction") == true) {
|
|
||||||
$("#" + value).removeClass("butAction");
|
|
||||||
$("#" + value).addClass("butActionRefused");
|
|
||||||
}
|
|
||||||
});
|
|
||||||
// Hide another element
|
|
||||||
} else if (input.showhide && input.showhide.length > 0) {
|
|
||||||
$.each(input.showhide, function(key,value) {
|
|
||||||
$("#" + value).hide();
|
|
||||||
});
|
|
||||||
}
|
|
||||||
});
|
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
</script>';
|
</script>';
|
||||||
|
|
||||||
|
$out.= '<div id="confirm_'.$code.'" title="" style="display: none;"></div>';
|
||||||
$out.= '<span id="set_'.$code.'" class="linkobject '.(! empty($conf->global->$code)?'hideobject':'').'">'.img_picto($langs->trans("Disabled"),'switch_off').'</span>';
|
$out.= '<span id="set_'.$code.'" class="linkobject '.(! empty($conf->global->$code)?'hideobject':'').'">'.img_picto($langs->trans("Disabled"),'switch_off').'</span>';
|
||||||
$out.= '<span id="del_'.$code.'" class="linkobject '.(! empty($conf->global->$code)?'':'hideobject').'">'.img_picto($langs->trans("Enabled"),'switch_on').'</span>';
|
$out.= '<span id="del_'.$code.'" class="linkobject '.(! empty($conf->global->$code)?'':'hideobject').'">'.img_picto($langs->trans("Enabled"),'switch_on').'</span>';
|
||||||
|
|
||||||
|
|||||||
@ -1,10 +1,10 @@
|
|||||||
<?php
|
<?php
|
||||||
/* Copyright (C) 2006-2011 Laurent Destailleur <eldy@users.sourceforge.net>
|
/* Copyright (C) 2006-2011 Laurent Destailleur <eldy@users.sourceforge.net>
|
||||||
* Copyright (C) 2006 Rodolphe Quiedeville <rodolphe@quiedeville.org>
|
* Copyright (C) 2006 Rodolphe Quiedeville <rodolphe@quiedeville.org>
|
||||||
* Copyright (C) 2007 Patrick Raguin <patrick.raguin@gmail.com>
|
* Copyright (C) 2007 Patrick Raguin <patrick.raguin@gmail.com>
|
||||||
* Copyright (C) 2010-2011 Regis Houssin <regis@dolibarr.fr>
|
* Copyright (C) 2010-2012 Regis Houssin <regis@dolibarr.fr>
|
||||||
* Copyright (C) 2010 Juanjo Menent <jmenent@2byte.es>
|
* Copyright (C) 2010 Juanjo Menent <jmenent@2byte.es>
|
||||||
* Copyright (C) 2012 Christophe Battarel <christophe.battarel@altairis.fr>
|
* Copyright (C) 2012 Christophe Battarel <christophe.battarel@altairis.fr>
|
||||||
*
|
*
|
||||||
* This program is free software; you can redistribute it and/or modify
|
* This program is free software; you can redistribute it and/or modify
|
||||||
* it under the terms of the GNU General Public License as published by
|
* it under the terms of the GNU General Public License as published by
|
||||||
@ -43,10 +43,10 @@ function doc_getlinedesc($line,$outputlangs,$hideref=0,$hidedesc=0,$issupplierli
|
|||||||
global $db, $conf, $langs;
|
global $db, $conf, $langs;
|
||||||
|
|
||||||
$idprod=$line->fk_product;
|
$idprod=$line->fk_product;
|
||||||
$label=$line->label; if (empty($label)) $label=$line->libelle;
|
$label=(! empty($line->label)?$line->label:(! empty($line->libelle)?$line->libelle:''));
|
||||||
$desc=$line->desc; if (empty($desc)) $desc=$line->description;
|
$desc=(! empty($line->desc)?$line->desc:(! empty($line->description)?$line->description:''));
|
||||||
$ref_supplier=$line->ref_supplier; if (empty($ref_supplier)) $ref_supplier=$line->ref_fourn; // TODO Not yet saved for supplier invoices, only supplier orders
|
$ref_supplier=(! empty($line->ref_supplier)?$line->ref_supplier:(! empty($line->ref_fourn)?$line->ref_fourn:'')); // TODO Not yet saved for supplier invoices, only supplier orders
|
||||||
$note=$line->note;
|
$note=(! empty($line->note)?$line->note:'');
|
||||||
|
|
||||||
if ($issupplierline) $prodser = new ProductFournisseur($db);
|
if ($issupplierline) $prodser = new ProductFournisseur($db);
|
||||||
else $prodser = new Product($db);
|
else $prodser = new Product($db);
|
||||||
@ -55,7 +55,7 @@ function doc_getlinedesc($line,$outputlangs,$hideref=0,$hidedesc=0,$issupplierli
|
|||||||
{
|
{
|
||||||
$prodser->fetch($idprod);
|
$prodser->fetch($idprod);
|
||||||
// If a predefined product and multilang and on other lang, we renamed label with label translated
|
// If a predefined product and multilang and on other lang, we renamed label with label translated
|
||||||
if ($conf->global->MAIN_MULTILANGS && ($outputlangs->defaultlang != $langs->defaultlang))
|
if (! empty($conf->global->MAIN_MULTILANGS) && ($outputlangs->defaultlang != $langs->defaultlang))
|
||||||
{
|
{
|
||||||
if (! empty($prodser->multilangs[$outputlangs->defaultlang]["label"]) && $label == $prodser->label) $label=$prodser->multilangs[$outputlangs->defaultlang]["label"];
|
if (! empty($prodser->multilangs[$outputlangs->defaultlang]["label"]) && $label == $prodser->label) $label=$prodser->multilangs[$outputlangs->defaultlang]["label"];
|
||||||
if (! empty($prodser->multilangs[$outputlangs->defaultlang]["description"]) && $desc == $prodser->description) $desc=$prodser->multilangs[$outputlangs->defaultlang]["description"];
|
if (! empty($prodser->multilangs[$outputlangs->defaultlang]["description"]) && $desc == $prodser->description) $desc=$prodser->multilangs[$outputlangs->defaultlang]["description"];
|
||||||
@ -89,7 +89,8 @@ function doc_getlinedesc($line,$outputlangs,$hideref=0,$hidedesc=0,$issupplierli
|
|||||||
{
|
{
|
||||||
if ($idprod)
|
if ($idprod)
|
||||||
{
|
{
|
||||||
if ( empty($hidedesc) ) $libelleproduitservice.=$desc;
|
if (empty($hidedesc))
|
||||||
|
$libelleproduitservice.=$desc;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
@ -106,9 +107,9 @@ function doc_getlinedesc($line,$outputlangs,$hideref=0,$hidedesc=0,$issupplierli
|
|||||||
{
|
{
|
||||||
$prefix_prodserv = "";
|
$prefix_prodserv = "";
|
||||||
$ref_prodserv = "";
|
$ref_prodserv = "";
|
||||||
if ($conf->global->PRODUCT_ADD_TYPE_IN_DOCUMENTS) // In standard mode, we do not show this
|
if (! empty($conf->global->PRODUCT_ADD_TYPE_IN_DOCUMENTS)) // In standard mode, we do not show this
|
||||||
{
|
{
|
||||||
if($prodser->isservice())
|
if ($prodser->isservice())
|
||||||
{
|
{
|
||||||
$prefix_prodserv = $outputlangs->transnoentitiesnoconv("Service")." ";
|
$prefix_prodserv = $outputlangs->transnoentitiesnoconv("Service")." ";
|
||||||
}
|
}
|
||||||
@ -118,7 +119,7 @@ function doc_getlinedesc($line,$outputlangs,$hideref=0,$hidedesc=0,$issupplierli
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( empty($hideref) )
|
if (empty($hideref))
|
||||||
{
|
{
|
||||||
if ($issupplierline) $ref_prodserv = $prodser->ref.' ('.$outputlangs->trans("SupplierRef").' '.$ref_supplier.')'; // Show local ref and supplier ref
|
if ($issupplierline) $ref_prodserv = $prodser->ref.' ('.$outputlangs->trans("SupplierRef").' '.$ref_supplier.')'; // Show local ref and supplier ref
|
||||||
else $ref_prodserv = $prodser->ref; // Show local ref only
|
else $ref_prodserv = $prodser->ref; // Show local ref only
|
||||||
@ -130,7 +131,7 @@ function doc_getlinedesc($line,$outputlangs,$hideref=0,$hidedesc=0,$issupplierli
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($line->date_start || $line->date_end)
|
if (! empty($line->date_start) || ! empty($line->date_end))
|
||||||
{
|
{
|
||||||
$format='day';
|
$format='day';
|
||||||
// Show duration if exists
|
// Show duration if exists
|
||||||
|
|||||||
@ -139,12 +139,12 @@ function dol_dir_list($path, $types="all", $recursive=0, $filter="", $excludefil
|
|||||||
closedir($dir);
|
closedir($dir);
|
||||||
|
|
||||||
// Obtain a list of columns
|
// Obtain a list of columns
|
||||||
if ($sortcriteria)
|
if (! empty($sortcriteria))
|
||||||
{
|
{
|
||||||
$myarray=array();
|
$myarray=array();
|
||||||
foreach ($file_list as $key => $row)
|
foreach ($file_list as $key => $row)
|
||||||
{
|
{
|
||||||
$myarray[$key] = $row[$sortcriteria];
|
$myarray[$key] = (isset($row[$sortcriteria])?$row[$sortcriteria]:'');
|
||||||
}
|
}
|
||||||
// Sort the data
|
// Sort the data
|
||||||
if ($sortorder) array_multisort($myarray, $sortorder, $file_list);
|
if ($sortorder) array_multisort($myarray, $sortorder, $file_list);
|
||||||
|
|||||||
@ -3033,12 +3033,13 @@ function get_exdir($num,$level=3,$alpha=0,$withoutslash=0)
|
|||||||
/**
|
/**
|
||||||
* Creation of a directory (this can create recursive subdir)
|
* Creation of a directory (this can create recursive subdir)
|
||||||
*
|
*
|
||||||
* @param string $dir Directory to create (Separator must be '/'. Example: '/mydir/mysubdir')
|
* @param string $dir Directory to create (Separator must be '/'. Example: '/mydir/mysubdir')
|
||||||
* @return int < 0 if KO, 0 = already exists, > 0 if OK
|
* @param string $dataroot Data root directory (to avoid having the data root in the loop)
|
||||||
|
* @return int < 0 if KO, 0 = already exists, > 0 if OK
|
||||||
*/
|
*/
|
||||||
function dol_mkdir($dir)
|
function dol_mkdir($dir, $dataroot='')
|
||||||
{
|
{
|
||||||
global $conf;
|
global $db, $conf;
|
||||||
|
|
||||||
dol_syslog("functions.lib::dol_mkdir: dir=".$dir,LOG_INFO);
|
dol_syslog("functions.lib::dol_mkdir: dir=".$dir,LOG_INFO);
|
||||||
|
|
||||||
@ -3048,8 +3049,14 @@ function dol_mkdir($dir)
|
|||||||
$nberr=0;
|
$nberr=0;
|
||||||
$nbcreated=0;
|
$nbcreated=0;
|
||||||
|
|
||||||
$ccdir = '';
|
$ccdir='';
|
||||||
$cdir = explode("/",$dir);
|
if (! empty($dataroot)) {
|
||||||
|
// Remove data root from loop
|
||||||
|
$dir = str_replace($dataroot.'/', '', $dir);
|
||||||
|
$ccdir = $dataroot.'/';
|
||||||
|
}
|
||||||
|
|
||||||
|
$cdir = explode("/", $dir);
|
||||||
$num=count($cdir);
|
$num=count($cdir);
|
||||||
for ($i = 0; $i < $num; $i++)
|
for ($i = 0; $i < $num; $i++)
|
||||||
{
|
{
|
||||||
|
|||||||
@ -1170,7 +1170,7 @@ abstract class DolibarrModules
|
|||||||
|
|
||||||
$err=0;
|
$err=0;
|
||||||
|
|
||||||
if (is_array($this->dirs))
|
if (isset($this->dirs) && is_array($this->dirs) && ! empty($this->dirs))
|
||||||
{
|
{
|
||||||
foreach ($this->dirs as $key => $value)
|
foreach ($this->dirs as $key => $value)
|
||||||
{
|
{
|
||||||
@ -1184,19 +1184,19 @@ abstract class DolibarrModules
|
|||||||
$subname = empty($this->dirs[$key][3])?'':strtoupper($this->dirs[$key][3]); // Add submodule name (ex: $conf->module->submodule->dir_output)
|
$subname = empty($this->dirs[$key][3])?'':strtoupper($this->dirs[$key][3]); // Add submodule name (ex: $conf->module->submodule->dir_output)
|
||||||
$forcename = empty($this->dirs[$key][4])?'':strtoupper($this->dirs[$key][4]); // Change the module name if different
|
$forcename = empty($this->dirs[$key][4])?'':strtoupper($this->dirs[$key][4]); // Change the module name if different
|
||||||
|
|
||||||
if ($forcename) $constname = 'MAIN_MODULE_'.$forcename."_DIR_";
|
if (! empty($forcename)) $constname = 'MAIN_MODULE_'.$forcename."_DIR_";
|
||||||
if ($subname) $constname = $constname.$subname."_";
|
if (! empty($subname)) $constname = $constname.$subname."_";
|
||||||
|
|
||||||
$name = $constname.strtoupper($this->dirs[$key][0]);
|
$name = $constname.strtoupper($this->dirs[$key][0]);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Define directory full path ($dir must start with "/")
|
// Define directory full path ($dir must start with "/")
|
||||||
if (empty($conf->global->MAIN_MODULE_MULTICOMPANY) || $conf->entity == 1) $fulldir = DOL_DATA_ROOT.$dir;
|
if (empty($conf->global->MAIN_MODULE_MULTICOMPANY) || $conf->entity == 1) $fulldir = DOL_DATA_ROOT.$dir;
|
||||||
else $fulldir = DOL_DATA_ROOT."/".$conf->entity.$dir;
|
else $fulldir = DOL_DATA_ROOT."/".$conf->entity.$dir;
|
||||||
// Create dir if it does not exists
|
// Create dir if it does not exists
|
||||||
if ($fulldir && ! file_exists($fulldir))
|
if (! empty($fulldir) && ! file_exists($fulldir))
|
||||||
{
|
{
|
||||||
if (dol_mkdir($fulldir) < 0)
|
if (dol_mkdir($fulldir, DOL_DATA_ROOT) < 0)
|
||||||
{
|
{
|
||||||
$this->error = $langs->trans("ErrorCanNotCreateDir",$fulldir);
|
$this->error = $langs->trans("ErrorCanNotCreateDir",$fulldir);
|
||||||
dol_syslog(get_class($this)."::_init ".$this->error, LOG_ERR);
|
dol_syslog(get_class($this)."::_init ".$this->error, LOG_ERR);
|
||||||
@ -1205,9 +1205,9 @@ abstract class DolibarrModules
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Define the constant in database if requested (not the default mode)
|
// Define the constant in database if requested (not the default mode)
|
||||||
if ($addtodatabase)
|
if (! empty($addtodatabase))
|
||||||
{
|
{
|
||||||
$result = $this->insert_dirs($name,$dir);
|
$result = $this->insert_dirs($name, $dir);
|
||||||
if ($result) $err++;
|
if ($result) $err++;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1,5 +1,6 @@
|
|||||||
<?php
|
<?php
|
||||||
/* Copyright (C) 2010-2012 Laurent Destailleur <ely@users.sourceforge.net>
|
/* Copyright (C) 2010-2012 Laurent Destailleur <ely@users.sourceforge.net>
|
||||||
|
* Copyright (C) 2012 Regis Houssin <regis@dolibarr.fr>
|
||||||
|
|
||||||
* This program is free software; you can redistribute it and/or modify
|
* This program is free software; you can redistribute it and/or modify
|
||||||
* it under the terms of the GNU General Public License as published by
|
* it under the terms of the GNU General Public License as published by
|
||||||
@ -108,12 +109,12 @@ class doc_generic_invoice_odt extends ModelePDFFactures
|
|||||||
'object_ref'=>$object->ref,
|
'object_ref'=>$object->ref,
|
||||||
'object_ref_ext'=>$object->ref_ext,
|
'object_ref_ext'=>$object->ref_ext,
|
||||||
'object_ref_customer'=>$object->ref_client,
|
'object_ref_customer'=>$object->ref_client,
|
||||||
'object_ref_supplier'=>$object->ref_fournisseur,
|
'object_ref_supplier'=>(! empty($object->ref_fournisseur)?$object->ref_fournisseur:''),
|
||||||
'object_source_invoice_ref'=>$invoice_source->ref,
|
'object_source_invoice_ref'=>$invoice_source->ref,
|
||||||
'object_date'=>dol_print_date($object->date,'day'),
|
'object_date'=>dol_print_date($object->date,'day'),
|
||||||
'object_date_limit'=>dol_print_date($object->date_lim_reglement,'day'),
|
'object_date_limit'=>dol_print_date($object->date_lim_reglement,'day'),
|
||||||
'object_date_creation'=>dol_print_date($object->date_creation,'day'),
|
'object_date_creation'=>dol_print_date($object->date_creation,'day'),
|
||||||
'object_date_modification'=>dol_print_date($object->date_modification,'day'),
|
'object_date_modification'=>(! empty($object->date_modification)?dol_print_date($object->date_modification,'day'):''),
|
||||||
'object_date_validation'=>dol_print_date($object->date_validation,'dayhour'),
|
'object_date_validation'=>dol_print_date($object->date_validation,'dayhour'),
|
||||||
'object_payment_mode_code'=>$object->mode_reglement_code,
|
'object_payment_mode_code'=>$object->mode_reglement_code,
|
||||||
'object_payment_mode'=>($outputlangs->transnoentitiesnoconv('PaymentType'.$object->mode_reglement_code)!='PaymentType'.$object->mode_reglement_code?$outputlangs->transnoentitiesnoconv('PaymentType'.$object->mode_reglement_code):$object->mode_reglement),
|
'object_payment_mode'=>($outputlangs->transnoentitiesnoconv('PaymentType'.$object->mode_reglement_code)!='PaymentType'.$object->mode_reglement_code?$outputlangs->transnoentitiesnoconv('PaymentType'.$object->mode_reglement_code):$object->mode_reglement),
|
||||||
@ -122,7 +123,7 @@ class doc_generic_invoice_odt extends ModelePDFFactures
|
|||||||
'object_total_ht'=>price($object->total_ht,0,$outputlangs),
|
'object_total_ht'=>price($object->total_ht,0,$outputlangs),
|
||||||
'object_total_vat'=>price($object->total_tva,0,$outputlangs),
|
'object_total_vat'=>price($object->total_tva,0,$outputlangs),
|
||||||
'object_total_ttc'=>price($object->total_ttc,0,$outputlangs),
|
'object_total_ttc'=>price($object->total_ttc,0,$outputlangs),
|
||||||
'object_vatrate'=>vatrate($object->tva),
|
'object_vatrate'=>(isset($object->tva)?vatrate($object->tva):''),
|
||||||
'object_note_private'=>$object->note,
|
'object_note_private'=>$object->note,
|
||||||
'object_note'=>$object->note_public,
|
'object_note'=>$object->note_public,
|
||||||
// Payments
|
// Payments
|
||||||
@ -339,7 +340,7 @@ class doc_generic_invoice_odt extends ModelePDFFactures
|
|||||||
'__FROM_EMAIL__' => $this->emetteur->email,
|
'__FROM_EMAIL__' => $this->emetteur->email,
|
||||||
'__TOTAL_TTC__' => $object->total_ttc,
|
'__TOTAL_TTC__' => $object->total_ttc,
|
||||||
'__TOTAL_HT__' => $object->total_ht,
|
'__TOTAL_HT__' => $object->total_ht,
|
||||||
'__TOTAL_VAT__' => $object->total_vat
|
'__TOTAL_VAT__' => $object->total_tva
|
||||||
);
|
);
|
||||||
complete_substitutions_array($substitutionarray, $langs, $object);
|
complete_substitutions_array($substitutionarray, $langs, $object);
|
||||||
|
|
||||||
|
|||||||
@ -1,6 +1,6 @@
|
|||||||
<?php
|
<?php
|
||||||
/* Copyright (C) 2006-2012 Laurent Destailleur <eldy@users.sourceforge.net>
|
/* Copyright (C) 2006-2012 Laurent Destailleur <eldy@users.sourceforge.net>
|
||||||
* Copyright (C) 2009-2010 Regis Houssin <regis@dolibarr.fr>
|
* Copyright (C) 2009-2012 Regis Houssin <regis@dolibarr.fr>
|
||||||
*
|
*
|
||||||
* This program is free software; you can redistribute it and/or modify
|
* This program is free software; you can redistribute it and/or modify
|
||||||
* it under the terms of the GNU General Public License as published by
|
* it under the terms of the GNU General Public License as published by
|
||||||
@ -95,21 +95,23 @@ class ImportCsv extends ModeleImports
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* getDriverLabel
|
* getDriverLabel
|
||||||
*
|
*
|
||||||
* @return string Label
|
* @param string $key Key
|
||||||
|
* @return string Label
|
||||||
*/
|
*/
|
||||||
function getDriverLabel()
|
function getDriverLabel($key='')
|
||||||
{
|
{
|
||||||
return $this->label;
|
return $this->label;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* getDriverDesc
|
* getDriverDesc
|
||||||
*
|
*
|
||||||
* @return string Description
|
* @param string $key Key
|
||||||
|
* @return string Description
|
||||||
*/
|
*/
|
||||||
function getDriverDesc()
|
function getDriverDesc($key='')
|
||||||
{
|
{
|
||||||
return $this->desc;
|
return $this->desc;
|
||||||
}
|
}
|
||||||
@ -125,21 +127,23 @@ class ImportCsv extends ModeleImports
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* getDriverVersion
|
* getDriverVersion
|
||||||
*
|
*
|
||||||
* @return string Driver version
|
* @param string $key Key
|
||||||
|
* @return string Driver version
|
||||||
*/
|
*/
|
||||||
function getDriverVersion()
|
function getDriverVersion($key='')
|
||||||
{
|
{
|
||||||
return $this->version;
|
return $this->version;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* getDriverLabel
|
* getDriverLabel
|
||||||
*
|
*
|
||||||
* @return string Label of external lib
|
* @param string $key Key
|
||||||
|
* @return string Label of external lib
|
||||||
*/
|
*/
|
||||||
function getLibLabel()
|
function getLibLabel($key='')
|
||||||
{
|
{
|
||||||
return $this->label_lib;
|
return $this->label_lib;
|
||||||
}
|
}
|
||||||
@ -147,9 +151,10 @@ class ImportCsv extends ModeleImports
|
|||||||
/**
|
/**
|
||||||
* getLibVersion
|
* getLibVersion
|
||||||
*
|
*
|
||||||
* @return string Version of external lib
|
* @param string $key Key
|
||||||
|
* @return string Version of external lib
|
||||||
*/
|
*/
|
||||||
function getLibVersion()
|
function getLibVersion($key='')
|
||||||
{
|
{
|
||||||
return $this->version_lib;
|
return $this->version_lib;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1,6 +1,6 @@
|
|||||||
<?php
|
<?php
|
||||||
/* Copyright (C) 2005-2009 Laurent Destailleur <eldy@users.sourceforge.net>
|
/* Copyright (C) 2005-2012 Laurent Destailleur <eldy@users.sourceforge.net>
|
||||||
* Copyright (C) 2005-2007 Regis Houssin <regis@dolibarr.fr>
|
* Copyright (C) 2005-2012 Regis Houssin <regis@dolibarr.fr>
|
||||||
*
|
*
|
||||||
* This program is free software; you can redistribute it and/or modify
|
* This program is free software; you can redistribute it and/or modify
|
||||||
* it under the terms of the GNU General Public License as published by
|
* it under the terms of the GNU General Public License as published by
|
||||||
|
|||||||
@ -567,9 +567,9 @@ class EcmDirectory // extends CommonObject
|
|||||||
$this->cats[$obj->rowid]['fk_user_c'] = $obj->fk_user_c;
|
$this->cats[$obj->rowid]['fk_user_c'] = $obj->fk_user_c;
|
||||||
$this->cats[$obj->rowid]['login_c'] = $obj->login_c;
|
$this->cats[$obj->rowid]['login_c'] = $obj->login_c;
|
||||||
|
|
||||||
if ($obj->rowid_fille)
|
if (! empty($obj->rowid_fille))
|
||||||
{
|
{
|
||||||
if (is_array($this->cats[$obj->rowid]['id_children']))
|
if (isset($this->cats[$obj->rowid]['id_children']) && is_array($this->cats[$obj->rowid]['id_children']))
|
||||||
{
|
{
|
||||||
$newelempos=count($this->cats[$obj->rowid]['id_children']);
|
$newelempos=count($this->cats[$obj->rowid]['id_children']);
|
||||||
//print "this->cats[$i]['id_children'] est deja un tableau de $newelem elements<br>";
|
//print "this->cats[$i]['id_children'] est deja un tableau de $newelem elements<br>";
|
||||||
|
|||||||
@ -48,9 +48,9 @@ $result = restrictedArea($user, 'ecm','');
|
|||||||
$user->getrights('ecm');
|
$user->getrights('ecm');
|
||||||
|
|
||||||
// Get parameters
|
// Get parameters
|
||||||
$socid = isset($_GET["socid"])?$_GET["socid"]:'';
|
$socid = GETPOST('socid','int');
|
||||||
$action = isset($_GET["action"])?$_GET["action"]:$_POST['action'];
|
$action = GETPOST('action','alpha');
|
||||||
$section=isset($_GET["section"])?$_GET["section"]:$_POST['section'];
|
$section=GETPOST('section');
|
||||||
if (! $section) $section=0;
|
if (! $section) $section=0;
|
||||||
|
|
||||||
$upload_dir = $conf->ecm->dir_output.'/'.$section;
|
$upload_dir = $conf->ecm->dir_output.'/'.$section;
|
||||||
@ -66,9 +66,9 @@ if (! $sortorder) $sortorder="ASC";
|
|||||||
if (! $sortfield) $sortfield="label";
|
if (! $sortfield) $sortfield="label";
|
||||||
|
|
||||||
$ecmdir = new EcmDirectory($db);
|
$ecmdir = new EcmDirectory($db);
|
||||||
if (! empty($_REQUEST["section"]))
|
if (! empty($section))
|
||||||
{
|
{
|
||||||
$result=$ecmdir->fetch($_REQUEST["section"]);
|
$result=$ecmdir->fetch($section);
|
||||||
if (! $result > 0)
|
if (! $result > 0)
|
||||||
{
|
{
|
||||||
dol_print_error($db,$ecmdir->error);
|
dol_print_error($db,$ecmdir->error);
|
||||||
@ -123,10 +123,8 @@ print_fiche_titre($langs->trans("ECMArea").' - '.$langs->trans("Search"));
|
|||||||
//print "<br>\n";
|
//print "<br>\n";
|
||||||
print $langs->trans("FeatureNotYetAvailable").'.<br><br>';
|
print $langs->trans("FeatureNotYetAvailable").'.<br><br>';
|
||||||
|
|
||||||
if ($mesg) { print $mesg."<br>"; }
|
|
||||||
|
|
||||||
// Tool bar
|
// Tool bar
|
||||||
$head = ecm_prepare_head_fm($fac);
|
$head = ecm_prepare_head_fm($ecmdir);
|
||||||
//dol_fiche_head($head, 'search_form', '', 1);
|
//dol_fiche_head($head, 'search_form', '', 1);
|
||||||
|
|
||||||
|
|
||||||
@ -210,7 +208,6 @@ print '</table>';
|
|||||||
print '<br>';
|
print '<br>';
|
||||||
|
|
||||||
// End of page
|
// End of page
|
||||||
$db->close();
|
|
||||||
|
|
||||||
llxFooter();
|
llxFooter();
|
||||||
|
$db->close();
|
||||||
?>
|
?>
|
||||||
|
|||||||
@ -96,7 +96,7 @@ class Import
|
|||||||
require_once $file;
|
require_once $file;
|
||||||
$module = new $classname($this->db);
|
$module = new $classname($this->db);
|
||||||
|
|
||||||
if (is_array($module->import_code))
|
if (isset($module->import_code) && is_array($module->import_code))
|
||||||
{
|
{
|
||||||
foreach($module->import_code as $r => $value)
|
foreach($module->import_code as $r => $value)
|
||||||
{
|
{
|
||||||
@ -138,7 +138,7 @@ class Import
|
|||||||
// Array of tables to import (key=alias, value=tablename)
|
// Array of tables to import (key=alias, value=tablename)
|
||||||
$this->array_import_tables[$i]=$module->import_tables_array[$r];
|
$this->array_import_tables[$i]=$module->import_tables_array[$r];
|
||||||
// Array of tables creator field to import (key=alias, value=creator field)
|
// Array of tables creator field to import (key=alias, value=creator field)
|
||||||
$this->array_import_tables_creator[$i]=$module->import_tables_creator_array[$r];
|
$this->array_import_tables_creator[$i]=(isset($module->import_tables_creator_array[$r])?$module->import_tables_creator_array[$r]:'');
|
||||||
// Array of fields to import (key=field, value=label)
|
// Array of fields to import (key=field, value=label)
|
||||||
$this->array_import_fields[$i]=$module->import_fields_array[$r];
|
$this->array_import_fields[$i]=$module->import_fields_array[$r];
|
||||||
// Array of hidden fields to import (key=field, value=label)
|
// Array of hidden fields to import (key=field, value=label)
|
||||||
@ -150,7 +150,7 @@ class Import
|
|||||||
// Tableau des alias a exporter (cle=champ, valeur=exemple)
|
// Tableau des alias a exporter (cle=champ, valeur=exemple)
|
||||||
$this->array_import_examplevalues[$i]=$module->import_examplevalues_array[$r];
|
$this->array_import_examplevalues[$i]=$module->import_examplevalues_array[$r];
|
||||||
// Tableau des regles de conversion d'une valeur depuis une autre source (cle=champ, valeur=tableau des regles)
|
// Tableau des regles de conversion d'une valeur depuis une autre source (cle=champ, valeur=tableau des regles)
|
||||||
$this->array_import_convertvalue[$i]=$module->import_convertvalue_array[$r];
|
$this->array_import_convertvalue[$i]=(isset($module->import_convertvalue_array[$r])?$module->import_convertvalue_array[$r]:'');
|
||||||
// Module
|
// Module
|
||||||
$this->array_import_module[$i]=$module;
|
$this->array_import_module[$i]=$module;
|
||||||
|
|
||||||
|
|||||||
@ -35,8 +35,8 @@ $langs->load("exports");
|
|||||||
$langs->load("errors");
|
$langs->load("errors");
|
||||||
|
|
||||||
// Security check
|
// Security check
|
||||||
if ($user->societe_id) $socid=$user->societe_id;
|
if (! empty($user->societe_id)) $socid=$user->societe_id;
|
||||||
$result=restrictedArea($user,'import',$origin_id,'');
|
$result=restrictedArea($user, 'import');
|
||||||
|
|
||||||
$entitytoicon=array(
|
$entitytoicon=array(
|
||||||
'invoice'=>'bill','invoice_line'=>'bill',
|
'invoice'=>'bill','invoice_line'=>'bill',
|
||||||
@ -68,7 +68,8 @@ $entitytolang=array( // Translation code
|
|||||||
$datatoimport = GETPOST('datatoimport');
|
$datatoimport = GETPOST('datatoimport');
|
||||||
$format = GETPOST('format');
|
$format = GETPOST('format');
|
||||||
$filetoimport = GETPOST('filetoimport');
|
$filetoimport = GETPOST('filetoimport');
|
||||||
$action = GETPOST('action');
|
$action = GETPOST('action','alpha');
|
||||||
|
$confirm = GETPOST('confirm','alpha');
|
||||||
$step = (GETPOST('step') ? GETPOST('step') : 1);
|
$step = (GETPOST('step') ? GETPOST('step') : 1);
|
||||||
$import_name = GETPOST('import_name');
|
$import_name = GETPOST('import_name');
|
||||||
$hexa = GETPOST('hexa');
|
$hexa = GETPOST('hexa');
|
||||||
@ -92,7 +93,7 @@ foreach($fieldsarray as $elem)
|
|||||||
{
|
{
|
||||||
$tabelem=explode('=',$elem,2);
|
$tabelem=explode('=',$elem,2);
|
||||||
$key=$tabelem[0];
|
$key=$tabelem[0];
|
||||||
$val=$tabelem[1];
|
$val=(isset($tabelem[1])?$tabelem[1]:'');
|
||||||
if ($key && $val)
|
if ($key && $val)
|
||||||
{
|
{
|
||||||
$array_match_file_to_database[$key]=$val;
|
$array_match_file_to_database[$key]=$val;
|
||||||
@ -192,7 +193,7 @@ if ($action == 'add_import_model')
|
|||||||
|
|
||||||
if ($step == 3 && $datatoimport)
|
if ($step == 3 && $datatoimport)
|
||||||
{
|
{
|
||||||
if ( $_POST["sendit"] && ! empty($conf->global->MAIN_UPLOAD_DOC))
|
if (GETPOST('sendit') && ! empty($conf->global->MAIN_UPLOAD_DOC))
|
||||||
{
|
{
|
||||||
dol_mkdir($conf->import->dir_temp);
|
dol_mkdir($conf->import->dir_temp);
|
||||||
$nowyearmonth=dol_print_date(dol_now(),'%Y%m%d%H%M%S');
|
$nowyearmonth=dol_print_date(dol_now(),'%Y%m%d%H%M%S');
|
||||||
@ -451,6 +452,14 @@ if ($step == 3 && $datatoimport)
|
|||||||
|
|
||||||
dol_fiche_head($head, 'step3', $langs->trans("NewImport"));
|
dol_fiche_head($head, 'step3', $langs->trans("NewImport"));
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Confirm delete file
|
||||||
|
*/
|
||||||
|
if ($action == 'delete')
|
||||||
|
{
|
||||||
|
$ret=$form->form_confirm($_SERVER["PHP_SELF"].'?urlfile='.urlencode(GETPOST('urlfile')).'&step=3'.$param, $langs->trans('DeleteFile'), $langs->trans('ConfirmDeleteFile'), 'confirm_deletefile', '', 0, 1);
|
||||||
|
if ($ret == 'html') print '<br>';
|
||||||
|
}
|
||||||
|
|
||||||
print '<table width="100%" class="border">';
|
print '<table width="100%" class="border">';
|
||||||
|
|
||||||
@ -511,7 +520,7 @@ if ($step == 3 && $datatoimport)
|
|||||||
print "</tr>\n";
|
print "</tr>\n";
|
||||||
|
|
||||||
// Search available imports
|
// Search available imports
|
||||||
$filearray=dol_dir_list($conf->import->dir_temp,'files',0,'','','name',SORT_DESC);
|
$filearray=dol_dir_list($conf->import->dir_temp, 'files', 0, '', '', 'name', SORT_DESC);
|
||||||
if (count($filearray) > 0)
|
if (count($filearray) > 0)
|
||||||
{
|
{
|
||||||
$dir=$conf->import->dir_temp;
|
$dir=$conf->import->dir_temp;
|
||||||
@ -545,8 +554,7 @@ if ($step == 3 && $datatoimport)
|
|||||||
// Affiche date fichier
|
// Affiche date fichier
|
||||||
print '<td align="right">'.dol_print_date(dol_filemtime($dir.'/'.$file),'dayhour').'</td>';
|
print '<td align="right">'.dol_print_date(dol_filemtime($dir.'/'.$file),'dayhour').'</td>';
|
||||||
// Del button
|
// Del button
|
||||||
print '<td align="right"><a href="'.DOL_URL_ROOT.'/document.php?action=remove_file&step=3'.$param.'&modulepart='.$modulepart.'&file='.urlencode($relativepath);
|
print '<td align="right"><a href="'.$_SERVER['PHP_SELF'].'?action=delete&step=3'.$param.'&urlfile='.urlencode($relativepath);
|
||||||
print '&urlsource='.urlencode($urlsource);
|
|
||||||
print '">'.img_delete().'</a></td>';
|
print '">'.img_delete().'</a></td>';
|
||||||
// Action button
|
// Action button
|
||||||
print '<td align="right">';
|
print '<td align="right">';
|
||||||
|
|||||||
@ -1000,7 +1000,7 @@ function top_htmlhead($head, $title='', $disablejs=0, $disablehead=0, $arrayofjs
|
|||||||
print '<script type="text/javascript" src="'.DOL_URL_ROOT.'/includes/jquery/plugins/jeditable/jquery.jeditable.ckeditor.js"></script>'."\n";
|
print '<script type="text/javascript" src="'.DOL_URL_ROOT.'/includes/jquery/plugins/jeditable/jquery.jeditable.ckeditor.js"></script>'."\n";
|
||||||
}
|
}
|
||||||
// jQuery File Upload
|
// jQuery File Upload
|
||||||
if (! empty($conf->global->MAIN_USE_JQUERY_FILEUPLOAD))
|
if (! empty($conf->global->MAIN_USE_JQUERY_FILEUPLOAD) || defined('REQUIRE_JQUERY_FILEUPLOAD'))
|
||||||
{
|
{
|
||||||
print '<script type="text/javascript" src="'.DOL_URL_ROOT.'/includes/jquery/plugins/template/tmpl.min.js"></script>'."\n";
|
print '<script type="text/javascript" src="'.DOL_URL_ROOT.'/includes/jquery/plugins/template/tmpl.min.js"></script>'."\n";
|
||||||
print '<script type="text/javascript" src="'.DOL_URL_ROOT.'/includes/jquery/plugins/fileupload/js/jquery.iframe-transport.js"></script>'."\n";
|
print '<script type="text/javascript" src="'.DOL_URL_ROOT.'/includes/jquery/plugins/fileupload/js/jquery.iframe-transport.js"></script>'."\n";
|
||||||
|
|||||||
@ -436,7 +436,7 @@ abstract class ActionsCardCommon
|
|||||||
$res=dol_include_once($dirroot.$module.'.php');
|
$res=dol_include_once($dirroot.$module.'.php');
|
||||||
if ($res) break;
|
if ($res) break;
|
||||||
}
|
}
|
||||||
$modCodeClient = new $module;
|
$modCodeClient = new $module($db);
|
||||||
$this->tpl['auto_customercode'] = $modCodeClient->code_auto;
|
$this->tpl['auto_customercode'] = $modCodeClient->code_auto;
|
||||||
// We verified if the tag prefix is used
|
// We verified if the tag prefix is used
|
||||||
if ($modCodeClient->code_auto) $this->tpl['prefix_customercode'] = $modCodeClient->verif_prefixIsUsed();
|
if ($modCodeClient->code_auto) $this->tpl['prefix_customercode'] = $modCodeClient->verif_prefixIsUsed();
|
||||||
|
|||||||
@ -1013,7 +1013,7 @@ else
|
|||||||
$res=dol_include_once($dirroot.$module.'.php');
|
$res=dol_include_once($dirroot.$module.'.php');
|
||||||
if ($res) break;
|
if ($res) break;
|
||||||
}
|
}
|
||||||
$modCodeClient = new $module;
|
$modCodeClient = new $module($db);
|
||||||
// We verified if the tag prefix is used
|
// We verified if the tag prefix is used
|
||||||
if ($modCodeClient->code_auto)
|
if ($modCodeClient->code_auto)
|
||||||
{
|
{
|
||||||
@ -1031,7 +1031,7 @@ else
|
|||||||
$res=dol_include_once($dirroot.$module.'.php');
|
$res=dol_include_once($dirroot.$module.'.php');
|
||||||
if ($res) break;
|
if ($res) break;
|
||||||
}
|
}
|
||||||
$modCodeFournisseur = new $module;
|
$modCodeFournisseur = new $module($db);
|
||||||
// On verifie si la balise prefix est utilisee
|
// On verifie si la balise prefix est utilisee
|
||||||
if ($modCodeFournisseur->code_auto)
|
if ($modCodeFournisseur->code_auto)
|
||||||
{
|
{
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user