Merge branch 'develop' of github.com:Dolibarr/dolibarr into new_formsetup_as_default
This commit is contained in:
commit
e48bf14dae
@ -1883,7 +1883,7 @@ class BookKeeping extends CommonObject
|
|||||||
$sql .= ' doc_ref, fk_doc, fk_docdet, entity, thirdparty_code, subledger_account, subledger_label,';
|
$sql .= ' doc_ref, fk_doc, fk_docdet, entity, thirdparty_code, subledger_account, subledger_label,';
|
||||||
$sql .= ' numero_compte, label_compte, label_operation, debit, credit,';
|
$sql .= ' numero_compte, label_compte, label_operation, debit, credit,';
|
||||||
$sql .= ' montant, sens, fk_user_author, import_key, code_journal, journal_label, '.((int) $next_piecenum).", '".$this->db->idate($now)."'";
|
$sql .= ' montant, sens, fk_user_author, import_key, code_journal, journal_label, '.((int) $next_piecenum).", '".$this->db->idate($now)."'";
|
||||||
$sql .= ' FROM '.MAIN_DB_PREFIX.$this->table_element.'_tmp WHERE piece_num = '.((int) $piece_num).' AND entity = ' .((int) $conf->entity);
|
$sql .= ' FROM '.MAIN_DB_PREFIX.$this->table_element.'_tmp WHERE piece_num = '.((int) $piece_num).' AND numero_compte IS NOT NULL AND entity = ' .((int) $conf->entity);
|
||||||
$resql = $this->db->query($sql);
|
$resql = $this->db->query($sql);
|
||||||
if (!$resql) {
|
if (!$resql) {
|
||||||
$error++;
|
$error++;
|
||||||
|
|||||||
@ -258,6 +258,12 @@ class Categorie extends CommonObject
|
|||||||
*/
|
*/
|
||||||
public $motherof = array();
|
public $motherof = array();
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @var array Childs
|
||||||
|
*/
|
||||||
|
public $childs = array();
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Constructor
|
* Constructor
|
||||||
*
|
*
|
||||||
|
|||||||
@ -1517,6 +1517,7 @@ class Propal extends CommonObject
|
|||||||
$sql = "SELECT p.rowid, p.ref, p.entity, p.remise, p.remise_percent, p.remise_absolue, p.fk_soc";
|
$sql = "SELECT p.rowid, p.ref, p.entity, p.remise, p.remise_percent, p.remise_absolue, p.fk_soc";
|
||||||
$sql .= ", p.total_ttc, p.total_tva, p.localtax1, p.localtax2, p.total_ht";
|
$sql .= ", p.total_ttc, p.total_tva, p.localtax1, p.localtax2, p.total_ht";
|
||||||
$sql .= ", p.datec";
|
$sql .= ", p.datec";
|
||||||
|
$sql .= ", p.date_signature as dates";
|
||||||
$sql .= ", p.date_valid as datev";
|
$sql .= ", p.date_valid as datev";
|
||||||
$sql .= ", p.datep as dp";
|
$sql .= ", p.datep as dp";
|
||||||
$sql .= ", p.fin_validite as dfv";
|
$sql .= ", p.fin_validite as dfv";
|
||||||
@ -1600,6 +1601,7 @@ class Propal extends CommonObject
|
|||||||
$this->date_creation = $this->db->jdate($obj->datec); //Creation date
|
$this->date_creation = $this->db->jdate($obj->datec); //Creation date
|
||||||
$this->date_validation = $this->db->jdate($obj->datev); //Validation date
|
$this->date_validation = $this->db->jdate($obj->datev); //Validation date
|
||||||
$this->date_modification = $this->db->jdate($obj->date_modification); // tms
|
$this->date_modification = $this->db->jdate($obj->date_modification); // tms
|
||||||
|
$this->date_signature = $this->db->jdate($obj->dates); // Signature date
|
||||||
$this->date = $this->db->jdate($obj->dp); // Proposal date
|
$this->date = $this->db->jdate($obj->dp); // Proposal date
|
||||||
$this->datep = $this->db->jdate($obj->dp); // deprecated
|
$this->datep = $this->db->jdate($obj->dp); // deprecated
|
||||||
$this->fin_validite = $this->db->jdate($obj->dfv);
|
$this->fin_validite = $this->db->jdate($obj->dfv);
|
||||||
|
|||||||
@ -281,8 +281,8 @@ if ($object->id > 0) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
$author = new User($db);
|
$author = new User($db);
|
||||||
if ($object->user_author) {
|
if ($object->fk_user_author) {
|
||||||
$author->fetch($object->user_author);
|
$author->fetch($object->fk_user_author);
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($type == 'bank-transfer') {
|
if ($type == 'bank-transfer') {
|
||||||
|
|||||||
@ -1468,6 +1468,7 @@ if (!$error && ($massaction == 'approveleave' || ($action == 'approveleave' && $
|
|||||||
|
|
||||||
$trackid = 'leav'.$objecttmp->id;
|
$trackid = 'leav'.$objecttmp->id;
|
||||||
|
|
||||||
|
require_once DOL_DOCUMENT_ROOT.'/core/class/CMailFile.class.php';
|
||||||
$mail = new CMailFile($subject, $emailTo, $emailFrom, $message, array(), array(), array(), '', '', 0, 0, '', '', $trackid);
|
$mail = new CMailFile($subject, $emailTo, $emailFrom, $message, array(), array(), array(), '', '', 0, 0, '', '', $trackid);
|
||||||
|
|
||||||
// Sending email
|
// Sending email
|
||||||
|
|||||||
122
htdocs/core/ajax/ajaxcompanies.php
Normal file
122
htdocs/core/ajax/ajaxcompanies.php
Normal file
@ -0,0 +1,122 @@
|
|||||||
|
<?php
|
||||||
|
/* Copyright (C) 2006 Andre Cianfarani <acianfa@free.fr>
|
||||||
|
* Copyright (C) 2005-2009 Regis Houssin <regis.houssin@inodbox.com>
|
||||||
|
* Copyright (C) 2007-2010 Laurent Destailleur <eldy@users.sourceforge.net>
|
||||||
|
* Copyright (C) 2010 Cyrille de Lambert <info@auguria.net>
|
||||||
|
*
|
||||||
|
* 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
|
||||||
|
* the Free Software Foundation; either version 3 of the License, or
|
||||||
|
* (at your option) any later version.
|
||||||
|
*
|
||||||
|
* This program is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
* GNU General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU General Public License
|
||||||
|
* along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
*/
|
||||||
|
|
||||||
|
/**
|
||||||
|
* \file htdocs/core/ajax/ajaxcompanies.php
|
||||||
|
* \brief File to return Ajax response on third parties request
|
||||||
|
*/
|
||||||
|
|
||||||
|
if (!defined('NOTOKENRENEWAL')) define('NOTOKENRENEWAL', 1); // Disables token renewal
|
||||||
|
if (!defined('NOREQUIREMENU')) define('NOREQUIREMENU', '1');
|
||||||
|
if (!defined('NOREQUIREHTML')) define('NOREQUIREHTML', '1');
|
||||||
|
if (!defined('NOREQUIREAJAX')) define('NOREQUIREAJAX', '1');
|
||||||
|
if (!defined('NOREQUIRESOC')) define('NOREQUIRESOC', '1');
|
||||||
|
if (!defined('NOCSRFCHECK')) define('NOCSRFCHECK', '1');
|
||||||
|
|
||||||
|
require '../../main.inc.php';
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
* View
|
||||||
|
*/
|
||||||
|
|
||||||
|
// Ajout directives pour resoudre bug IE
|
||||||
|
//header('Cache-Control: Public, must-revalidate');
|
||||||
|
//header('Pragma: public');
|
||||||
|
|
||||||
|
//top_htmlhead("", "", 1); // Replaced with top_httphead. An ajax page does not need html header.
|
||||||
|
top_httphead();
|
||||||
|
|
||||||
|
//print '<!-- Ajax page called with url '.dol_escape_htmltag($_SERVER["PHP_SELF"]).'?'.dol_escape_htmltag($_SERVER["QUERY_STRING"]).' -->'."\n";
|
||||||
|
|
||||||
|
dol_syslog(join(',', $_GET));
|
||||||
|
|
||||||
|
|
||||||
|
// Generation liste des societes
|
||||||
|
if (GETPOST('newcompany') || GETPOST('socid', 'int') || GETPOST('id_fourn')) {
|
||||||
|
$return_arr = array();
|
||||||
|
|
||||||
|
// Define filter on text typed
|
||||||
|
$socid = $_GET['newcompany'] ? $_GET['newcompany'] : '';
|
||||||
|
if (!$socid) $socid = $_GET['socid'] ? $_GET['socid'] : '';
|
||||||
|
if (!$socid) $socid = $_GET['id_fourn'] ? $_GET['id_fourn'] : '';
|
||||||
|
|
||||||
|
$sql = "SELECT s.rowid, s.nom, s.name_alias, s.code_client, s.code_fournisseur, s.address, s.zip, s.town, s.email, s.siren, s.siret, s.ape, s.idprof4, s.client, s.fournisseur, s.datec, s.logo";
|
||||||
|
$sql .= " , c.label as country, d.nom as departement";
|
||||||
|
$sql .= " FROM ".MAIN_DB_PREFIX."societe as s";
|
||||||
|
$sql .= " LEFT JOIN ".MAIN_DB_PREFIX."c_country as c ON c.rowid = s.fk_pays";
|
||||||
|
$sql .= " LEFT JOIN ".MAIN_DB_PREFIX."c_departements as d ON d.rowid = s.fk_departement";
|
||||||
|
$sql .= " WHERE s.entity IN (".getEntity('societe').")";
|
||||||
|
if ($socid) {
|
||||||
|
$sql .= " AND (";
|
||||||
|
// Add criteria on name/code
|
||||||
|
if (!empty($conf->global->COMPANY_DONOTSEARCH_ANYWHERE)) { // Can use index
|
||||||
|
$sql .= "s.nom LIKE '".$db->escape($socid)."%'";
|
||||||
|
$sql .= " OR s.code_client LIKE '".$db->escape($socid)."%'";
|
||||||
|
$sql .= " OR s.code_fournisseur LIKE '".$db->escape($socid)."%'";
|
||||||
|
} else {
|
||||||
|
$sql .= "s.nom LIKE '%".$db->escape($socid)."%'";
|
||||||
|
$sql .= " OR s.code_client LIKE '%".$db->escape($socid)."%'";
|
||||||
|
$sql .= " OR s.code_fournisseur LIKE '%".$db->escape($socid)."%'";
|
||||||
|
}
|
||||||
|
if (!empty($conf->global->SOCIETE_ALLOW_SEARCH_ON_ROWID)) $sql .= " OR s.rowid = '".$db->escape($socid)."'";
|
||||||
|
$sql .= ")";
|
||||||
|
}
|
||||||
|
//if (GETPOST("filter")) $sql.= " AND (".GETPOST("filter", "alpha").")"; // Add other filters
|
||||||
|
$sql .= " ORDER BY s.nom ASC";
|
||||||
|
|
||||||
|
//dol_syslog("ajaxcompanies", LOG_DEBUG);
|
||||||
|
$resql = $db->query($sql);
|
||||||
|
|
||||||
|
if ($resql) {
|
||||||
|
while ($row = $db->fetch_array($resql)) {
|
||||||
|
$label = $row['nom'];
|
||||||
|
if ($socid) $label = $label;
|
||||||
|
$row_array['label'] = $label;
|
||||||
|
$row_array['value'] = $row['nom'];
|
||||||
|
$row_array['key'] = $row['rowid'];
|
||||||
|
$row_array['name_alias'] = $row['name_alias'];
|
||||||
|
$row_array['code_client'] = $row['code_client'];
|
||||||
|
$row_array['code_fournisseur'] = $row['code_fournisseur'];
|
||||||
|
$row_array['address'] = $row['address'];
|
||||||
|
$row_array['zip'] = $row['zip'];
|
||||||
|
$row_array['town'] = $row['town'];
|
||||||
|
$row_array['email'] = $row['email'];
|
||||||
|
$row_array['siren'] = $row['siren'];
|
||||||
|
$row_array['siret'] = $row['siret'];
|
||||||
|
$row_array['ape'] = $row['ape'];
|
||||||
|
$row_array['idprof4'] = $row['idprof4'];
|
||||||
|
$row_array['client'] = $row['client'];
|
||||||
|
$row_array['fournisseur'] = $row['fournisseur'];
|
||||||
|
$row_array['datec'] = $row['datec'];
|
||||||
|
$row_array['logo'] = $row['logo'];
|
||||||
|
$row_array['country'] = $row['country'];
|
||||||
|
$row_array['departement'] = $row['departement'];
|
||||||
|
|
||||||
|
array_push($return_arr, $row_array);
|
||||||
|
}
|
||||||
|
|
||||||
|
echo json_encode($return_arr);
|
||||||
|
} else {
|
||||||
|
echo json_encode(array('nom'=>'Error', 'label'=>'Error', 'key'=>'Error', 'value'=>'Error'));
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
echo json_encode(array('nom'=>'ErrorBadParameter', 'label'=>'ErrorBadParameter', 'key'=>'ErrorBadParameter', 'value'=>'ErrorBadParameter'));
|
||||||
|
}
|
||||||
@ -597,7 +597,7 @@ class CMailFile
|
|||||||
}
|
}
|
||||||
|
|
||||||
$sendingmode = $this->sendmode;
|
$sendingmode = $this->sendmode;
|
||||||
if ($this->context == 'emailing' && !empty($conf->global->MAILING_NO_USING_PHPMAIL) && $sendingmode == 'mail') {
|
if ($this->sendcontext == 'emailing' && !empty($conf->global->MAILING_NO_USING_PHPMAIL) && $sendingmode == 'mail') {
|
||||||
// List of sending methods
|
// List of sending methods
|
||||||
$listofmethods = array();
|
$listofmethods = array();
|
||||||
$listofmethods['mail'] = 'PHP mail function';
|
$listofmethods['mail'] = 'PHP mail function';
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
/* Copyright (C) 2011-2012 Regis Houssin <regis.houssin@inodbox.com>
|
/* Copyright (C) 2011-2022 Regis Houssin <regis.houssin@inodbox.com>
|
||||||
* Copyright (C) 2011-2012 Laurent Destailleur <eldy@users.sourceforge.net>
|
* Copyright (C) 2011-2012 Laurent Destailleur <eldy@users.sourceforge.net>
|
||||||
*
|
*
|
||||||
* This program is free software; you can redistribute it and/or modify
|
* This program is free software; you can redistribute it and/or modify
|
||||||
@ -216,7 +216,7 @@ class FileUpload
|
|||||||
/**
|
/**
|
||||||
* Set delete url
|
* Set delete url
|
||||||
*
|
*
|
||||||
* @param string $file Filename
|
* @param object $file Filename
|
||||||
* @return void
|
* @return void
|
||||||
*/
|
*/
|
||||||
protected function setFileDeleteUrl($file)
|
protected function setFileDeleteUrl($file)
|
||||||
@ -301,7 +301,7 @@ class FileUpload
|
|||||||
* Enter description here ...
|
* Enter description here ...
|
||||||
*
|
*
|
||||||
* @param string $uploaded_file Uploade file
|
* @param string $uploaded_file Uploade file
|
||||||
* @param string $file File
|
* @param object $file File
|
||||||
* @param string $error Error
|
* @param string $error Error
|
||||||
* @param string $index Index
|
* @param string $index Index
|
||||||
* @return boolean True if OK, False if KO
|
* @return boolean True if OK, False if KO
|
||||||
@ -538,7 +538,7 @@ class FileUpload
|
|||||||
/**
|
/**
|
||||||
* Delete uploaded file
|
* Delete uploaded file
|
||||||
*
|
*
|
||||||
* @return void
|
* @return string
|
||||||
*/
|
*/
|
||||||
public function delete()
|
public function delete()
|
||||||
{
|
{
|
||||||
|
|||||||
@ -240,10 +240,24 @@ class FormSetup
|
|||||||
* saveConfFromPost
|
* saveConfFromPost
|
||||||
*
|
*
|
||||||
* @param bool $noMessageInUpdate display event message on errors and success
|
* @param bool $noMessageInUpdate display event message on errors and success
|
||||||
* @return void|null
|
* @return int -1 if KO, 1 if OK
|
||||||
*/
|
*/
|
||||||
public function saveConfFromPost($noMessageInUpdate = false)
|
public function saveConfFromPost($noMessageInUpdate = false)
|
||||||
{
|
{
|
||||||
|
global $hookmanager;
|
||||||
|
|
||||||
|
$parameters = array();
|
||||||
|
$reshook = $hookmanager->executeHooks('formSetupBeforeSaveConfFromPost', $parameters, $this); // Note that $action and $object may have been modified by some hooks
|
||||||
|
if ($reshook < 0) {
|
||||||
|
$this->setErrors($hookmanager->errors);
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
|
if ($reshook > 0) {
|
||||||
|
return $reshook;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
if (empty($this->items)) {
|
if (empty($this->items)) {
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
@ -265,11 +279,13 @@ class FormSetup
|
|||||||
if (empty($noMessageInUpdate)) {
|
if (empty($noMessageInUpdate)) {
|
||||||
setEventMessages($this->langs->trans("SetupSaved"), null);
|
setEventMessages($this->langs->trans("SetupSaved"), null);
|
||||||
}
|
}
|
||||||
|
return 1;
|
||||||
} else {
|
} else {
|
||||||
$this->db->rollback();
|
$this->db->rollback();
|
||||||
if (empty($noMessageInUpdate)) {
|
if (empty($noMessageInUpdate)) {
|
||||||
setEventMessages($this->langs->trans("SetupNotSaved"), null, 'errors');
|
setEventMessages($this->langs->trans("SetupNotSaved"), null, 'errors');
|
||||||
}
|
}
|
||||||
|
return -1;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -652,8 +668,22 @@ class FormSetupItem
|
|||||||
*/
|
*/
|
||||||
public function saveConfValue()
|
public function saveConfValue()
|
||||||
{
|
{
|
||||||
|
global $hookmanager;
|
||||||
|
|
||||||
|
$parameters = array();
|
||||||
|
$reshook = $hookmanager->executeHooks('formSetupBeforeSaveConfValue', $parameters, $this); // Note that $action and $object may have been modified by some hooks
|
||||||
|
if ($reshook < 0) {
|
||||||
|
$this->setErrors($hookmanager->errors);
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
|
if ($reshook > 0) {
|
||||||
|
return $reshook;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
if (!empty($this->saveCallBack) && is_callable($this->saveCallBack)) {
|
if (!empty($this->saveCallBack) && is_callable($this->saveCallBack)) {
|
||||||
return call_user_func($this->saveCallBack);
|
return call_user_func($this->saveCallBack, $this);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Modify constant only if key was posted (avoid resetting key to the null value)
|
// Modify constant only if key was posted (avoid resetting key to the null value)
|
||||||
@ -1013,6 +1043,7 @@ class FormSetupItem
|
|||||||
}
|
}
|
||||||
$out.= $this->langs->trans($template->label);
|
$out.= $this->langs->trans($template->label);
|
||||||
} elseif (preg_match('/category:/', $this->type)) {
|
} elseif (preg_match('/category:/', $this->type)) {
|
||||||
|
require_once DOL_DOCUMENT_ROOT.'/categories/class/categorie.class.php';
|
||||||
$c = new Categorie($this->db);
|
$c = new Categorie($this->db);
|
||||||
$result = $c->fetch($this->fieldValue);
|
$result = $c->fetch($this->fieldValue);
|
||||||
if ($result < 0) {
|
if ($result < 0) {
|
||||||
|
|||||||
@ -128,46 +128,46 @@ function rebuildObjectClass($destdir, $module, $objectname, $newmask, $readdir =
|
|||||||
$texttoinsert .= " 'position'=>".($val['position'] !== '' ? $val['position'] : 50).",";
|
$texttoinsert .= " 'position'=>".($val['position'] !== '' ? $val['position'] : 50).",";
|
||||||
$texttoinsert .= " 'notnull'=>".(empty($val['notnull']) ? 0 : $val['notnull']).",";
|
$texttoinsert .= " 'notnull'=>".(empty($val['notnull']) ? 0 : $val['notnull']).",";
|
||||||
$texttoinsert .= " 'visible'=>".($val['visible'] !== '' ? $val['visible'] : -1).",";
|
$texttoinsert .= " 'visible'=>".($val['visible'] !== '' ? $val['visible'] : -1).",";
|
||||||
if ($val['noteditable']) {
|
if (!empty($val['noteditable'])) {
|
||||||
$texttoinsert .= " 'noteditable'=>'".$val['noteditable']."',";
|
$texttoinsert .= " 'noteditable'=>'".$val['noteditable']."',";
|
||||||
}
|
}
|
||||||
if ($val['default'] || $val['default'] === '0') {
|
if (!empty($val['default']) || (isset($val['default']) && $val['default'] === '0')) {
|
||||||
$texttoinsert .= " 'default'=>'".$val['default']."',";
|
$texttoinsert .= " 'default'=>'".$val['default']."',";
|
||||||
}
|
}
|
||||||
if ($val['index']) {
|
if (!empty($val['index'])) {
|
||||||
$texttoinsert .= " 'index'=>".$val['index'].",";
|
$texttoinsert .= " 'index'=>".$val['index'].",";
|
||||||
}
|
}
|
||||||
if ($val['foreignkey']) {
|
if (!empty($val['foreignkey'])) {
|
||||||
$texttoinsert .= " 'foreignkey'=>'".$val['foreignkey']."',";
|
$texttoinsert .= " 'foreignkey'=>'".$val['foreignkey']."',";
|
||||||
}
|
}
|
||||||
if ($val['searchall']) {
|
if (!empty($val['searchall'])) {
|
||||||
$texttoinsert .= " 'searchall'=>".$val['searchall'].",";
|
$texttoinsert .= " 'searchall'=>".$val['searchall'].",";
|
||||||
}
|
}
|
||||||
if ($val['isameasure']) {
|
if (!empty($val['isameasure'])) {
|
||||||
$texttoinsert .= " 'isameasure'=>'".$val['isameasure']."',";
|
$texttoinsert .= " 'isameasure'=>'".$val['isameasure']."',";
|
||||||
}
|
}
|
||||||
if ($val['css']) {
|
if (!empty($val['css'])) {
|
||||||
$texttoinsert .= " 'css'=>'".$val['css']."',";
|
$texttoinsert .= " 'css'=>'".$val['css']."',";
|
||||||
}
|
}
|
||||||
if ($val['cssview']) {
|
if (!empty($val['cssview'])) {
|
||||||
$texttoinsert .= " 'cssview'=>'".$val['cssview']."',";
|
$texttoinsert .= " 'cssview'=>'".$val['cssview']."',";
|
||||||
}
|
}
|
||||||
if ($val['csslist']) {
|
if (!empty($val['csslist'])) {
|
||||||
$texttoinsert .= " 'csslist'=>'".$val['csslist']."',";
|
$texttoinsert .= " 'csslist'=>'".$val['csslist']."',";
|
||||||
}
|
}
|
||||||
if ($val['help']) {
|
if (!empty($val['help'])) {
|
||||||
$texttoinsert .= " 'help'=>\"".preg_replace('/"/', '', $val['help'])."\",";
|
$texttoinsert .= " 'help'=>\"".preg_replace('/"/', '', $val['help'])."\",";
|
||||||
}
|
}
|
||||||
if ($val['showoncombobox']) {
|
if (!empty($val['showoncombobox'])) {
|
||||||
$texttoinsert .= " 'showoncombobox'=>'".$val['showoncombobox']."',";
|
$texttoinsert .= " 'showoncombobox'=>'".$val['showoncombobox']."',";
|
||||||
}
|
}
|
||||||
if ($val['disabled']) {
|
if (!empty($val['disabled'])) {
|
||||||
$texttoinsert .= " 'disabled'=>'".$val['disabled']."',";
|
$texttoinsert .= " 'disabled'=>'".$val['disabled']."',";
|
||||||
}
|
}
|
||||||
if ($val['autofocusoncreate']) {
|
if (!empty($val['autofocusoncreate'])) {
|
||||||
$texttoinsert .= " 'autofocusoncreate'=>'".$val['autofocusoncreate']."',";
|
$texttoinsert .= " 'autofocusoncreate'=>'".$val['autofocusoncreate']."',";
|
||||||
}
|
}
|
||||||
if ($val['arrayofkeyval']) {
|
if (!empty($val['arrayofkeyval'])) {
|
||||||
$texttoinsert .= " 'arrayofkeyval'=>array(";
|
$texttoinsert .= " 'arrayofkeyval'=>array(";
|
||||||
$i = 0;
|
$i = 0;
|
||||||
foreach ($val['arrayofkeyval'] as $key2 => $val2) {
|
foreach ($val['arrayofkeyval'] as $key2 => $val2) {
|
||||||
@ -179,10 +179,10 @@ function rebuildObjectClass($destdir, $module, $objectname, $newmask, $readdir =
|
|||||||
}
|
}
|
||||||
$texttoinsert .= "),";
|
$texttoinsert .= "),";
|
||||||
}
|
}
|
||||||
if ($val['validate']) {
|
if (!empty($val['validate'])) {
|
||||||
$texttoinsert .= " 'validate'=>'".$val['validate']."',";
|
$texttoinsert .= " 'validate'=>'".$val['validate']."',";
|
||||||
}
|
}
|
||||||
if ($val['comment']) {
|
if (!empty($val['comment'])) {
|
||||||
$texttoinsert .= " 'comment'=>\"".preg_replace('/"/', '', $val['comment'])."\"";
|
$texttoinsert .= " 'comment'=>\"".preg_replace('/"/', '', $val['comment'])."\"";
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -314,7 +314,7 @@ function rebuildObjectSql($destdir, $module, $objectname, $newmask, $readdir = '
|
|||||||
if ($key == 'entity') {
|
if ($key == 'entity') {
|
||||||
$texttoinsert .= ' DEFAULT 1';
|
$texttoinsert .= ' DEFAULT 1';
|
||||||
} else {
|
} else {
|
||||||
if ($val['default'] != '') {
|
if (!empty($val['default'])) {
|
||||||
if (preg_match('/^null$/i', $val['default'])) {
|
if (preg_match('/^null$/i', $val['default'])) {
|
||||||
$texttoinsert .= " DEFAULT NULL";
|
$texttoinsert .= " DEFAULT NULL";
|
||||||
} elseif (preg_match('/varchar/', $type)) {
|
} elseif (preg_match('/varchar/', $type)) {
|
||||||
|
|||||||
@ -467,7 +467,7 @@ class modSociete extends DolibarrModules
|
|||||||
's.nom' => "Name*",
|
's.nom' => "Name*",
|
||||||
's.name_alias' => "AliasNameShort",
|
's.name_alias' => "AliasNameShort",
|
||||||
's.parent' => "ParentCompany",
|
's.parent' => "ParentCompany",
|
||||||
's.status' => "Status",
|
's.status' => "Status*",
|
||||||
's.code_client' => "CustomerCode",
|
's.code_client' => "CustomerCode",
|
||||||
's.code_fournisseur' => "SupplierCode",
|
's.code_fournisseur' => "SupplierCode",
|
||||||
's.code_compta' => "CustomerAccountancyCode",
|
's.code_compta' => "CustomerAccountancyCode",
|
||||||
|
|||||||
@ -523,9 +523,9 @@ class pdf_squille extends ModelePdfReception
|
|||||||
while ($pagenb < $pageposafter) {
|
while ($pagenb < $pageposafter) {
|
||||||
$pdf->setPage($pagenb);
|
$pdf->setPage($pagenb);
|
||||||
if ($pagenb == 1) {
|
if ($pagenb == 1) {
|
||||||
$this->_tableau($pdf, $tab_top, $this->page_hauteur - $tab_top - $heightforfooter, 0, $outputlangs, 0, 1);
|
$this->_tableau($pdf, $tab_top, $this->page_hauteur - $tab_top - $heightforfooter, 0, $outputlangs, 0, 1, $object);
|
||||||
} else {
|
} else {
|
||||||
$this->_tableau($pdf, $tab_top_newpage, $this->page_hauteur - $tab_top_newpage - $heightforfooter, 0, $outputlangs, 1, 1);
|
$this->_tableau($pdf, $tab_top_newpage, $this->page_hauteur - $tab_top_newpage - $heightforfooter, 0, $outputlangs, 1, 1, $object);
|
||||||
}
|
}
|
||||||
$this->_pagefoot($pdf, $object, $outputlangs, 1);
|
$this->_pagefoot($pdf, $object, $outputlangs, 1);
|
||||||
$pagenb++;
|
$pagenb++;
|
||||||
@ -534,9 +534,9 @@ class pdf_squille extends ModelePdfReception
|
|||||||
}
|
}
|
||||||
if (isset($object->lines[$i + 1]->pagebreak) && $object->lines[$i + 1]->pagebreak) {
|
if (isset($object->lines[$i + 1]->pagebreak) && $object->lines[$i + 1]->pagebreak) {
|
||||||
if ($pagenb == 1) {
|
if ($pagenb == 1) {
|
||||||
$this->_tableau($pdf, $tab_top, $this->page_hauteur - $tab_top - $heightforfooter, 0, $outputlangs, 0, 1);
|
$this->_tableau($pdf, $tab_top, $this->page_hauteur - $tab_top - $heightforfooter, 0, $outputlangs, 0, 1, $object);
|
||||||
} else {
|
} else {
|
||||||
$this->_tableau($pdf, $tab_top_newpage, $this->page_hauteur - $tab_top_newpage - $heightforfooter, 0, $outputlangs, 1, 1);
|
$this->_tableau($pdf, $tab_top_newpage, $this->page_hauteur - $tab_top_newpage - $heightforfooter, 0, $outputlangs, 1, 1, $object);
|
||||||
}
|
}
|
||||||
$this->_pagefoot($pdf, $object, $outputlangs, 1);
|
$this->_pagefoot($pdf, $object, $outputlangs, 1);
|
||||||
// New page
|
// New page
|
||||||
@ -550,10 +550,10 @@ class pdf_squille extends ModelePdfReception
|
|||||||
|
|
||||||
// Show square
|
// Show square
|
||||||
if ($pagenb == 1) {
|
if ($pagenb == 1) {
|
||||||
$this->_tableau($pdf, $tab_top, $this->page_hauteur - $tab_top - $heightforinfotot - $heightforfreetext - $heightforfooter, 0, $outputlangs, 0, 0);
|
$this->_tableau($pdf, $tab_top, $this->page_hauteur - $tab_top - $heightforinfotot - $heightforfreetext - $heightforfooter, 0, $outputlangs, 0, 0, $object);
|
||||||
$bottomlasttab = $this->page_hauteur - $heightforinfotot - $heightforfreetext - $heightforfooter + 1;
|
$bottomlasttab = $this->page_hauteur - $heightforinfotot - $heightforfreetext - $heightforfooter + 1;
|
||||||
} else {
|
} else {
|
||||||
$this->_tableau($pdf, $tab_top_newpage, $this->page_hauteur - $tab_top_newpage - $heightforinfotot - $heightforfreetext - $heightforfooter, 0, $outputlangs, 1, 0);
|
$this->_tableau($pdf, $tab_top_newpage, $this->page_hauteur - $tab_top_newpage - $heightforinfotot - $heightforfreetext - $heightforfooter, 0, $outputlangs, 1, 0, $object);
|
||||||
$bottomlasttab = $this->page_hauteur - $heightforinfotot - $heightforfreetext - $heightforfooter + 1;
|
$bottomlasttab = $this->page_hauteur - $heightforinfotot - $heightforfreetext - $heightforfooter + 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -719,9 +719,10 @@ class pdf_squille extends ModelePdfReception
|
|||||||
* @param Translate $outputlangs Langs object
|
* @param Translate $outputlangs Langs object
|
||||||
* @param int $hidetop Hide top bar of array
|
* @param int $hidetop Hide top bar of array
|
||||||
* @param int $hidebottom Hide bottom bar of array
|
* @param int $hidebottom Hide bottom bar of array
|
||||||
|
* @param Object|NULL $object Object reception to generate
|
||||||
* @return void
|
* @return void
|
||||||
*/
|
*/
|
||||||
protected function _tableau(&$pdf, $tab_top, $tab_height, $nexY, $outputlangs, $hidetop = 0, $hidebottom = 0)
|
protected function _tableau(&$pdf, $tab_top, $tab_height, $nexY, $outputlangs, $hidetop = 0, $hidebottom = 0, $object = null)
|
||||||
{
|
{
|
||||||
global $conf;
|
global $conf;
|
||||||
|
|
||||||
@ -767,7 +768,18 @@ class pdf_squille extends ModelePdfReception
|
|||||||
$pdf->line($this->posxqtytoship - 1, $tab_top, $this->posxqtytoship - 1, $tab_top + $tab_height);
|
$pdf->line($this->posxqtytoship - 1, $tab_top, $this->posxqtytoship - 1, $tab_top + $tab_height);
|
||||||
if (empty($hidetop)) {
|
if (empty($hidetop)) {
|
||||||
$pdf->SetXY($this->posxqtytoship, $tab_top + 1);
|
$pdf->SetXY($this->posxqtytoship, $tab_top + 1);
|
||||||
$pdf->MultiCell(($this->posxpuht - $this->posxqtytoship), 2, $outputlangs->transnoentities("QtyToReceive"), '', 'C');
|
$statusreceived = Reception::STATUS_CLOSED;
|
||||||
|
if (getDolGlobalInt("STOCK_CALCULATE_ON_RECEPTION")) {
|
||||||
|
$statusreceived = Reception::STATUS_VALIDATED;
|
||||||
|
}
|
||||||
|
if (getDolGlobalInt("STOCK_CALCULATE_ON_RECEPTION_CLOSE")) {
|
||||||
|
$statusreceived = Reception::STATUS_CLOSED;
|
||||||
|
}
|
||||||
|
if ($object && $object->statut < $statusreceived) {
|
||||||
|
$pdf->MultiCell(($this->posxpuht - $this->posxqtytoship), 2, $outputlangs->transnoentities('QtyToReceive'), '', 'C');
|
||||||
|
} else {
|
||||||
|
$pdf->MultiCell(($this->posxpuht - $this->posxqtytoship), 2, $outputlangs->transnoentities('QtyReceived'), '', 'C');
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!empty($conf->global->MAIN_PDF_RECEPTION_DISPLAY_AMOUNT_HT)) {
|
if (!empty($conf->global->MAIN_PDF_RECEPTION_DISPLAY_AMOUNT_HT)) {
|
||||||
|
|||||||
@ -948,15 +948,14 @@ if (!empty($usemargins) && $user->rights->margins->creer) {
|
|||||||
var discount = parseFloat($('option:selected', this).attr('data-discount'));
|
var discount = parseFloat($('option:selected', this).attr('data-discount'));
|
||||||
if (isNaN(discount)) { discount = parseFloat(jQuery('#idprodfournprice').attr('data-discount'));}
|
if (isNaN(discount)) { discount = parseFloat(jQuery('#idprodfournprice').attr('data-discount'));}
|
||||||
|
|
||||||
var tva_tx = parseFloat($('option:selected', this).data('tvatx'));
|
/* var tva_tx = $('option:selected', this).data('tvatx'); */
|
||||||
|
|
||||||
console.log("We find supplier price :"+up+" qty: "+qty+" discount: "+discount+" for product "+jQuery('#idprodfournprice').val());
|
console.log("We find supplier price :"+up+" qty: "+qty+" tva_tx="+tva_tx+" discount: "+discount+" for product "+jQuery('#idprodfournprice').val());
|
||||||
|
|
||||||
jQuery("#price_ht").val(up);
|
jQuery("#price_ht").val(up);
|
||||||
$('#tva_tx option').removeAttr('selected').filter('[value='+tva_tx+']').prop('selected', true);
|
/* $('#tva_tx option').removeAttr('selected').filter('[value='+tva_tx+']').prop('selected', true); */
|
||||||
|
|
||||||
if (jQuery("#qty").val() < qty)
|
if (jQuery("#qty").val() < qty) {
|
||||||
{
|
|
||||||
jQuery("#qty").val(qty);
|
jQuery("#qty").val(qty);
|
||||||
}
|
}
|
||||||
if (jQuery("#remise_percent").val() < discount)
|
if (jQuery("#remise_percent").val() < discount)
|
||||||
|
|||||||
@ -166,7 +166,7 @@ if ($action == 'add') {
|
|||||||
|
|
||||||
// on récupère les enregistrements
|
// on récupère les enregistrements
|
||||||
$object->fetch($id);
|
$object->fetch($id);
|
||||||
|
$res = $object->fetch_lines();
|
||||||
// on transfert les données de l'un vers l'autre
|
// on transfert les données de l'un vers l'autre
|
||||||
if ($object->socid > 0) {
|
if ($object->socid > 0) {
|
||||||
$newinter->socid = $object->socid;
|
$newinter->socid = $object->socid;
|
||||||
@ -178,6 +178,7 @@ if ($action == 'add') {
|
|||||||
|
|
||||||
$newinter->entity = $object->entity;
|
$newinter->entity = $object->entity;
|
||||||
$newinter->duree = $object->duree;
|
$newinter->duree = $object->duree;
|
||||||
|
$newinter->datei = $object->date;
|
||||||
|
|
||||||
$newinter->description = $object->description;
|
$newinter->description = $object->description;
|
||||||
$newinter->note_private = $object->note_private;
|
$newinter->note_private = $object->note_private;
|
||||||
@ -194,7 +195,7 @@ if ($action == 'add') {
|
|||||||
if ($newfichinterid > 0) {
|
if ($newfichinterid > 0) {
|
||||||
// Now we add line of details
|
// Now we add line of details
|
||||||
foreach ($object->lines as $line) {
|
foreach ($object->lines as $line) {
|
||||||
$newinter->addline($user, $newfichinterid, $line->desc, '', $line->duree, '');
|
$newinter->addline($user, $newfichinterid, $line->desc, $line->datei, $line->duree, '');
|
||||||
}
|
}
|
||||||
|
|
||||||
// on update le nombre d'inter crée à partir du modèle
|
// on update le nombre d'inter crée à partir du modèle
|
||||||
@ -737,7 +738,7 @@ if ($action == 'create') {
|
|||||||
print '<div class="inline-block divButAction">';
|
print '<div class="inline-block divButAction">';
|
||||||
print '<a class="butAction" href="'.$_SERVER['PHP_SELF'].'?action=createfrommodel&token='.newToken().'';
|
print '<a class="butAction" href="'.$_SERVER['PHP_SELF'].'?action=createfrommodel&token='.newToken().'';
|
||||||
print '&socid='.$object->thirdparty->id.'&id='.$object->id.'">';
|
print '&socid='.$object->thirdparty->id.'&id='.$object->id.'">';
|
||||||
print $langs->trans("CreateFichInter").'</a></div>';
|
print $langs->trans("AddIntervention").'</a></div>';
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($user->rights->ficheinter->supprimer) {
|
if ($user->rights->ficheinter->supprimer) {
|
||||||
|
|||||||
@ -1349,7 +1349,6 @@ class Fichinter extends CommonObject
|
|||||||
$line->fetch_optionals();
|
$line->fetch_optionals();
|
||||||
|
|
||||||
$this->lines[$i] = $line;
|
$this->lines[$i] = $line;
|
||||||
|
|
||||||
$i++;
|
$i++;
|
||||||
}
|
}
|
||||||
$this->db->free($resql);
|
$this->db->free($resql);
|
||||||
|
|||||||
@ -351,7 +351,7 @@ class FichinterRec extends Fichinter
|
|||||||
$this->lines = array();
|
$this->lines = array();
|
||||||
|
|
||||||
$sql = 'SELECT l.rowid, l.fk_product, l.product_type as product_type, l.label as custom_label, l.description, ';
|
$sql = 'SELECT l.rowid, l.fk_product, l.product_type as product_type, l.label as custom_label, l.description, ';
|
||||||
$sql .= ' l.price, l.qty, l.tva_tx, l.remise, l.remise_percent, l.subprice, l.duree, ';
|
$sql .= ' l.price, l.qty, l.tva_tx, l.remise_percent, l.subprice, l.duree, ';
|
||||||
$sql .= ' l.total_ht, l.total_tva, l.total_ttc,';
|
$sql .= ' l.total_ht, l.total_tva, l.total_ttc,';
|
||||||
$sql .= ' l.rang, l.special_code,';
|
$sql .= ' l.rang, l.special_code,';
|
||||||
$sql .= ' l.fk_unit, p.ref as product_ref, p.fk_product_type as fk_product_type,';
|
$sql .= ' l.fk_unit, p.ref as product_ref, p.fk_product_type as fk_product_type,';
|
||||||
@ -370,7 +370,6 @@ class FichinterRec extends Fichinter
|
|||||||
$objp = $this->db->fetch_object($result);
|
$objp = $this->db->fetch_object($result);
|
||||||
|
|
||||||
$line = new FichinterLigne($this->db);
|
$line = new FichinterLigne($this->db);
|
||||||
|
|
||||||
$line->id = $objp->rowid;
|
$line->id = $objp->rowid;
|
||||||
$line->label = $objp->custom_label; // Label line
|
$line->label = $objp->custom_label; // Label line
|
||||||
$line->desc = $objp->description; // Description line
|
$line->desc = $objp->description; // Description line
|
||||||
@ -390,8 +389,6 @@ class FichinterRec extends Fichinter
|
|||||||
$line->fk_product = $objp->fk_product;
|
$line->fk_product = $objp->fk_product;
|
||||||
$line->date_start = $objp->date_start;
|
$line->date_start = $objp->date_start;
|
||||||
$line->date_end = $objp->date_end;
|
$line->date_end = $objp->date_end;
|
||||||
$line->date_start = $objp->date_start;
|
|
||||||
$line->date_end = $objp->date_end;
|
|
||||||
$line->info_bits = $objp->info_bits;
|
$line->info_bits = $objp->info_bits;
|
||||||
$line->total_ht = $objp->total_ht;
|
$line->total_ht = $objp->total_ht;
|
||||||
$line->total_tva = $objp->total_tva;
|
$line->total_tva = $objp->total_tva;
|
||||||
|
|||||||
@ -1469,7 +1469,7 @@ if ($dirins && $action == 'addproperty' && empty($cancel) && !empty($module) &&
|
|||||||
setEventMessages($langs->trans("ErrorFieldRequired", $langs->transnoentities("Type")), null, 'errors');
|
setEventMessages($langs->trans("ErrorFieldRequired", $langs->transnoentities("Type")), null, 'errors');
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!$error) {
|
if (!$error && !GETPOST('regenerateclasssql')&& !GETPOST('regeneratemissing')) {
|
||||||
$addfieldentry = array(
|
$addfieldentry = array(
|
||||||
'name'=>GETPOST('propname', 'aZ09'),
|
'name'=>GETPOST('propname', 'aZ09'),
|
||||||
'label'=>GETPOST('proplabel', 'alpha'),
|
'label'=>GETPOST('proplabel', 'alpha'),
|
||||||
@ -1492,10 +1492,13 @@ if ($dirins && $action == 'addproperty' && empty($cancel) && !empty($module) &&
|
|||||||
'validate' => GETPOST('propvalidate', 'int')
|
'validate' => GETPOST('propvalidate', 'int')
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|
||||||
if (!empty($addfieldentry['arrayofkeyval']) && !is_array($addfieldentry['arrayofkeyval'])) {
|
if (!empty($addfieldentry['arrayofkeyval']) && !is_array($addfieldentry['arrayofkeyval'])) {
|
||||||
$addfieldentry['arrayofkeyval'] = json_decode($addfieldentry['arrayofkeyval'], true);
|
$addfieldentry['arrayofkeyval'] = json_decode($addfieldentry['arrayofkeyval'], true);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
} else {
|
||||||
|
$addfieldentry = array();
|
||||||
}
|
}
|
||||||
|
|
||||||
/*if (GETPOST('regeneratemissing'))
|
/*if (GETPOST('regeneratemissing'))
|
||||||
|
|||||||
@ -220,7 +220,7 @@ if ($action == "view_ticketlist") {
|
|||||||
$search_array_options = $extrafields->getOptionalsFromPost($object->table_element, '', 'search_');
|
$search_array_options = $extrafields->getOptionalsFromPost($object->table_element, '', 'search_');
|
||||||
|
|
||||||
$filter = array();
|
$filter = array();
|
||||||
$param = 'action=view_ticketlist';
|
$param = '&action=view_ticketlist';
|
||||||
if (!empty($entity) && !empty($conf->multicompany->enabled)) {
|
if (!empty($entity) && !empty($conf->multicompany->enabled)) {
|
||||||
$param .= '&entity='.$entity;
|
$param .= '&entity='.$entity;
|
||||||
}
|
}
|
||||||
@ -398,7 +398,7 @@ if ($action == "view_ticketlist") {
|
|||||||
$resql = $db->query($sql);
|
$resql = $db->query($sql);
|
||||||
if ($resql) {
|
if ($resql) {
|
||||||
$num = $db->num_rows($resql);
|
$num = $db->num_rows($resql);
|
||||||
print_barre_liste($langs->trans('TicketList'), $page, 'public/list.php', $param, $sortfield, $sortorder, '', $num, $num_total, 'ticket');
|
print_barre_liste($langs->trans('TicketList'), $page, '/public/ticket/list.php', $param, $sortfield, $sortorder, '', $num, $num_total, 'ticket');
|
||||||
|
|
||||||
// Search bar
|
// Search bar
|
||||||
print '<form method="POST" action="'.$_SERVER['PHP_SELF'].(!empty($entity) && !empty($conf->multicompany->enabled)?'?entity='.$entity:'').'" id="searchFormList" >'."\n";
|
print '<form method="POST" action="'.$_SERVER['PHP_SELF'].(!empty($entity) && !empty($conf->multicompany->enabled)?'?entity='.$entity:'').'" id="searchFormList" >'."\n";
|
||||||
|
|||||||
@ -1308,8 +1308,102 @@ if (is_object($objcanvas) && $objcanvas->displayCanvasExists($action)) {
|
|||||||
print '<span id="TypeName" class="fieldrequired">'.$form->editfieldkey('ThirdPartyName', 'name', '', $object, 0).'</span>';
|
print '<span id="TypeName" class="fieldrequired">'.$form->editfieldkey('ThirdPartyName', 'name', '', $object, 0).'</span>';
|
||||||
}
|
}
|
||||||
print '</td><td'.(empty($conf->global->SOCIETE_USEPREFIX) ? ' colspan="3"' : '').'>';
|
print '</td><td'.(empty($conf->global->SOCIETE_USEPREFIX) ? ' colspan="3"' : '').'>';
|
||||||
|
|
||||||
print '<input type="text" class="minwidth300" maxlength="128" name="name" id="name" value="'.dol_escape_htmltag($object->name).'" autofocus="autofocus">';
|
print '<input type="text" class="minwidth300" maxlength="128" name="name" id="name" value="'.dol_escape_htmltag($object->name).'" autofocus="autofocus">';
|
||||||
print $form->widgetForTranslation("name", $object, $permissiontoadd, 'string', 'alpahnohtml', 'minwidth300');
|
print $form->widgetForTranslation("name", $object, $permissiontoadd, 'string', 'alpahnohtml', 'minwidth300');
|
||||||
|
/* Disabled. Must be implenteted by keeping the input text but calling ajax on a keydown of the input and output
|
||||||
|
data of duplicate into a div under the input. We need to keep the widgetForTranslation also for some countries.
|
||||||
|
*/
|
||||||
|
/*
|
||||||
|
print '<select class="name" name="name" id="name" style="min-width:500px"></select>';
|
||||||
|
print "\n".'<script type="text/javascript">';
|
||||||
|
print '$(document).ready(function () {
|
||||||
|
$("#name").select2({
|
||||||
|
ajax: {
|
||||||
|
url: "' . DOL_URL_ROOT . '/core/ajax/ajaxcompanies.php",
|
||||||
|
dataType: "json",
|
||||||
|
delay: 250,
|
||||||
|
data: function (params) {
|
||||||
|
return {
|
||||||
|
newcompany: params.term // search term
|
||||||
|
};
|
||||||
|
},
|
||||||
|
processResults: function (data, params) {
|
||||||
|
return {
|
||||||
|
results: data
|
||||||
|
};
|
||||||
|
},
|
||||||
|
cache: true
|
||||||
|
},
|
||||||
|
|
||||||
|
placeholder: "' . $langs->trans('Name of the new third party. In the meantime we check if it already exists...') . '",
|
||||||
|
allowClear: true,
|
||||||
|
minimumInputLength: 3,
|
||||||
|
language: select2arrayoflanguage,
|
||||||
|
containerCssClass: ":all:",
|
||||||
|
selectionCssClass: ":all:",
|
||||||
|
tags: true,
|
||||||
|
templateResult: formatCustomer,
|
||||||
|
templateSelection: formatCustomerSelection
|
||||||
|
});
|
||||||
|
|
||||||
|
function formatCustomer (Customer) {
|
||||||
|
if(Customer.label === undefined) {
|
||||||
|
return Customer.text;
|
||||||
|
}
|
||||||
|
|
||||||
|
if(Customer.logo !== null ) {
|
||||||
|
logo = \'<img src="\';
|
||||||
|
logo += \'' . DOL_URL_ROOT . '/viewimage.php?modulepart=societe&entity=1&file=\' + Customer.key + "%2Flogos%2Fthumbs%2F" + Customer.logo.replace(".", "_mini.") + "&cache=0";
|
||||||
|
logo += \'" /></div>\';
|
||||||
|
} else {
|
||||||
|
logo = \'<div class="floatleft inline-block valigntop photowithmargin" style="padding:0 10px"><div class="photosociete photoref" alt="No photo"><span class="fas fa-building" style="color: #6c6aa8;"></span></div></div>\';
|
||||||
|
}
|
||||||
|
|
||||||
|
var $container = $("<div class=\'select2-result-repository clearfix\'>" +
|
||||||
|
"<div class=\'select2-result-repository__avatar floatleft inline-block valigntop\'>" + logo +
|
||||||
|
"<div class=\'select2-result-repository__meta floatleft inline-block valigntop\'>" +
|
||||||
|
"<div class=\'select2-result-repository__title\'></div>" +
|
||||||
|
"<div class=\'select2-result-repository__name_alias\'></div>" +
|
||||||
|
"<div class=\'select2-result-repository__code_client\'></div>" +
|
||||||
|
"<div class=\'select2-result-repository__code_fournisseur\'></div>" +
|
||||||
|
"<div class=\'select2-result-repository__companies_info\'>" +
|
||||||
|
"<div class=\'select2-result-repository__email\'><i class=\'fa fa-at\'></i> </div>" +
|
||||||
|
"<div class=\'select2-result-repository__address\'><i class=\'fa fa-flag\'></i> </div>" +
|
||||||
|
"<div class=\'select2-result-repository__zip\'><i class=\'fa fa-circle-o\'></i> </div>" +
|
||||||
|
"<div class=\'select2-result-repository__country\'><i class=\'fa fa-globe-americas\'></i> </div>" +
|
||||||
|
"<div class=\'select2-result-repository__departement\'><i class=\'fa fa-circle-o\'></i> </div>" +
|
||||||
|
"<div class=\'select2-result-repository__town\'><i class=\'fa fa-circle-o\'></i> </div>" +
|
||||||
|
"<div class=\'select2-result-repository__siren\'><i class=\'fa fa-circle-o\'></i> </div>" +
|
||||||
|
"<div class=\'select2-result-repository__datec\'><i class=\'fa fa-calendar\'></i> </div>" +
|
||||||
|
"</div>" +
|
||||||
|
"</div>" +
|
||||||
|
"</div>"
|
||||||
|
);
|
||||||
|
|
||||||
|
$container.find(".select2-result-repository__title").text(Customer.label);
|
||||||
|
$container.find(".select2-result-repository__name_alias").text(Customer.name_alias ? Customer.name_alias : "");
|
||||||
|
$container.find(".select2-result-repository__code_client").text(Customer.code_client ? Customer.code_client : "");
|
||||||
|
$container.find(".select2-result-repository__code_fournisseur").text((Customer.code_fournisseur!==null) ? Customer.code_fournisseur : "");
|
||||||
|
$container.find(".select2-result-repository__email").append("' . $langs->trans('EMail') . ': " + (Customer.email !== null ? Customer.email : ""));
|
||||||
|
$container.find(".select2-result-repository__address").append("' . $langs->trans('Address') . ': " + (Customer.address !== null ? Customer.address : ""));
|
||||||
|
$container.find(".select2-result-repository__country").append("' . $langs->trans('Country') . ': " + (Customer.country !== null ? Customer.country : ""));
|
||||||
|
$container.find(".select2-result-repository__departement").append("' . $langs->trans('Region-State') . ': " + (Customer.departement !== null ? Customer.departement : ""));
|
||||||
|
$container.find(".select2-result-repository__zip").append("' . $langs->trans('Zip') . ': " + (Customer.zip !== null ? Customer.zip : ""));
|
||||||
|
$container.find(".select2-result-repository__town").append("' . $langs->trans('Town') . ': " + (Customer.town !== null ? Customer.town : ""));
|
||||||
|
$container.find(".select2-result-repository__siren").append("' . $langs->trans('Siren') . ': " + (Customer.siren !== null ? Customer.siren : ""));
|
||||||
|
$container.find(".select2-result-repository__datec").append("' . $langs->trans('Created') . ': " + (Customer.datec !== null ? Customer.datec : ""));
|
||||||
|
|
||||||
|
return $container;
|
||||||
|
}
|
||||||
|
|
||||||
|
function formatCustomerSelection (selection) {
|
||||||
|
return selection.label || selection.text;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
</script>
|
||||||
|
';
|
||||||
|
*/
|
||||||
print '</td>';
|
print '</td>';
|
||||||
if (!empty($conf->global->SOCIETE_USEPREFIX)) { // Old not used prefix field
|
if (!empty($conf->global->SOCIETE_USEPREFIX)) { // Old not used prefix field
|
||||||
print '<td>'.$langs->trans('Prefix').'</td><td><input type="text" size="5" maxlength="5" name="prefix_comm" value="'.dol_escape_htmltag($object->prefix_comm).'"></td>';
|
print '<td>'.$langs->trans('Prefix').'</td><td><input type="text" size="5" maxlength="5" name="prefix_comm" value="'.dol_escape_htmltag($object->prefix_comm).'"></td>';
|
||||||
|
|||||||
@ -2790,6 +2790,7 @@ if (!GETPOST('hide_websitemenu')) {
|
|||||||
$htmltext .= '<br><center>'.$langs->trans("GoTo").' <a href="'.$virtualurl.'" target="_website">'.$virtualurl.'</a></center><br>';
|
$htmltext .= '<br><center>'.$langs->trans("GoTo").' <a href="'.$virtualurl.'" target="_website">'.$virtualurl.'</a></center><br>';
|
||||||
}
|
}
|
||||||
if (!empty($conf->global->WEBSITE_REPLACE_INFO_ABOUT_USAGE_WITH_WEBSERVER)) {
|
if (!empty($conf->global->WEBSITE_REPLACE_INFO_ABOUT_USAGE_WITH_WEBSERVER)) {
|
||||||
|
$htmltext .= '<!-- Message defined translate key set into WEBSITE_REPLACE_INFO_ABOUT_USAGE_WITH_WEBSERVER -->';
|
||||||
$htmltext .= '<br>'.$langs->trans($conf->global->WEBSITE_REPLACE_INFO_ABOUT_USAGE_WITH_WEBSERVER);
|
$htmltext .= '<br>'.$langs->trans($conf->global->WEBSITE_REPLACE_INFO_ABOUT_USAGE_WITH_WEBSERVER);
|
||||||
} else {
|
} else {
|
||||||
$htmltext .= $langs->trans("SetHereVirtualHost", $dataroot);
|
$htmltext .= $langs->trans("SetHereVirtualHost", $dataroot);
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user