Merge branch 'develop' of https://github.com/Dolibarr/dolibarr.git into develop
This commit is contained in:
commit
87a4418baf
@ -51,6 +51,7 @@ For users:
|
|||||||
- New : Add category into filter webservice thirdparty method getListOfThirdParties
|
- New : Add category into filter webservice thirdparty method getListOfThirdParties
|
||||||
- New : Allow to define margin or mark rate during quoting, ordering, invoicing
|
- New : Allow to define margin or mark rate during quoting, ordering, invoicing
|
||||||
- New : User permissions on margin module
|
- New : User permissions on margin module
|
||||||
|
- New : Add ref supplier into muscadet model
|
||||||
|
|
||||||
For translators:
|
For translators:
|
||||||
- Qual: Normalized sort order of all languages files with english reference files.
|
- Qual: Normalized sort order of all languages files with english reference files.
|
||||||
|
|||||||
@ -128,8 +128,10 @@ from origin/upstream and origin/pristine.
|
|||||||
Note: If there was errors managed manually, you may need to make a git commit
|
Note: If there was errors managed manually, you may need to make a git commit
|
||||||
|
|
||||||
* Add an entry into debian/changelog
|
* Add an entry into debian/changelog
|
||||||
> date -R will return formated string date to use into changelog
|
> dh "My comment" will add entry.
|
||||||
|
For example: dch -v x.y.z-1 "New upstream release." for a new version
|
||||||
|
|
||||||
|
Warning: Date must have format reported by "date -R"
|
||||||
Warning: Entry added here is used by next step. Name and email must match value into debian/control file.
|
Warning: Entry added here is used by next step. Name and email must match value into debian/control file.
|
||||||
|
|
||||||
* We try to build package
|
* We try to build package
|
||||||
@ -138,7 +140,7 @@ Warning: Entry added here is used by next step. Name and email must match value
|
|||||||
* If package .deb is ok:
|
* If package .deb is ok:
|
||||||
Note: If there was errors managed manually, you may need to make a git commit but do not use option "amend" previous commit
|
Note: If there was errors managed manually, you may need to make a git commit but do not use option "amend" previous commit
|
||||||
> git-buildpackage --git-tag
|
> git-buildpackage --git-tag
|
||||||
> git push
|
> git push --all
|
||||||
> git push --tags
|
> git push --tags
|
||||||
|
|
||||||
* Compilation par un développeur debian et envoi par
|
* Compilation par un développeur debian et envoi par
|
||||||
|
|||||||
@ -1,7 +1,6 @@
|
|||||||
dolibarr (3.5.0) unstable; urgency=low
|
dolibarr (3.5.0) unstable; urgency=low
|
||||||
|
|
||||||
|
[ Laurent Destailleur (eldy) ]
|
||||||
* New upstream release.
|
* New upstream release.
|
||||||
|
|
||||||
-- Laurent Destailleur (eldy) <eldy@users.sourceforge.net> Mon, 22 Apr 2013 12:00:00 +0100
|
-- Laurent Destailleur (eldy) <eldy@users.sourceforge.net> Mon, 22 Apr 2013 12:00:00 +0100
|
||||||
|
|
||||||
# For a changelog file dedicated to end users, see /usr/share/doc/dolibarr/ChangeLog.gz
|
|
||||||
|
|||||||
@ -59,6 +59,24 @@ License: GPL-3+
|
|||||||
`/usr/share/common-licenses/GPL-2'.
|
`/usr/share/common-licenses/GPL-2'.
|
||||||
|
|
||||||
|
|
||||||
|
Files: docs/images/*
|
||||||
|
Copyright: Laurent Destailleur
|
||||||
|
License: CC-BY-SA-3.0
|
||||||
|
You are free:
|
||||||
|
to Share (to copy, distribute and transmit the work) and
|
||||||
|
to Remix (to adapt the work) under the following conditions:
|
||||||
|
.
|
||||||
|
Attribution - You must attribute the work in the manner specified by the
|
||||||
|
author or licensor (but not in any way that suggests that they endorse you
|
||||||
|
or your use of the work).
|
||||||
|
.
|
||||||
|
Share Alike - If you alter, transform, or build upon this work, you may
|
||||||
|
distribute the resulting work only under the same, similar or a compatible
|
||||||
|
license.
|
||||||
|
.
|
||||||
|
For more information, see http://creativecommons.org/licenses/by-sa/3.0/
|
||||||
|
|
||||||
|
|
||||||
Files: htdocs/includes/fpdi/*
|
Files: htdocs/includes/fpdi/*
|
||||||
Copyright: FPDFI team
|
Copyright: FPDFI team
|
||||||
License: GPL-2+
|
License: GPL-2+
|
||||||
|
|||||||
40
build/debian/get-orig-source.sh
Executable file
40
build/debian/get-orig-source.sh
Executable file
@ -0,0 +1,40 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
# run with
|
||||||
|
# debian/get-orig-source.sh [x.y.z]
|
||||||
|
|
||||||
|
tmpdir=$(mktemp -d)
|
||||||
|
echo "tmpdir = $tmpdir"
|
||||||
|
|
||||||
|
if [ -n "$1" ]; then
|
||||||
|
uscan_opts="--download-version=$1"
|
||||||
|
fi
|
||||||
|
uscan --noconf --force-download --no-symlink --verbose --destdir=$tmpdir $uscan_opts
|
||||||
|
|
||||||
|
cd $tmpdir
|
||||||
|
|
||||||
|
tgzfile=$(echo *.tar.gz)
|
||||||
|
version=$(echo "$tgzfile" | perl -pi -e 's/^dolibarr_//; s/\.zip$//; s/_/./g; s/\+nmu1//; s/$/+dfsg/;')
|
||||||
|
|
||||||
|
# Extract the zip file
|
||||||
|
tar -xvf $tgzfile
|
||||||
|
srcdir=$(find . -maxdepth 1 -mindepth 1 -type d | sed -e 's/\.\///')
|
||||||
|
|
||||||
|
if [ ! -d "$srcdir" ]; then
|
||||||
|
echo "ERROR: Failed to identify the extracted directory in $tmpdir (got $srcdir)" >&2
|
||||||
|
rm -rf $tmpdir
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Repack as tar.xz
|
||||||
|
tar Jcf dolibarr_${version}.orig.tar.xz $srcdir
|
||||||
|
|
||||||
|
cd - >/dev/null
|
||||||
|
|
||||||
|
if [ -e ../dolibarr_${version}.orig.tar.xz ]; then
|
||||||
|
echo "Not overwriting ../dolibarr_${version}.orig.tar.xz";
|
||||||
|
else
|
||||||
|
echo "Created ../dolibarr_${version}.orig.tar.xz"
|
||||||
|
mv $tmpdir/dolibarr_${version}.orig.tar.xz ../
|
||||||
|
fi
|
||||||
|
|
||||||
|
#rm -rf $tmpdir
|
||||||
@ -1,4 +1,5 @@
|
|||||||
# watch control file for uscan
|
# watch control file for uscan
|
||||||
version=3
|
version=3
|
||||||
|
|
||||||
http://sf.net/dolibarr/dolibarr-(.+)\.tgz
|
#http://sf.net/dolibarr/dolibarr-(.+)\.tgz
|
||||||
|
http://www.dolibarr.org/files/stable/package_debian-ubuntu/dolibarr_(.+)\.tar\.gz
|
||||||
|
|||||||
@ -552,7 +552,7 @@ if ($nboftargetok) {
|
|||||||
$build = $newbuild;
|
$build = $newbuild;
|
||||||
$build =~ s/-.*$//g;
|
$build =~ s/-.*$//g;
|
||||||
# now build is 0 for example
|
# now build is 0 for example
|
||||||
# "$build .= '+nmu1';
|
# $build .= '+nmu1';
|
||||||
# now build is 0+nmu1 for example
|
# now build is 0+nmu1 for example
|
||||||
|
|
||||||
print "Remove target ${FILENAMEDEB}_all.deb...\n";
|
print "Remove target ${FILENAMEDEB}_all.deb...\n";
|
||||||
|
|||||||
@ -30,7 +30,7 @@ return "Regis Houssin";
|
|||||||
# script_dolibarr_versions()
|
# script_dolibarr_versions()
|
||||||
sub script_dolibarr_versions
|
sub script_dolibarr_versions
|
||||||
{
|
{
|
||||||
return ( "3.5.0", "3.4.0", "3.3.3", "3.3.2", "3.3.1", "3.3.0", "3.2.1", "3.1.1" );
|
return ( "3.5.0", "3.4.1", "3.4.0", "3.3.3", "3.3.2", "3.3.1", "3.3.0", "3.2.1", "3.1.1" );
|
||||||
}
|
}
|
||||||
|
|
||||||
sub script_dolibarr_category
|
sub script_dolibarr_category
|
||||||
|
|||||||
Binary file not shown.
|
Before Width: | Height: | Size: 41 KiB After Width: | Height: | Size: 40 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 7.6 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 11 KiB |
@ -55,11 +55,8 @@ p {
|
|||||||
|
|
||||||
/* ------------------- Menu ------------------- */
|
/* ------------------- Menu ------------------- */
|
||||||
.menu_principal {
|
.menu_principal {
|
||||||
margin: 0 auto;
|
margin: 0 20px 20px 15px;
|
||||||
margin-left: 15px;
|
font-size: 14px;
|
||||||
margin-bottom: 20px;
|
|
||||||
margin-right: 20px;
|
|
||||||
font-size: 14px;
|
|
||||||
width: 735px;
|
width: 735px;
|
||||||
height: 84px;
|
height: 84px;
|
||||||
background: #CCCCCC;
|
background: #CCCCCC;
|
||||||
@ -77,9 +74,8 @@ p {
|
|||||||
|
|
||||||
.menu {
|
.menu {
|
||||||
margin: 0;
|
margin: 0;
|
||||||
padding: 0;
|
list-style-type: none;
|
||||||
list-style-type: none;
|
padding: 10px 0 0;
|
||||||
padding-top: 10px;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.menu li {
|
.menu li {
|
||||||
@ -143,9 +139,8 @@ p {
|
|||||||
}
|
}
|
||||||
|
|
||||||
p.titre {
|
p.titre {
|
||||||
margin: 0;
|
margin: 0 0 20px;
|
||||||
margin-bottom: 20px;
|
text-align: center;
|
||||||
text-align: center;
|
|
||||||
font-weight: bold;
|
font-weight: bold;
|
||||||
font-size: 1.4em;
|
font-size: 1.4em;
|
||||||
color: #5ca64d;
|
color: #5ca64d;
|
||||||
@ -153,11 +148,10 @@ p.titre {
|
|||||||
}
|
}
|
||||||
|
|
||||||
.cadre_article {
|
.cadre_article {
|
||||||
margin: 0 auto;
|
width: 180px;
|
||||||
width: 180px;
|
|
||||||
text-align: center;
|
text-align: center;
|
||||||
margin-bottom: 10px;
|
margin: 0 auto 10px;
|
||||||
padding-bottom: 10px;
|
padding-bottom: 10px;
|
||||||
border-bottom: 1px solid #eee;
|
border-bottom: 1px solid #eee;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -205,10 +199,9 @@ p.titre {
|
|||||||
}
|
}
|
||||||
|
|
||||||
.formulaire_login table {
|
.formulaire_login table {
|
||||||
margin: 0 auto;
|
padding-left: 60px;
|
||||||
padding-left: 60px;
|
margin: 0 auto 20px;
|
||||||
margin-bottom: 20px;
|
background: url('../img/login.png') bottom left no-repeat;
|
||||||
background: url('../img/login.png') bottom left no-repeat;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.formulaire_login table tr {
|
.formulaire_login table tr {
|
||||||
@ -430,9 +423,8 @@ background-image: -webkit-gradient( linear, left top, left bottom, color-stop(0,
|
|||||||
/* Titre */
|
/* Titre */
|
||||||
.err_titre {
|
.err_titre {
|
||||||
font-weight: bold;
|
font-weight: bold;
|
||||||
margin: 0;
|
margin: 0 0 10px;
|
||||||
margin-bottom: 10px;
|
padding: 0;
|
||||||
padding: 0;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Description */
|
/* Description */
|
||||||
@ -454,9 +446,8 @@ background-image: -webkit-gradient( linear, left top, left bottom, color-stop(0,
|
|||||||
/* Titre */
|
/* Titre */
|
||||||
.msg_titre {
|
.msg_titre {
|
||||||
font-weight: bold;
|
font-weight: bold;
|
||||||
margin: 0;
|
margin: 0 0 10px;
|
||||||
margin-bottom: 10px;
|
padding: 0;
|
||||||
padding: 0;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Description */
|
/* Description */
|
||||||
|
|||||||
@ -508,7 +508,7 @@ class Categorie
|
|||||||
include_once DOL_DOCUMENT_ROOT . '/core/class/interfaces.class.php';
|
include_once DOL_DOCUMENT_ROOT . '/core/class/interfaces.class.php';
|
||||||
$interface=new Interfaces($this->db);
|
$interface=new Interfaces($this->db);
|
||||||
$result=$interface->run_triggers('CATEGORY_UNLINK',$this,$user,$langs,$conf);
|
$result=$interface->run_triggers('CATEGORY_UNLINK',$this,$user,$langs,$conf);
|
||||||
if ($result < 0) { $error++; $this->errors=$interface->errors; $this->error=$this->error; }
|
if ($result < 0) { $error++; $this->errors=$interface->errors; }
|
||||||
// Fin appel triggers
|
// Fin appel triggers
|
||||||
|
|
||||||
if (! $error) return 1;
|
if (! $error) return 1;
|
||||||
|
|||||||
@ -2868,7 +2868,7 @@ class Facture extends CommonInvoice
|
|||||||
$sql.= ' WHERE fk_facture = '.$this->id;
|
$sql.= ' WHERE fk_facture = '.$this->id;
|
||||||
$sql.= ' AND traite = 0';
|
$sql.= ' AND traite = 0';
|
||||||
|
|
||||||
dol_syslot(get_clas($this)."::demande_prelevement sql=".$sql);
|
dol_syslog(get_class($this)."::demande_prelevement sql=".$sql);
|
||||||
$resql=$this->db->query($sql);
|
$resql=$this->db->query($sql);
|
||||||
if ($resql)
|
if ($resql)
|
||||||
{
|
{
|
||||||
|
|||||||
@ -83,7 +83,7 @@ function pt ($db, $sql, $date)
|
|||||||
$db->free($result);
|
$db->free($result);
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
dolibar_print_error($db);
|
dol_print_error($db);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -405,10 +405,9 @@ class Paiement extends CommonObject
|
|||||||
$acc = new Account($this->db);
|
$acc = new Account($this->db);
|
||||||
$result=$acc->fetch($this->fk_account);
|
$result=$acc->fetch($this->fk_account);
|
||||||
|
|
||||||
$totalamount=$this->amount;
|
if (empty($this->amount)) $totalamount=$this->total; // For backward compatibility
|
||||||
if (empty($totalamount)) $totalamount=$this->total; // For backward compatibility
|
if ($mode == 'payment') $totalamount=$this->amount;
|
||||||
if ($mode == 'payment') $totalamount=$totalamount;
|
if ($mode == 'payment_supplier') $totalamount=-$this->amount;
|
||||||
if ($mode == 'payment_supplier') $totalamount=-$totalamount;
|
|
||||||
|
|
||||||
// Insert payment into llx_bank
|
// Insert payment into llx_bank
|
||||||
$bank_line_id = $acc->addline(
|
$bank_line_id = $acc->addline(
|
||||||
|
|||||||
@ -88,7 +88,7 @@ function pt ($db, $sql, $date)
|
|||||||
$db->free($result);
|
$db->free($result);
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
dolibar_print_error($db);
|
dol_print_error($db);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -97,7 +97,6 @@ class FormFile
|
|||||||
$max=$conf->global->MAIN_UPLOAD_DOC; // En Kb
|
$max=$conf->global->MAIN_UPLOAD_DOC; // En Kb
|
||||||
$maxphp=@ini_get('upload_max_filesize'); // En inconnu
|
$maxphp=@ini_get('upload_max_filesize'); // En inconnu
|
||||||
if (preg_match('/m$/i',$maxphp)) $maxphp=$maxphp*1024;
|
if (preg_match('/m$/i',$maxphp)) $maxphp=$maxphp*1024;
|
||||||
if (preg_match('/k$/i',$maxphp)) $maxphp=$maxphp;
|
|
||||||
// Now $max and $maxphp are in Kb
|
// Now $max and $maxphp are in Kb
|
||||||
if ($maxphp > 0) $max=min($max,$maxphp);
|
if ($maxphp > 0) $max=min($max,$maxphp);
|
||||||
|
|
||||||
|
|||||||
@ -685,7 +685,7 @@ class DoliDBSqlite
|
|||||||
*/
|
*/
|
||||||
function escape($stringtoencode)
|
function escape($stringtoencode)
|
||||||
{
|
{
|
||||||
return PDO::quote($stringtoencode);
|
return $this->db->quote($stringtoencode);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -856,7 +856,7 @@ class DoliDBSqlite
|
|||||||
*/
|
*/
|
||||||
function last_insert_id($tab,$fieldid='rowid')
|
function last_insert_id($tab,$fieldid='rowid')
|
||||||
{
|
{
|
||||||
return PDO::lastInsertId();
|
return $this->db->lastInsertId();
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
@ -43,7 +43,7 @@ body.FileArea
|
|||||||
body, td, input, select
|
body, td, input, select
|
||||||
{
|
{
|
||||||
font-size: 11px;
|
font-size: 11px;
|
||||||
font-family: 'Microsoft Sans Serif' , Arial, Helvetica, Verdana;
|
font-family: 'Microsoft Sans Serif', Arial, Helvetica, Verdana, sans-serif;
|
||||||
}
|
}
|
||||||
|
|
||||||
.ActualFolder
|
.ActualFolder
|
||||||
@ -68,12 +68,12 @@ body, td, input, select
|
|||||||
|
|
||||||
.FolderListCurrentFolder img
|
.FolderListCurrentFolder img
|
||||||
{
|
{
|
||||||
background-image: url(../../../../themes/common/treemenu/folder-expanded.gif);
|
background-image: url(../../../../theme/common/treemenu/folder-expanded.gif);
|
||||||
}
|
}
|
||||||
|
|
||||||
.FolderListFolder img
|
.FolderListFolder img
|
||||||
{
|
{
|
||||||
background-image: url(../../../../themes/common/treemenu/folder.gif);
|
background-image: url(../../../../theme/common/treemenu/folder.gif);
|
||||||
}
|
}
|
||||||
|
|
||||||
.fullHeight {
|
.fullHeight {
|
||||||
|
|||||||
@ -190,9 +190,8 @@ function dpClickDay(year,month,day,format)
|
|||||||
closeDPBox();
|
closeDPBox();
|
||||||
}
|
}
|
||||||
|
|
||||||
function dpHighlightDay(year,month,day,tradMonths){
|
function dpHighlightDay(year,month,day,months){
|
||||||
var displayinfo=getObjectFromID("dpExp");
|
var displayinfo=getObjectFromID("dpExp");
|
||||||
var months = tradMonths;
|
|
||||||
displayinfo.innerHTML=months[month-1]+" "+day+", "+year;
|
displayinfo.innerHTML=months[month-1]+" "+day+", "+year;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -478,9 +477,7 @@ function getDateFromFormat(val,format)
|
|||||||
if (seconde==null||(seconde<0)||(seconde>60)) { return 0; }
|
if (seconde==null||(seconde<0)||(seconde>60)) { return 0; }
|
||||||
|
|
||||||
// alert(year+' '+month+' '+day+' '+hour+' '+minute+' '+seconde);
|
// alert(year+' '+month+' '+day+' '+hour+' '+minute+' '+seconde);
|
||||||
var newdate=new Date(year,month-1,day,hour,minute,seconde);
|
return new Date(year,month-1,day,hour,minute,seconde);
|
||||||
|
|
||||||
return newdate;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
@ -588,8 +585,7 @@ function cleanSerialize(expr) {
|
|||||||
var reg = new RegExp("(&)", "g");
|
var reg = new RegExp("(&)", "g");
|
||||||
var reg2 = new RegExp("[^A-Z0-9,]", "g");
|
var reg2 = new RegExp("[^A-Z0-9,]", "g");
|
||||||
var liste1 = expr.replace(reg, ",");
|
var liste1 = expr.replace(reg, ",");
|
||||||
var liste = liste1.replace(reg2, "");
|
return liste = liste1.replace(reg2, "");
|
||||||
return liste;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -794,7 +790,7 @@ function confirmConstantAction(action, url, code, input, box, entity, yesButton,
|
|||||||
(function( $ ) {
|
(function( $ ) {
|
||||||
$.widget( "ui.combobox", {
|
$.widget( "ui.combobox", {
|
||||||
options: {
|
options: {
|
||||||
minLengthToAutocomplete: 0,
|
minLengthToAutocomplete: 0
|
||||||
},
|
},
|
||||||
_create: function() {
|
_create: function() {
|
||||||
var savMinLengthToAutocomplete = this.options.minLengthToAutocomplete;
|
var savMinLengthToAutocomplete = this.options.minLengthToAutocomplete;
|
||||||
|
|||||||
@ -21,14 +21,11 @@
|
|||||||
|
|
||||||
// in [-]HH:MM format...
|
// in [-]HH:MM format...
|
||||||
// won't yet work with non-even tzs
|
// won't yet work with non-even tzs
|
||||||
function fetchTimezone()
|
function fetchTimezone() {
|
||||||
{
|
var localclock = new Date(),
|
||||||
var localclock = new Date();
|
// returns negative offset from GMT in minutes
|
||||||
// returns negative offset from GMT in minutes
|
tzRaw = localclock.getTimezoneOffset(),
|
||||||
var tzRaw = localclock.getTimezoneOffset();
|
tzHour = Math.floor(Math.abs(tzRaw) / 60),
|
||||||
var tzHour = Math.floor( Math.abs(tzRaw) / 60);
|
tzMin = Math.abs(tzRaw) % 60;
|
||||||
var tzMin = Math.abs(tzRaw) % 60;
|
return ((tzRaw >= 0) ? "-" : "") + ((tzHour < 10) ? "0" : "") + tzHour + ":" + ((tzMin < 10) ? "0" : "") + tzMin;
|
||||||
var tzString = ((tzRaw >= 0) ? "-" : "") + ((tzHour < 10) ? "0" : "") + tzHour +
|
|
||||||
":" + ((tzMin < 10) ? "0" : "") + tzMin;
|
|
||||||
return tzString;
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -742,13 +742,18 @@ function dol_delete_file($file,$disableglob=0,$nophperrors=0,$nohook=0,$object=n
|
|||||||
{
|
{
|
||||||
$globencoded=str_replace('[','\[',$file_osencoded);
|
$globencoded=str_replace('[','\[',$file_osencoded);
|
||||||
$globencoded=str_replace(']','\]',$globencoded);
|
$globencoded=str_replace(']','\]',$globencoded);
|
||||||
foreach (glob($globencoded) as $filename)
|
$listofdir=glob($globencoded);
|
||||||
|
if (! empty($listofdir) && is_array($listofdir))
|
||||||
{
|
{
|
||||||
if ($nophperrors) $ok=@unlink($filename); // The unlink encapsulated by dolibarr
|
foreach ($listofdir as $filename)
|
||||||
else $ok=unlink($filename); // The unlink encapsulated by dolibarr
|
{
|
||||||
if ($ok) dol_syslog("Removed file ".$filename, LOG_DEBUG);
|
if ($nophperrors) $ok=@unlink($filename); // The unlink encapsulated by dolibarr
|
||||||
else dol_syslog("Failed to remove file ".$filename, LOG_WARNING);
|
else $ok=unlink($filename); // The unlink encapsulated by dolibarr
|
||||||
|
if ($ok) dol_syslog("Removed file ".$filename, LOG_DEBUG);
|
||||||
|
else dol_syslog("Failed to remove file ".$filename, LOG_WARNING);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
else dol_syslog("No files to delete found", LOG_WARNING);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
|||||||
@ -274,7 +274,7 @@ function dol_imageResizeOrCrop($file, $mode, $newWidth, $newHeight, $src_x=0, $s
|
|||||||
imagepng($imgThumb, $imgThumbName, $newquality);
|
imagepng($imgThumb, $imgThumbName, $newquality);
|
||||||
break;
|
break;
|
||||||
case 4: // Bmp
|
case 4: // Bmp
|
||||||
image2wmp($imgThumb, $imgThumbName);
|
image2wbmp($imgThumb, $imgThumbName);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -534,7 +534,7 @@ function vignette($file, $maxWidth = 160, $maxHeight = 120, $extName='_small', $
|
|||||||
// Not supported by PHP GD
|
// Not supported by PHP GD
|
||||||
break;
|
break;
|
||||||
case IMAGETYPE_WBMP: // 15
|
case IMAGETYPE_WBMP: // 15
|
||||||
image2wmp($imgThumb, $imgThumbName);
|
image2wbmp($imgThumb, $imgThumbName);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -211,7 +211,6 @@ class modCategorie extends DolibarrModules
|
|||||||
'u.label' => "category",
|
'u.label' => "category",
|
||||||
'u.description' => "category",
|
'u.description' => "category",
|
||||||
'p.rowid' => 'contact',
|
'p.rowid' => 'contact',
|
||||||
'p.rowid' => 'contact',
|
|
||||||
'p.civilite' => 'contact',
|
'p.civilite' => 'contact',
|
||||||
'p.lastname' => 'contact',
|
'p.lastname' => 'contact',
|
||||||
'p.firstname' => 'contact',
|
'p.firstname' => 'contact',
|
||||||
|
|||||||
@ -142,7 +142,7 @@ class modProduct extends DolibarrModules
|
|||||||
$this->export_TypeFields_array[$r]=array('p.ref'=>"Text",'p.label'=>"Text",'p.description'=>"Text",'p.accountancy_code_sell'=>"Text",'p.accountancy_code_buy'=>"Text",'p.note'=>"Text",'p.length'=>"Number",'p.surface'=>"Number",'p.volume'=>"Number",'p.weight'=>"Number",'p.customcode'=>'Text','p.price_base_type'=>"Text",'p.price'=>"Number",'p.price_ttc'=>"Number",'p.tva_tx'=>'Number','p.tosell'=>"Boolean",'p.tobuy'=>"Boolean",'p.datec'=>'Date','p.tms'=>'Date');
|
$this->export_TypeFields_array[$r]=array('p.ref'=>"Text",'p.label'=>"Text",'p.description'=>"Text",'p.accountancy_code_sell'=>"Text",'p.accountancy_code_buy'=>"Text",'p.note'=>"Text",'p.length'=>"Number",'p.surface'=>"Number",'p.volume'=>"Number",'p.weight'=>"Number",'p.customcode'=>'Text','p.price_base_type'=>"Text",'p.price'=>"Number",'p.price_ttc'=>"Number",'p.tva_tx'=>'Number','p.tosell'=>"Boolean",'p.tobuy'=>"Boolean",'p.datec'=>'Date','p.tms'=>'Date');
|
||||||
if (! empty($conf->stock->enabled)) $this->export_TypeFields_array[$r]=array_merge($this->export_TypeFields_array[$r],array('p.pmp'=>'Number'));
|
if (! empty($conf->stock->enabled)) $this->export_TypeFields_array[$r]=array_merge($this->export_TypeFields_array[$r],array('p.pmp'=>'Number'));
|
||||||
if (! empty($conf->barcode->enabled)) $this->export_TypeFields_array[$r]=array_merge($this->export_TypeFields_array[$r],array('p.barcode'=>'Text'));
|
if (! empty($conf->barcode->enabled)) $this->export_TypeFields_array[$r]=array_merge($this->export_TypeFields_array[$r],array('p.barcode'=>'Text'));
|
||||||
$this->export_entities_array[$r]=array('p.rowid'=>"product",'p.ref'=>"product",'p.label'=>"product",'p.description'=>"product",'p.accountancy_code_sell'=>'product','p.accountancy_code_sell'=>'product','p.note'=>"product",'p.length'=>"product",'p.surface'=>"product",'p.volume'=>"product",'p.weight'=>"product",'p.customcode'=>'product','p.price_base_type'=>"product",'p.price'=>"product",'p.price_ttc'=>"product",'p.tva_tx'=>"product",'p.tosell'=>"product",'p.tobuy'=>"product",'p.datec'=>"product",'p.tms'=>"product");
|
$this->export_entities_array[$r]=array('p.rowid'=>"product",'p.ref'=>"product",'p.label'=>"product",'p.description'=>"product",'p.accountancy_code_sell'=>'product','p.note'=>"product",'p.length'=>"product",'p.surface'=>"product",'p.volume'=>"product",'p.weight'=>"product",'p.customcode'=>'product','p.price_base_type'=>"product",'p.price'=>"product",'p.price_ttc'=>"product",'p.tva_tx'=>"product",'p.tosell'=>"product",'p.tobuy'=>"product",'p.datec'=>"product",'p.tms'=>"product");
|
||||||
if (! empty($conf->stock->enabled)) $this->export_entities_array[$r]=array_merge($this->export_entities_array[$r],array('p.stock'=>'product','p.pmp'=>'product'));
|
if (! empty($conf->stock->enabled)) $this->export_entities_array[$r]=array_merge($this->export_entities_array[$r],array('p.stock'=>'product','p.pmp'=>'product'));
|
||||||
if (! empty($conf->barcode->enabled)) $this->export_entities_array[$r]=array_merge($this->export_entities_array[$r],array('p.barcode'=>'product'));
|
if (! empty($conf->barcode->enabled)) $this->export_entities_array[$r]=array_merge($this->export_entities_array[$r],array('p.barcode'=>'product'));
|
||||||
// Add extra fields
|
// Add extra fields
|
||||||
|
|||||||
@ -126,7 +126,7 @@ class modService extends DolibarrModules
|
|||||||
$this->export_TypeFields_array[$r]=array('p.ref'=>"Text",'p.label'=>"Text",'p.description'=>"Text",'p.accountancy_code_sell'=>"Text",'p.accountancy_code_buy'=>"Text",'p.note'=>"Text",'p.price_base_type'=>"Text",'p.price'=>"Number",'p.price_ttc'=>"Number",'p.tva_tx'=>'Number','p.tosell'=>"Boolean",'p.duration'=>"Duree",'p.datec'=>'Date','p.tms'=>'Date');
|
$this->export_TypeFields_array[$r]=array('p.ref'=>"Text",'p.label'=>"Text",'p.description'=>"Text",'p.accountancy_code_sell'=>"Text",'p.accountancy_code_buy'=>"Text",'p.note'=>"Text",'p.price_base_type'=>"Text",'p.price'=>"Number",'p.price_ttc'=>"Number",'p.tva_tx'=>'Number','p.tosell'=>"Boolean",'p.duration'=>"Duree",'p.datec'=>'Date','p.tms'=>'Date');
|
||||||
if (! empty($conf->stock->enabled)) $this->export_TypeFields_array[$r]=array_merge($this->export_fields_array[$r],array('p.stock'=>'Number'));
|
if (! empty($conf->stock->enabled)) $this->export_TypeFields_array[$r]=array_merge($this->export_fields_array[$r],array('p.stock'=>'Number'));
|
||||||
if (! empty($conf->barcode->enabled)) $this->export_TypeFields_array[$r]=array_merge($this->export_TypeFields_array[$r],array('p.barcode'=>'Text'));
|
if (! empty($conf->barcode->enabled)) $this->export_TypeFields_array[$r]=array_merge($this->export_TypeFields_array[$r],array('p.barcode'=>'Text'));
|
||||||
$this->export_entities_array[$r]=array('p.rowid'=>"service",'p.ref'=>"service",'p.label'=>"service",'p.description'=>"service",'p.accountancy_code_sell'=>'service','p.accountancy_code_sell'=>'service','p.note'=>"service",'p.price_base_type'=>"service",'p.price'=>"service",'p.price_ttc'=>"service",'p.tva_tx'=>"service",'p.tosell'=>"service",'p.duration'=>"service",'p.datec'=>"service",'p.tms'=>"service");
|
$this->export_entities_array[$r]=array('p.rowid'=>"service",'p.ref'=>"service",'p.label'=>"service",'p.description'=>"service",'p.accountancy_code_sell'=>'service','p.note'=>"service",'p.price_base_type'=>"service",'p.price'=>"service",'p.price_ttc'=>"service",'p.tva_tx'=>"service",'p.tosell'=>"service",'p.duration'=>"service",'p.datec'=>"service",'p.tms'=>"service");
|
||||||
if (! empty($conf->stock->enabled)) $this->export_entities_array[$r]=array_merge($this->export_entities_array[$r],array('p.stock'=>'service'));
|
if (! empty($conf->stock->enabled)) $this->export_entities_array[$r]=array_merge($this->export_entities_array[$r],array('p.stock'=>'service'));
|
||||||
if (! empty($conf->barcode->enabled)) $this->export_entities_array[$r]=array_merge($this->export_entities_array[$r],array('p.barcode'=>'service'));
|
if (! empty($conf->barcode->enabled)) $this->export_entities_array[$r]=array_merge($this->export_entities_array[$r],array('p.barcode'=>'service'));
|
||||||
// Add extra fields
|
// Add extra fields
|
||||||
|
|||||||
@ -123,7 +123,7 @@ class modStock extends DolibarrModules
|
|||||||
$this->export_label[$r]="WarehousesAndProducts"; // Translation key (used only if key ExportDataset_xxx_z not found)
|
$this->export_label[$r]="WarehousesAndProducts"; // Translation key (used only if key ExportDataset_xxx_z not found)
|
||||||
$this->export_permission[$r]=array(array("stock","lire"));
|
$this->export_permission[$r]=array(array("stock","lire"));
|
||||||
$this->export_fields_array[$r]=array('e.rowid'=>'IdWarehouse','e.label'=>'LocationSummary','e.description'=>'DescWareHouse','e.lieu'=>'LieuWareHouse','e.address'=>'Address','e.zip'=>'Zip','e.town'=>'Town','p.rowid'=>"ProductId",'p.ref'=>"Ref",'p.fk_product_type'=>"Type",'p.label'=>"Label",'p.description'=>"Description",'p.note'=>"Note",'p.price'=>"Price",'p.tva_tx'=>'VAT','p.tosell'=>"OnSell",'p.duration'=>"Duration",'p.datec'=>'DateCreation','p.tms'=>'DateModification','ps.reel'=>'Stock');
|
$this->export_fields_array[$r]=array('e.rowid'=>'IdWarehouse','e.label'=>'LocationSummary','e.description'=>'DescWareHouse','e.lieu'=>'LieuWareHouse','e.address'=>'Address','e.zip'=>'Zip','e.town'=>'Town','p.rowid'=>"ProductId",'p.ref'=>"Ref",'p.fk_product_type'=>"Type",'p.label'=>"Label",'p.description'=>"Description",'p.note'=>"Note",'p.price'=>"Price",'p.tva_tx'=>'VAT','p.tosell'=>"OnSell",'p.duration'=>"Duration",'p.datec'=>'DateCreation','p.tms'=>'DateModification','ps.reel'=>'Stock');
|
||||||
$this->export_TypeFields_array[$r]=array('e.rowid'=>'List:entrepot:LabelWareHouse','e.label'=>'Text','e.label'=>'Text','e.lieu'=>'Text','e.address'=>'Text','e.zip'=>'Text','e.town'=>'Text','p.rowid'=>"List:produit:label",'p.ref'=>"Text",'p.fk_product_type'=>"Text",'p.label'=>"Text",'p.description'=>"Text",'p.note'=>"Text",'p.price'=>"Number",'p.tva_tx'=>'Number','p.tosell'=>"Boolean",'p.duration'=>"Duree",'p.datec'=>'Date','p.tms'=>'Date','ps.reel'=>'Number');
|
$this->export_TypeFields_array[$r]=array('e.rowid'=>'List:entrepot:LabelWareHouse','e.label'=>'Text','e.lieu'=>'Text','e.address'=>'Text','e.zip'=>'Text','e.town'=>'Text','p.rowid'=>"List:produit:label",'p.ref'=>"Text",'p.fk_product_type'=>"Text",'p.label'=>"Text",'p.description'=>"Text",'p.note'=>"Text",'p.price'=>"Number",'p.tva_tx'=>'Number','p.tosell'=>"Boolean",'p.duration'=>"Duree",'p.datec'=>'Date','p.tms'=>'Date','ps.reel'=>'Number');
|
||||||
$this->export_entities_array[$r]=array('e.rowid'=>'warehouse','e.label'=>'warehouse','e.description'=>'warehouse','e.lieu'=>'warehouse','e.address'=>'warehouse','e.zip'=>'warehouse','e.town'=>'warehouse','p.rowid'=>"product",'p.ref'=>"product",'p.fk_product_type'=>"product",'p.label'=>"product",'p.description'=>"product",'p.note'=>"product",'p.price'=>"product",'p.tva_tx'=>'product','p.tosell'=>"product",'p.duration'=>"product",'p.datec'=>'product','p.tms'=>'product','ps.reel'=>'stock');
|
$this->export_entities_array[$r]=array('e.rowid'=>'warehouse','e.label'=>'warehouse','e.description'=>'warehouse','e.lieu'=>'warehouse','e.address'=>'warehouse','e.zip'=>'warehouse','e.town'=>'warehouse','p.rowid'=>"product",'p.ref'=>"product",'p.fk_product_type'=>"product",'p.label'=>"product",'p.description'=>"product",'p.note'=>"product",'p.price'=>"product",'p.tva_tx'=>'product','p.tosell'=>"product",'p.duration'=>"product",'p.datec'=>'product','p.tms'=>'product','ps.reel'=>'stock');
|
||||||
$this->export_aggregate_array[$r]=array('ps.reel'=>'SUM'); // TODO Not used yet
|
$this->export_aggregate_array[$r]=array('ps.reel'=>'SUM'); // TODO Not used yet
|
||||||
$this->export_dependencies_array[$r]=array('stock'=>array('p.rowid','e.rowid')); // To add unique key if we ask a field of a child to avoid the DISTINCT to discard them
|
$this->export_dependencies_array[$r]=array('stock'=>array('p.rowid','e.rowid')); // To add unique key if we ask a field of a child to avoid the DISTINCT to discard them
|
||||||
|
|||||||
@ -952,6 +952,14 @@ class pdf_muscadet extends ModelePDFSuppliersOrders
|
|||||||
$pdf->SetTextColor(0,0,60);
|
$pdf->SetTextColor(0,0,60);
|
||||||
$pdf->MultiCell(100, 4, $outputlangs->transnoentities("Ref")." : " . $outputlangs->convToOutputCharset($object->ref), '', 'R');
|
$pdf->MultiCell(100, 4, $outputlangs->transnoentities("Ref")." : " . $outputlangs->convToOutputCharset($object->ref), '', 'R');
|
||||||
|
|
||||||
|
if ($object->ref_supplier)
|
||||||
|
{
|
||||||
|
$posy+=4;
|
||||||
|
$pdf->SetXY($posx,$posy);
|
||||||
|
$pdf->SetTextColor(0,0,60);
|
||||||
|
$pdf->MultiCell(100, 3, $outputlangs->transnoentities("RefSupplier")." : " . $outputlangs->convToOutputCharset($object->ref_supplier), '', 'R');
|
||||||
|
}
|
||||||
|
|
||||||
$posy+=2;
|
$posy+=2;
|
||||||
$pdf->SetFont('','', $default_font_size -1);
|
$pdf->SetFont('','', $default_font_size -1);
|
||||||
|
|
||||||
|
|||||||
@ -1481,7 +1481,7 @@ else
|
|||||||
$formmail->withfrom=1;
|
$formmail->withfrom=1;
|
||||||
$liste=array();
|
$liste=array();
|
||||||
foreach ($object->thirdparty->thirdparty_and_contact_email_array(1) as $key=>$value) $liste[$key]=$value;
|
foreach ($object->thirdparty->thirdparty_and_contact_email_array(1) as $key=>$value) $liste[$key]=$value;
|
||||||
$formmail->withto=GETPOST("sendto")?GETOST("sendto"):$liste;
|
$formmail->withto=GETPOST("sendto")?GETPOST("sendto"):$liste;
|
||||||
$formmail->withtocc=$liste;
|
$formmail->withtocc=$liste;
|
||||||
$formmail->withtoccc=$conf->global->MAIN_EMAIL_USECCC;
|
$formmail->withtoccc=$conf->global->MAIN_EMAIL_USECCC;
|
||||||
$formmail->withtopic=$langs->trans('SendShippingRef','__SHIPPINGREF__');
|
$formmail->withtopic=$langs->trans('SendShippingRef','__SHIPPINGREF__');
|
||||||
|
|||||||
@ -1712,7 +1712,7 @@ else if ($id > 0 || ! empty($ref))
|
|||||||
$formmail->withfrom=1;
|
$formmail->withfrom=1;
|
||||||
$liste=array();
|
$liste=array();
|
||||||
foreach ($object->thirdparty->thirdparty_and_contact_email_array(1) as $key=>$value) $liste[$key]=$value;
|
foreach ($object->thirdparty->thirdparty_and_contact_email_array(1) as $key=>$value) $liste[$key]=$value;
|
||||||
$formmail->withto=GETPOST("sendto")?GETOST("sendto"):$liste;
|
$formmail->withto=GETPOST("sendto")?GETPOST("sendto"):$liste;
|
||||||
$formmail->withtocc=$liste;
|
$formmail->withtocc=$liste;
|
||||||
$formmail->withtoccc=$conf->global->MAIN_EMAIL_USECCC;
|
$formmail->withtoccc=$conf->global->MAIN_EMAIL_USECCC;
|
||||||
$formmail->withtopic=$langs->trans('SendInterventionRef','__FICHINTERREF__');
|
$formmail->withtopic=$langs->trans('SendInterventionRef','__FICHINTERREF__');
|
||||||
|
|||||||
@ -1944,7 +1944,7 @@ elseif (! empty($object->id))
|
|||||||
$formmail->withfrom=1;
|
$formmail->withfrom=1;
|
||||||
$liste=array();
|
$liste=array();
|
||||||
foreach ($object->thirdparty->thirdparty_and_contact_email_array(1) as $key=>$value) $liste[$key]=$value;
|
foreach ($object->thirdparty->thirdparty_and_contact_email_array(1) as $key=>$value) $liste[$key]=$value;
|
||||||
$formmail->withto=GETPOST("sendto")?GETOST("sendto"):$liste;
|
$formmail->withto=GETPOST("sendto")?GETPOST("sendto"):$liste;
|
||||||
$formmail->withtocc=$liste;
|
$formmail->withtocc=$liste;
|
||||||
$formmail->withtoccc=(! empty($conf->global->MAIN_EMAIL_USECCC)?$conf->global->MAIN_EMAIL_USECCC:false);
|
$formmail->withtoccc=(! empty($conf->global->MAIN_EMAIL_USECCC)?$conf->global->MAIN_EMAIL_USECCC:false);
|
||||||
$formmail->withtopic=$langs->trans('SendOrderRef','__ORDERREF__');
|
$formmail->withtopic=$langs->trans('SendOrderRef','__ORDERREF__');
|
||||||
|
|||||||
@ -2146,7 +2146,7 @@ else
|
|||||||
// Make payments
|
// Make payments
|
||||||
if ($action != 'edit' && $object->statut == 1 && $object->paye == 0 && $user->societe_id == 0)
|
if ($action != 'edit' && $object->statut == 1 && $object->paye == 0 && $user->societe_id == 0)
|
||||||
{
|
{
|
||||||
print '<a class="butAction" href="paiement.php?id='.$object->id.'&action=create">'.$langs->trans('DoPayment').'</a>';
|
print '<a class="butAction" href="paiement.php?facid='.$object->id.'&action=create">'.$langs->trans('DoPayment').'</a>'; // must use facid because id is for payment id not invoice
|
||||||
}
|
}
|
||||||
|
|
||||||
// Classify paid
|
// Classify paid
|
||||||
@ -2276,7 +2276,7 @@ else
|
|||||||
$formmail->withfrom=1;
|
$formmail->withfrom=1;
|
||||||
$liste=array();
|
$liste=array();
|
||||||
foreach ($object->thirdparty->thirdparty_and_contact_email_array(1) as $key=>$value) $liste[$key]=$value;
|
foreach ($object->thirdparty->thirdparty_and_contact_email_array(1) as $key=>$value) $liste[$key]=$value;
|
||||||
$formmail->withto=GETPOST("sendto")?GETOST("sendto"):$liste;
|
$formmail->withto=GETPOST("sendto")?GETPOST("sendto"):$liste;
|
||||||
$formmail->withtocc=$liste;
|
$formmail->withtocc=$liste;
|
||||||
$formmail->withtoccc=$conf->global->MAIN_EMAIL_USECCC;
|
$formmail->withtoccc=$conf->global->MAIN_EMAIL_USECCC;
|
||||||
$formmail->withtopic=$langs->trans('SendBillRef','__FACREF__');
|
$formmail->withtopic=$langs->trans('SendBillRef','__FACREF__');
|
||||||
|
|||||||
@ -638,7 +638,7 @@ if (empty($id) || $action == 'add' || $action == 'request')
|
|||||||
case 'nodatedebut' :
|
case 'nodatedebut' :
|
||||||
$errors[] = $langs->trans('NoDateDebut');
|
$errors[] = $langs->trans('NoDateDebut');
|
||||||
break;
|
break;
|
||||||
case 'nodatedebut' :
|
case 'nodatefin' :
|
||||||
$errors[] = $langs->trans('NoDateFin');
|
$errors[] = $langs->trans('NoDateFin');
|
||||||
break;
|
break;
|
||||||
case 'DureeHoliday' :
|
case 'DureeHoliday' :
|
||||||
@ -808,7 +808,7 @@ else
|
|||||||
case 'nodatedebut' :
|
case 'nodatedebut' :
|
||||||
$errors[] = $langs->transnoentitiesnoconv('NoDateDebut');
|
$errors[] = $langs->transnoentitiesnoconv('NoDateDebut');
|
||||||
break;
|
break;
|
||||||
case 'nodatedebut' :
|
case 'nodatefin' :
|
||||||
$errors[] = $langs->transnoentitiesnoconv('NoDateFin');
|
$errors[] = $langs->transnoentitiesnoconv('NoDateFin');
|
||||||
break;
|
break;
|
||||||
case 'DureeHoliday' :
|
case 'DureeHoliday' :
|
||||||
|
|||||||
@ -21,15 +21,12 @@ font-size:13px;
|
|||||||
font-family: Verdana, Tahoma, Arial, Helvetica, sans-serif;
|
font-family: Verdana, Tahoma, Arial, Helvetica, sans-serif;
|
||||||
background: #f9f9f9 url(headbg.jpg) 0 0 no-repeat;
|
background: #f9f9f9 url(headbg.jpg) 0 0 no-repeat;
|
||||||
/* background-color: #F4F4F4; */
|
/* background-color: #F4F4F4; */
|
||||||
margin-left: 30px;
|
margin: 15px 30px 10px;
|
||||||
margin-right: 30px;
|
|
||||||
margin-top: 15px;
|
|
||||||
margin-bottom: 10px;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
div.titre {
|
div.titre {
|
||||||
padding: 5px 5px 5px 5px;
|
padding: 5px 5px 5px 5px;
|
||||||
margin: 0em 0em 0em 0em;
|
margin: 0 0 0 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
span.titre {
|
span.titre {
|
||||||
@ -39,26 +36,26 @@ background: #FFFFFF;
|
|||||||
color: #4965B3;
|
color: #4965B3;
|
||||||
border: 1px solid #8CACBB;
|
border: 1px solid #8CACBB;
|
||||||
padding: 5px 5px 5px 5px;
|
padding: 5px 5px 5px 5px;
|
||||||
margin: 0em 0em 0em 0em;
|
margin: 0 0 0 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
div.soustitre {
|
div.soustitre {
|
||||||
font-size: 15px;
|
font-size: 15px;
|
||||||
font-weight: bold;
|
font-weight: bold;
|
||||||
color: #4965B3;
|
color: #4965B3;
|
||||||
padding: 0em 1.2em 0.5em 2em;
|
padding: 0 1.2em 0.5em 2em;
|
||||||
margin: 1.2em 1.2em 1.2em 1.2em;
|
margin: 1.2em 1.2em 1.2em 1.2em;
|
||||||
border-bottom: 1px solid #8CACBB;
|
border-bottom: 1px solid #8CACBB;
|
||||||
border-right: 1px solid #8CACBB;
|
border-right: 1px solid #8CACBB;
|
||||||
text-align: right;
|
text-align: right;
|
||||||
}
|
}
|
||||||
|
|
||||||
inputdisabled
|
input:disabled
|
||||||
{
|
{
|
||||||
background: #FDFDFD;
|
background: #FDFDFD;
|
||||||
border: 1px solid #ACBCBB;
|
border: 1px solid #ACBCBB;
|
||||||
padding: 0px 0px 0px 0px;
|
padding: 0 0 0 0;
|
||||||
margin: 0px 0px 0px 0px;
|
margin: 0 0 0 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
input[type=text], input[type=password] {
|
input[type=text], input[type=password] {
|
||||||
@ -69,9 +66,8 @@ input[type=text]:focus, input[type=password]:focus, textarea:focus, select:focus
|
|||||||
box-shadow: 0 0 5px #C091AF;
|
box-shadow: 0 0 5px #C091AF;
|
||||||
}
|
}
|
||||||
input:-webkit-autofill {
|
input:-webkit-autofill {
|
||||||
background-color: #FBFFEA !important;
|
background: #FBFFEA none !important;
|
||||||
background-image: none !important;
|
-webkit-box-shadow: 0 0 0 50px #FBFFEA inset;
|
||||||
-webkit-box-shadow: 0 0 0 50px #FBFFEA inset;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
table.main {
|
table.main {
|
||||||
@ -91,11 +87,8 @@ color: #000000;
|
|||||||
|
|
||||||
table.listofchoices, tr.listofchoices, td.listofchoices {
|
table.listofchoices, tr.listofchoices, td.listofchoices {
|
||||||
border-collapse: collapse;
|
border-collapse: collapse;
|
||||||
padding-top: 4px;
|
padding: 4px;
|
||||||
padding-bottom: 4px;
|
color: #000000;
|
||||||
padding-left: 4px;
|
|
||||||
padding-right: 4px;
|
|
||||||
color: #000000;
|
|
||||||
border: 1px solid #888888 !important;
|
border: 1px solid #888888 !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -137,7 +130,7 @@ div.error {
|
|||||||
color: #550000;
|
color: #550000;
|
||||||
font-weight: bold;
|
font-weight: bold;
|
||||||
padding: 0.2em 0.2em 0.2em 0.2em;
|
padding: 0.2em 0.2em 0.2em 0.2em;
|
||||||
margin: 0.5em 0em 0.5em 0em;
|
margin: 0.5em 0 0.5em 0;
|
||||||
border: 1px solid #6C7C8B;
|
border: 1px solid #6C7C8B;
|
||||||
}
|
}
|
||||||
font.error {
|
font.error {
|
||||||
@ -199,7 +192,7 @@ background-color: #B5C5C5;
|
|||||||
td.label {
|
td.label {
|
||||||
color: #5945A3;
|
color: #5945A3;
|
||||||
padding: 5px 5px 5px 5px;
|
padding: 5px 5px 5px 5px;
|
||||||
margin: 0em 0em 0em 0em;
|
margin: 0 0 0 0;
|
||||||
border-bottom: 1px solid #CCCCDB;
|
border-bottom: 1px solid #CCCCDB;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -207,7 +200,7 @@ border-bottom: 1px solid #CCCCDB;
|
|||||||
td.comment {
|
td.comment {
|
||||||
color: black;
|
color: black;
|
||||||
padding: 5px 5px 5px 5px;
|
padding: 5px 5px 5px 5px;
|
||||||
margin: 0em 0em 0em 0em;
|
margin: 0 0 0 0;
|
||||||
text-decoration:none;
|
text-decoration:none;
|
||||||
font-size: 11px;
|
font-size: 11px;
|
||||||
border-bottom: 1px solid #CCCCDB;
|
border-bottom: 1px solid #CCCCDB;
|
||||||
@ -239,14 +232,13 @@ ul {
|
|||||||
|
|
||||||
|
|
||||||
.button {
|
.button {
|
||||||
background-color: #FFFFFF;
|
background: #FFFFFF bottom;
|
||||||
background-position: bottom;
|
|
||||||
border: 1px solid #C0C0C0;
|
border: 1px solid #C0C0C0;
|
||||||
padding: 0.3em 0.7em;
|
padding: 0.3em 0.7em;
|
||||||
margin: 0em 0.5em;
|
margin: 0 0.5em;
|
||||||
-moz-border-radius:0px 5px 0px 5px;
|
-moz-border-radius:0 5px 0 5px;
|
||||||
-webkit-border-radius:0px 5px 0px 5px;
|
-webkit-border-radius:0 5px 0 5px;
|
||||||
border-radius:0px 5px 0px 5px;
|
border-radius:0 5px 0 5px;
|
||||||
-moz-box-shadow: 2px 2px 3px #CCC;
|
-moz-box-shadow: 2px 2px 3px #CCC;
|
||||||
-webkit-box-shadow: 2px 2px 3px #CCC;
|
-webkit-box-shadow: 2px 2px 3px #CCC;
|
||||||
box-shadow: 2px 2px 3px #CCC;
|
box-shadow: 2px 2px 3px #CCC;
|
||||||
|
|||||||
@ -402,7 +402,7 @@ if (! $error && $db->connected && $action == "set")
|
|||||||
require_once DOL_DOCUMENT_ROOT.'/core/lib/files.lib.php';
|
require_once DOL_DOCUMENT_ROOT.'/core/lib/files.lib.php';
|
||||||
$srcroot=$main_dir.'/install/doctemplates';
|
$srcroot=$main_dir.'/install/doctemplates';
|
||||||
$destroot=$main_data_dir.'/doctemplates';
|
$destroot=$main_data_dir.'/doctemplates';
|
||||||
$docs=array('thirdparties' => 'thirdparty', 'proposals' => 'proposal', 'orders' => 'order', 'invoices' => 'invoice', 'projects' => 'project', 'projects' => 'task_summary', 'tasks' => 'task_summary');
|
$docs=array('thirdparties' => 'thirdparty', 'proposals' => 'proposal', 'orders' => 'order', 'invoices' => 'invoice', 'projects' => 'project', 'tasks' => 'task_summary');
|
||||||
foreach($docs as $cursordir => $cursorfile)
|
foreach($docs as $cursordir => $cursorfile)
|
||||||
{
|
{
|
||||||
$src=$srcroot.'/'.$cursordir.'/template_'.$cursorfile.'.odt';
|
$src=$srcroot.'/'.$cursordir.'/template_'.$cursorfile.'.odt';
|
||||||
|
|||||||
@ -20,7 +20,7 @@
|
|||||||
|
|
||||||
.survey_invitation
|
.survey_invitation
|
||||||
{
|
{
|
||||||
font-color: #445566;
|
color: #445566;
|
||||||
font-weight: bold;
|
font-weight: bold;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -141,7 +141,7 @@ div.bandeau{
|
|||||||
color:white;
|
color:white;
|
||||||
vertical-align:middle;
|
vertical-align:middle;
|
||||||
font-size:35px;
|
font-size:35px;
|
||||||
font-family:arial;
|
font-family:arial, sans-serif;
|
||||||
padding:8px;
|
padding:8px;
|
||||||
height:35px;
|
height:35px;
|
||||||
position:static;
|
position:static;
|
||||||
@ -166,7 +166,7 @@ div.bandeautitre{
|
|||||||
font-weight:bold;
|
font-weight:bold;
|
||||||
text-align:center;
|
text-align:center;
|
||||||
vertical-align:middle;
|
vertical-align:middle;
|
||||||
font-family:arial;
|
font-family:arial, sans-serif;
|
||||||
padding:3px;
|
padding:3px;
|
||||||
position:static;
|
position:static;
|
||||||
top:57px;
|
top:57px;
|
||||||
@ -179,7 +179,7 @@ div.sousbandeau{
|
|||||||
font-size:11px;
|
font-size:11px;
|
||||||
color:black;
|
color:black;
|
||||||
vertical-align:middle;
|
vertical-align:middle;
|
||||||
font-family:arial;
|
font-family:arial, sans-serif;
|
||||||
padding:3px;
|
padding:3px;
|
||||||
position:static;
|
position:static;
|
||||||
top:80px;
|
top:80px;
|
||||||
@ -200,7 +200,7 @@ div.bandeaupied{
|
|||||||
background-color: #0b419b;
|
background-color: #0b419b;
|
||||||
color:white;
|
color:white;
|
||||||
font-size:11px;
|
font-size:11px;
|
||||||
font-family:arial;
|
font-family:arial, sans-serif;
|
||||||
padding:6px;
|
padding:6px;
|
||||||
position:fixed;
|
position:fixed;
|
||||||
bottom:6px;
|
bottom:6px;
|
||||||
@ -221,7 +221,7 @@ div.bandeaupiedmobile{
|
|||||||
background-color: #0b419b;
|
background-color: #0b419b;
|
||||||
color:white;
|
color:white;
|
||||||
font-size:11px;
|
font-size:11px;
|
||||||
font-family:arial;
|
font-family:arial, sans-serif;
|
||||||
padding:6px;
|
padding:6px;
|
||||||
position:static;
|
position:static;
|
||||||
}
|
}
|
||||||
@ -234,7 +234,7 @@ div.sousbandeau a, div.sousbandeau span.sousbandeaulangue a {
|
|||||||
text-align:center;
|
text-align:center;
|
||||||
margin-left:10px;
|
margin-left:10px;
|
||||||
margin-right:10px;
|
margin-right:10px;
|
||||||
font-family:arial;
|
font-family:arial, sans-serif;
|
||||||
color:white;
|
color:white;
|
||||||
font-size:10px;
|
font-size:10px;
|
||||||
text-decoration:none;
|
text-decoration:none;
|
||||||
@ -247,18 +247,18 @@ span.sousbandeaulangue {
|
|||||||
/*corps de la page index.php*/
|
/*corps de la page index.php*/
|
||||||
div.corps{
|
div.corps{
|
||||||
font-size:12px;
|
font-size:12px;
|
||||||
font-family:arial;
|
font-family:arial, sans-serif;
|
||||||
position:static;
|
position:static;
|
||||||
padding:15px;
|
padding:15px;
|
||||||
}
|
}
|
||||||
div.corps table{
|
div.corps table{
|
||||||
font-family:arial;
|
font-family:arial, sans-serif;
|
||||||
font-size:12px;
|
font-size:12px;
|
||||||
font-weight:bold;
|
font-weight:bold;
|
||||||
}
|
}
|
||||||
div.corpscentre{
|
div.corpscentre{
|
||||||
font-size:12px;
|
font-size:12px;
|
||||||
font-family:arial;
|
font-family:arial, sans-serif;
|
||||||
text-align:center;
|
text-align:center;
|
||||||
position:absolute;
|
position:absolute;
|
||||||
top:150px;
|
top:150px;
|
||||||
@ -280,7 +280,7 @@ div.jourschoisis {
|
|||||||
/*presenation des pages*/
|
/*presenation des pages*/
|
||||||
div.bodydate {
|
div.bodydate {
|
||||||
padding:10px;
|
padding:10px;
|
||||||
font-family:arial;
|
font-family:arial, sans-serif;
|
||||||
font-size:12px;
|
font-size:12px;
|
||||||
text-align:center;
|
text-align:center;
|
||||||
position:static;
|
position:static;
|
||||||
@ -289,14 +289,14 @@ div.bodydate {
|
|||||||
right:20px;
|
right:20px;
|
||||||
}
|
}
|
||||||
div.bodydate table{
|
div.bodydate table{
|
||||||
font-family:arial;
|
font-family:arial, sans-serif;
|
||||||
font-size:12px;
|
font-size:12px;
|
||||||
font-weight:bold;
|
font-weight:bold;
|
||||||
}
|
}
|
||||||
/*cadre de commentaires*/
|
/*cadre de commentaires*/
|
||||||
div.presentationdate {
|
div.presentationdate {
|
||||||
width:100%;
|
width:100%;
|
||||||
font-family:arial;
|
font-family:arial, sans-serif;
|
||||||
text-align:center;
|
text-align:center;
|
||||||
font-size:12px;
|
font-size:12px;
|
||||||
border-top:1px solid;
|
border-top:1px solid;
|
||||||
@ -311,12 +311,11 @@ div.presentationdate {
|
|||||||
div.presentationdatefin {
|
div.presentationdatefin {
|
||||||
width:40%;
|
width:40%;
|
||||||
padding:10px;
|
padding:10px;
|
||||||
font-family:arial;
|
font-family:arial, sans-serif;
|
||||||
text-align:center;
|
text-align:center;
|
||||||
font-size:12px;
|
font-size:12px;
|
||||||
border-width:1px;
|
border: 1px solid;
|
||||||
border-style:solid;
|
margin-top: 10px;
|
||||||
margin-top: 10px;
|
|
||||||
margin-left: 30%;
|
margin-left: 30%;
|
||||||
margin-right: 30%;
|
margin-right: 30%;
|
||||||
position:static;
|
position:static;
|
||||||
@ -324,7 +323,7 @@ div.presentationdatefin {
|
|||||||
/*cadre principal de studs.php*/
|
/*cadre principal de studs.php*/
|
||||||
div.cadre {
|
div.cadre {
|
||||||
padding:10px;
|
padding:10px;
|
||||||
font-family:arial;
|
font-family:arial, sans-serif;
|
||||||
font-size:12px;
|
font-size:12px;
|
||||||
position:static;
|
position:static;
|
||||||
top:235px;
|
top:235px;
|
||||||
@ -406,7 +405,7 @@ div.calendrier {
|
|||||||
background-color: #AAA;
|
background-color: #AAA;
|
||||||
width:490px;
|
width:490px;
|
||||||
font-size:12px;
|
font-size:12px;
|
||||||
font-family:arial;
|
font-family:arial, sans-serif;
|
||||||
margin-left: 30%;
|
margin-left: 30%;
|
||||||
margin-right: 30%;
|
margin-right: 30%;
|
||||||
position:static;
|
position:static;
|
||||||
@ -415,7 +414,7 @@ div.calendrier {
|
|||||||
div.calendrier td.joursemaine {
|
div.calendrier td.joursemaine {
|
||||||
width:65px;
|
width:65px;
|
||||||
text-align: center;
|
text-align: center;
|
||||||
font-family:arial;
|
font-family:arial, sans-serif;
|
||||||
font-size:14px;
|
font-size:14px;
|
||||||
border: 2px;
|
border: 2px;
|
||||||
background-color: white;
|
background-color: white;
|
||||||
@ -423,7 +422,7 @@ div.calendrier td.joursemaine {
|
|||||||
div.calendrier td.jourwe {
|
div.calendrier td.jourwe {
|
||||||
width:65px;
|
width:65px;
|
||||||
text-align: center;
|
text-align: center;
|
||||||
font-family:arial;
|
font-family:arial, sans-serif;
|
||||||
font-size:14px;
|
font-size:14px;
|
||||||
border: 2px;
|
border: 2px;
|
||||||
background-color: #C0C0C0;
|
background-color: #C0C0C0;
|
||||||
@ -433,7 +432,7 @@ div.calendrier td.avant {
|
|||||||
width:65px;
|
width:65px;
|
||||||
text-align: center;
|
text-align: center;
|
||||||
border: 2px;
|
border: 2px;
|
||||||
font-family:arial;
|
font-family:arial, sans-serif;
|
||||||
font-size:13px;
|
font-size:13px;
|
||||||
background-color: #DDDDDD;
|
background-color: #DDDDDD;
|
||||||
}
|
}
|
||||||
@ -454,7 +453,7 @@ div.calendrier td.choisi {
|
|||||||
/* Le paragraphe de fin */
|
/* Le paragraphe de fin */
|
||||||
p.affichageresultats{
|
p.affichageresultats{
|
||||||
text-align: center;
|
text-align: center;
|
||||||
font-family:arial;
|
font-family:arial, sans-serif;
|
||||||
font-size:13px;
|
font-size:13px;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -468,7 +467,7 @@ div.comment span.usercomment{
|
|||||||
|
|
||||||
a.affichageexport{
|
a.affichageexport{
|
||||||
text-align: center;
|
text-align: center;
|
||||||
font-family:arial;
|
font-family:arial, sans-serif;
|
||||||
font-size:10px;
|
font-size:10px;
|
||||||
margin-left:10px;
|
margin-left:10px;
|
||||||
text-decoration: none;
|
text-decoration: none;
|
||||||
@ -483,11 +482,11 @@ div.titregestionadmin{
|
|||||||
|
|
||||||
.bouton {
|
.bouton {
|
||||||
width: 65px;
|
width: 65px;
|
||||||
border:0px;
|
border:0;
|
||||||
padding:0px 0 0 0;
|
padding:0 0 0 0;
|
||||||
margin:0px;
|
margin:0;
|
||||||
cursor:pointer;
|
cursor:pointer;
|
||||||
font-family:arial;
|
font-family:arial, sans-serif;
|
||||||
font-size:13px;
|
font-size:13px;
|
||||||
}
|
}
|
||||||
/*les boutons pour choisir un jour non selectionné*/
|
/*les boutons pour choisir un jour non selectionné*/
|
||||||
@ -505,7 +504,7 @@ div.nouveau_sondage a {
|
|||||||
}
|
}
|
||||||
div.nouveau_sondage span img {
|
div.nouveau_sondage span img {
|
||||||
vertical-align: middle;
|
vertical-align: middle;
|
||||||
border: 0px;
|
border: 0;
|
||||||
}
|
}
|
||||||
div.nouveau_sondage span {
|
div.nouveau_sondage span {
|
||||||
margin-left: 20px;
|
margin-left: 20px;
|
||||||
@ -514,7 +513,7 @@ div.nouveau_sondage span {
|
|||||||
div.error, div.addcomment {
|
div.error, div.addcomment {
|
||||||
text-align:center;
|
text-align:center;
|
||||||
border: 1px;
|
border: 1px;
|
||||||
font-family: arial;
|
font-family: arial, sans-serif;
|
||||||
font-size: 13px;
|
font-size: 13px;
|
||||||
}
|
}
|
||||||
ul.exports {
|
ul.exports {
|
||||||
|
|||||||
@ -1036,7 +1036,7 @@ class Task extends CommonObject
|
|||||||
$clone_task->fk_project = $project_id;
|
$clone_task->fk_project = $project_id;
|
||||||
$clone_task->fk_task_parent = $parent_task_id;
|
$clone_task->fk_task_parent = $parent_task_id;
|
||||||
$clone_task->date_c = $datec;
|
$clone_task->date_c = $datec;
|
||||||
$clone_task->planned_workload = $clone_task->planned_workload;
|
$clone_task->planned_workload = $origin_task->planned_workload;
|
||||||
$clone_task->rang = $origin_task->rang;
|
$clone_task->rang = $origin_task->rang;
|
||||||
|
|
||||||
//Manage Task Date
|
//Manage Task Date
|
||||||
|
|||||||
@ -23,7 +23,7 @@
|
|||||||
|
|
||||||
?>
|
?>
|
||||||
|
|
||||||
<div id="principal_content" style="margin-left: 0px;">
|
<div id="principal_content" style="margin-left: 0;">
|
||||||
<div style="margin-left: 0; position: relative;" class="gantt"
|
<div style="margin-left: 0; position: relative;" class="gantt"
|
||||||
id="GanttChartDIV"></div>
|
id="GanttChartDIV"></div>
|
||||||
|
|
||||||
|
|||||||
@ -210,7 +210,7 @@ if (count($tasksarray)>0)
|
|||||||
{
|
{
|
||||||
$s.=$langs->trans("Internals").': ';
|
$s.=$langs->trans("Internals").': ';
|
||||||
$i=0;
|
$i=0;
|
||||||
foreach($idofusers as $key => $valid)
|
foreach($idofusers as $valid)
|
||||||
{
|
{
|
||||||
$userstatic->fetch($valid);
|
$userstatic->fetch($valid);
|
||||||
if ($i) $s.=',';
|
if ($i) $s.=',';
|
||||||
@ -224,7 +224,7 @@ if (count($tasksarray)>0)
|
|||||||
if ($s) $s.=' - ';
|
if ($s) $s.=' - ';
|
||||||
$s.=$langs->trans("Externals").': ';
|
$s.=$langs->trans("Externals").': ';
|
||||||
$i=0;
|
$i=0;
|
||||||
foreach($idofthirdparty as $key => $valid)
|
foreach($idofthirdparty as $valid)
|
||||||
{
|
{
|
||||||
$companystatic->fetch($valid);
|
$companystatic->fetch($valid);
|
||||||
if ($i) $s.=',';
|
if ($i) $s.=',';
|
||||||
|
|||||||
@ -290,7 +290,6 @@ abstract class ActionsCardCommon
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
$this->object->id = $this->object->id;
|
|
||||||
$reload = 0;
|
$reload = 0;
|
||||||
$this->errors = $this->object->errors;
|
$this->errors = $this->object->errors;
|
||||||
$action = "edit";
|
$action = "edit";
|
||||||
|
|||||||
@ -20,15 +20,12 @@ font-size:12px;
|
|||||||
font-family: Verdana, Tahoma, Arial, Helvetica, sans-serif;
|
font-family: Verdana, Tahoma, Arial, Helvetica, sans-serif;
|
||||||
background: #f9f9f9 url(headbg.jpg) 0 0 no-repeat;
|
background: #f9f9f9 url(headbg.jpg) 0 0 no-repeat;
|
||||||
/* background-color: #F4F4F4; */
|
/* background-color: #F4F4F4; */
|
||||||
margin-left: 10px;
|
margin: 5px 10px;
|
||||||
margin-right: 10px;
|
|
||||||
margin-top: 5px;
|
|
||||||
margin-bottom: 5px;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
div.titre {
|
div.titre {
|
||||||
padding: 5px 5px 5px 5px;
|
padding: 5px 5px 5px 5px;
|
||||||
margin: 0em 0em 0em 0em;
|
margin: 0 0 0 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
span.titre {
|
span.titre {
|
||||||
@ -37,7 +34,7 @@ font-weight: bold;
|
|||||||
background: #FFFFFF;
|
background: #FFFFFF;
|
||||||
color: #4965B3;
|
color: #4965B3;
|
||||||
padding: 5px 5px 5px 5px;
|
padding: 5px 5px 5px 5px;
|
||||||
margin: 0em 0em 0em 0em;
|
margin: 0 0 0 0;
|
||||||
border: 1px solid #AAAAAA;
|
border: 1px solid #AAAAAA;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -45,19 +42,19 @@ div.soustitre {
|
|||||||
font-size: 15px;
|
font-size: 15px;
|
||||||
font-weight: bold;
|
font-weight: bold;
|
||||||
color: #4965B3;
|
color: #4965B3;
|
||||||
padding: 0em 1.2em 0.5em 2em;
|
padding: 0 1.2em 0.5em 2em;
|
||||||
margin: 1.2em 1.2em 1.2em 1.2em;
|
margin: 1.2em 1.2em 1.2em 1.2em;
|
||||||
border-bottom: 1px solid #8CACBB;
|
border-bottom: 1px solid #8CACBB;
|
||||||
border-right: 1px solid #8CACBB;
|
border-right: 1px solid #8CACBB;
|
||||||
text-align: right;
|
text-align: right;
|
||||||
}
|
}
|
||||||
|
|
||||||
inputdisabled
|
input:disabled
|
||||||
{
|
{
|
||||||
background: #FDFDFD;
|
background: #FDFDFD;
|
||||||
border: 1px solid #ACBCBB;
|
border: 1px solid #ACBCBB;
|
||||||
padding: 0px 0px 0px 0px;
|
padding: 0 0 0 0;
|
||||||
margin: 0px 0px 0px 0px;
|
margin: 0 0 0 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
table.main {
|
table.main {
|
||||||
@ -77,7 +74,7 @@ color: #777711;
|
|||||||
div.error {
|
div.error {
|
||||||
color: #550000; font-weight: bold;
|
color: #550000; font-weight: bold;
|
||||||
padding: 0.2em 0.2em 0.2em 0.2em;
|
padding: 0.2em 0.2em 0.2em 0.2em;
|
||||||
margin: 0.5em 0em 0.5em 0em;
|
margin: 0.5em 0 0.5em 0;
|
||||||
border: 1px solid #6C7C8B;
|
border: 1px solid #6C7C8B;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -124,7 +121,7 @@ td.label {
|
|||||||
background: #dcdcd3;
|
background: #dcdcd3;
|
||||||
color: #5945A3;
|
color: #5945A3;
|
||||||
padding: 5px 5px 5px 5px;
|
padding: 5px 5px 5px 5px;
|
||||||
margin: 0em 0em 0em 0em;
|
margin: 0 0 0 0;
|
||||||
border-bottom: 1px solid #8CACBB;
|
border-bottom: 1px solid #8CACBB;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -132,7 +129,7 @@ td.comment {
|
|||||||
background: #dcdcd3;
|
background: #dcdcd3;
|
||||||
color: black;
|
color: black;
|
||||||
padding: 5px 5px 5px 5px;
|
padding: 5px 5px 5px 5px;
|
||||||
margin: 0em 0em 0em 0em;
|
margin: 0 0 0 0;
|
||||||
text-decoration:none;
|
text-decoration:none;
|
||||||
font-size: 13px;
|
font-size: 13px;
|
||||||
border-bottom: 1px solid #8CACBB;
|
border-bottom: 1px solid #8CACBB;
|
||||||
|
|||||||
@ -358,8 +358,6 @@ function getProductOrService($authentication,$id='',$ref='',$ref_ext='')
|
|||||||
'localtax1_tx' => $product->localtax1_tx,
|
'localtax1_tx' => $product->localtax1_tx,
|
||||||
'localtax2_tx' => $product->localtax2_tx,
|
'localtax2_tx' => $product->localtax2_tx,
|
||||||
|
|
||||||
'price_base_type' => $product->price_base_type,
|
|
||||||
|
|
||||||
'stock_real' => $product->stock_reel,
|
'stock_real' => $product->stock_reel,
|
||||||
'stock_alert' => $product->seuil_stock_alerte,
|
'stock_alert' => $product->seuil_stock_alerte,
|
||||||
'pmp' => $product->pmp,
|
'pmp' => $product->pmp,
|
||||||
|
|||||||
@ -196,8 +196,8 @@ if ($resql)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
print "No unpaid invoices found\n";
|
print "No services to expire found\n";
|
||||||
}
|
}
|
||||||
|
|
||||||
exit(0);
|
exit(0);
|
||||||
@ -261,7 +261,7 @@ function envoi_mail($mode,$oldemail,$message,$total,$userlang,$oldtarget,$durati
|
|||||||
$allmessage.=$conf->global->SCRIPT_EMAIL_EXPIRE_SERVICES_CUSTOMERS_HEADER;
|
$allmessage.=$conf->global->SCRIPT_EMAIL_EXPIRE_SERVICES_CUSTOMERS_HEADER;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
$allmessage.= "Dear customer".($usehtml?"<br>\n":"\n").($usehtml?"<br>\n":"\n");
|
$allmessage.= "Dear customer".($usehtml?"<br>\n":"\n").($usehtml?"<br>\n":"\n");
|
||||||
$allmessage.= "Please, find a summary of the services contracted by you that are about to expire.".($usehtml?"<br>\n":"\n").($usehtml?"<br>\n":"\n");
|
$allmessage.= "Please, find a summary of the services contracted by you that are about to expire.".($usehtml?"<br>\n":"\n").($usehtml?"<br>\n":"\n");
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user