diff --git a/build/deb/templates b/build/deb/templates index b96325a4e64..96acf2c4af1 100644 --- a/build/deb/templates +++ b/build/deb/templates @@ -1,13 +1,14 @@ Template: dolibarr/reconfigure-webserver Type: multiselect Choices: apache2, lighttpd +Default: apache2, lighttpd _Description: Web server to reconfigure automatically: Please choose the web server that should be automatically configured to run dolibarr. Template: dolibarr/postrm Type: boolean -Default: true +Default: false _Description: Delete database and uploaded files ? Answer if you want to removed the Dolibarr MySQL database and all other datas (datas related to this question are the Dolibarr DBMS account, all diff --git a/build/exe/doliwamp/doliwamp.iss b/build/exe/doliwamp/doliwamp.iss index b845dbe698d..f7ae8ef317e 100644 --- a/build/exe/doliwamp/doliwamp.iss +++ b/build/exe/doliwamp/doliwamp.iss @@ -10,7 +10,7 @@ ; only the root user with no password, stop server and catch ; files user.MY* to put them in the Dolibarr build/exe/doliwamp/mysql directory. ; -; Version: $Id: doliwamp.iss,v 1.84 2011/08/05 23:52:45 eldy Exp $ +; Version: $Id: doliwamp.iss,v 1.85 2011/08/07 16:37:45 eldy Exp $ ;---------------------------------------------------------------------------------------- @@ -397,7 +397,7 @@ begin // Remove lock file - lockfile := pathWithSlashes+'/www/dolibarr/install.lock'; + lockfile := pathWithSlashes+'/dolibarr_documents/install.lock'; if FileExists (lockfile) and not DeleteFile(lockfile) then begin themessage := FmtMessage(CustomMessage('FailedToDeleteLock'),[pathWithSlashes]); diff --git a/build/exe/doliwamp/rundoliwamp.bat.install b/build/exe/doliwamp/rundoliwamp.bat.install index d5610f5b38d..cbda6c86aba 100644 --- a/build/exe/doliwamp/rundoliwamp.bat.install +++ b/build/exe/doliwamp/rundoliwamp.bat.install @@ -3,7 +3,7 @@ REM Launch Dolibarr REM --------------- REM If no lock file, we call install process -IF NOT EXIST www\dolibarr\install.lock start "Dolibarr" "WAMPBROWSER" http://localhost:WAMPAPACHEPORT/dolibarr/install/ +IF NOT EXIST dolibarr_documents\install.lock start "Dolibarr" "WAMPBROWSER" http://localhost:WAMPAPACHEPORT/dolibarr/install/ REM If lock file exists, we call home page -IF EXIST www\dolibarr\install.lock start "Dolibarr" "WAMPBROWSER" http://localhost:WAMPAPACHEPORT/dolibarr/ +IF EXIST dolibarr_documents\install.lock start "Dolibarr" "WAMPBROWSER" http://localhost:WAMPAPACHEPORT/dolibarr/ diff --git a/build/makepack-dolibarr.pl b/build/makepack-dolibarr.pl index 2216b9e294f..7ef1c95fb3d 100644 --- a/build/makepack-dolibarr.pl +++ b/build/makepack-dolibarr.pl @@ -2,7 +2,7 @@ #---------------------------------------------------------------------------- # \file build/makepack-dolibarr.pl # \brief Dolibarr package builder (tgz, zip, rpm, deb, exe, aps) -# \version $Id: makepack-dolibarr.pl,v 1.135 2011/08/07 00:13:04 eldy Exp $ +# \version $Id: makepack-dolibarr.pl,v 1.139 2011/08/07 23:44:55 eldy Exp $ # \author (c)2004-2011 Laurent Destailleur #---------------------------------------------------------------------------- @@ -14,15 +14,15 @@ $MINOR="1"; $BUILD="0-beta"; # Mettre x pour release, x-dev pour dev, x-beta pour beta, x-rc pour release candidate $RPMSUBVERSION="auto"; # auto use value found into BUILD -@LISTETARGET=("TGZ","ZIP","RPM_GENE","RPM_FEDO","RPM_MAND","RPM_OPEN","DEB","APS","EXEDOLIWAMP","SNAPSHOT"); # Possible packages +@LISTETARGET=("TGZ","ZIP","RPM_GENERIC","RPM_FEDORA","RPM_MANDRIVA","RPM_OPENSUSE","DEB","APS","EXEDOLIWAMP","SNAPSHOT"); # Possible packages %REQUIREMENTTARGET=( # Tool requirement for each package "SNAPSHOT"=>"tar", "TGZ"=>"tar", "ZIP"=>"7z", -"RPM_GENE"=>"rpmbuild", -"RPM_FEDO"=>"rpmbuild", -"RPM_MAND"=>"rpmbuild", -"RPM_OPEN"=>"rpmbuild", +"RPM_GENERIC"=>"rpmbuild", +"RPM_FEDORA"=>"rpmbuild", +"RPM_MANDRIVA"=>"rpmbuild", +"RPM_OPENSUSE"=>"rpmbuild", "DEB"=>"dpkg", "APS"=>"zip", "EXEDOLIWAMP"=>"iscc.exe" @@ -40,19 +40,13 @@ $FILENAMERPM="$PROJECT-$MAJOR.$MINOR.$BUILD-$RPMSUBVERSION"; $FILENAMEDEB="${PROJECT}_${MAJOR}.${MINOR}.${BUILD}"; $FILENAMEAPS="$PROJECT-$MAJOR.$MINOR.$BUILD.app"; $FILENAMEEXEDOLIWAMP="$PROJECT-$MAJOR.$MINOR.$BUILD"; -if (-d "/usr/src/redhat") { - # redhat - $RPMDIR="/usr/src/redhat"; -} -if (-d "/usr/src/RPM") { - # mandrake - $RPMDIR="/usr/src/RPM"; -} +if (-d "/usr/src/redhat") { $RPMDIR="/usr/src/redhat"; } # redhat +if (-d "/usr/src/RPM") { $RPMDIR="/usr/src/RPM"; } # mandrake use vars qw/ $REVISION $VERSION /; -$REVISION='$Revision: 1.135 $'; $REVISION =~ /\s(.*)\s/; $REVISION=$1; -$VERSION="1.0 (build $REVISION)"; +$REVISION='$Revision: 1.139 $'; $REVISION =~ /\s(.*)\s/; $REVISION=$1; +$VERSION="3.1 (build $REVISION)"; @@ -65,7 +59,6 @@ $DIR||='.'; $DIR =~ s/([^\/\\])[\\\/]+$/$1/; $SOURCE="$DIR/.."; $DESTI="$SOURCE/build"; - # Detect OS type # -------------- if ("$^O" =~ /linux/i || (-d "/etc" && -d "/var" && "$^O" !~ /cygwin/i)) { $OS='linux'; $CR=''; } @@ -101,9 +94,8 @@ if (! $TEMP || ! -d $TEMP) { $BUILDROOT="$TEMP/buildroot"; -my $copyalreadydone=0; # Use - before number of choice to avoid copy +my $copyalreadydone=0; # Use "-" before number of choice to avoid copy my $batch=0; - for (0..@ARGV-1) { if ($ARGV[$_] =~ /^-*target=(\w+)/i) { $target=$1; $batch=1; } if ($ARGV[$_] =~ /^-*desti=(.+)/i) { $DESTI=$1; } @@ -112,6 +104,8 @@ for (0..@ARGV-1) { $FILENAMESNAPSHOT.="-".$PREFIX; } } +if ($ENV{"DESTI"}) { $DESTI = $ENV{"DESTI"}; } # Force output dir if env DESTI is defined + print "Makepack version $VERSION\n"; print "Building package name: $PROJECT\n"; @@ -131,10 +125,10 @@ else { my $NUM_SCRIPT; while (! $found) { my $cpt=0; - printf(" %d - %3s (%s)\n",$cpt,"All","Need ".join(",",values %REQUIREMENTTARGET)); + printf(" %2d - %-12s (%s)\n",$cpt,"All (Except SNAPSHOT)","Need ".join(",",values %REQUIREMENTTARGET)); foreach my $target (@LISTETARGET) { $cpt++; - printf(" %d - %3s (%s)\n",$cpt,$target,"Need ".$REQUIREMENTTARGET{$target}); + printf(" %2d - %-12s (%s)\n",$cpt,$target,"Need ".$REQUIREMENTTARGET{$target}); } # On demande de choisir le fichier à passer @@ -163,7 +157,7 @@ else { } else { foreach my $key (@LISTETARGET) { - $CHOOSEDTARGET{$key}=1; + if ($key ne 'SNAPSHOT') { $CHOOSEDTARGET{$key}=1; } } } } @@ -238,6 +232,8 @@ if ($nboftargetok) { if ($nboftargetneedbuildroot) { if (! $copyalreadydone) { + print "Creation of a buildroot used for all packages\n"; + print "Delete directory $BUILDROOT\n"; $ret=`rm -fr "$BUILDROOT"`; @@ -319,14 +315,10 @@ if ($nboftargetok) { $ret=`rm -fr $BUILDROOT/$PROJECT/htdocs/includes/odtphp/zip/pclzip/.svn`; $ret=`rm -f $BUILDROOT/$PROJECT/htdocs/includes/php_writeexcel/php.bmp`; $ret=`rm -fr $BUILDROOT/$PROJECT/htdocs/includes/phpexcel`; - #$ret=`rm -f $BUILDROOT/$PROJECT/htdocs/includes/phpexcel/PHPExcel/Shared/PDF/fonts/utils/freetype6.dll`; - #$ret=`rm -f $BUILDROOT/$PROJECT/htdocs/includes/phpexcel/PHPExcel/Shared/PDF/fonts/utils/zlib1.dll`; - #$ret=`rm -f $BUILDROOT/$PROJECT/htdocs/includes/phpexcel/PHPExcel/Shared/PDF/fonts/utils/pfm2afm`; - #$ret=`rm -f $BUILDROOT/$PROJECT/htdocs/includes/phpexcel/PHPExcel/Shared/PDF/fonts/utils/ttf2ufm`; $ret=`rm -fr $BUILDROOT/$PROJECT/htdocs/includes/smarty`; - $ret=`rm -fr $BUILDROOT/$PROJECT/htdocs/includes/tcpdf/fonts/dejavu-fonts-ttf-2.33`; - $ret=`rm -fr $BUILDROOT/$PROJECT/htdocs/includes/tcpdf/fonts/freefont-20100919`; - $ret=`rm -fr $BUILDROOT/$PROJECT/htdocs/includes/tcpdf/fonts/utils`; + $ret=`rm -fr $BUILDROOT/$PROJECT/htdocs/includes/tcpdf/fonts/dejavu-fonts-ttf-2.33`; + $ret=`rm -fr $BUILDROOT/$PROJECT/htdocs/includes/tcpdf/fonts/freefont-20100919`; + $ret=`rm -fr $BUILDROOT/$PROJECT/htdocs/includes/tcpdf/fonts/utils`; } # Build package for each target @@ -338,8 +330,10 @@ if ($nboftargetok) { print "\nBuild package for target $target\n"; if ($target eq 'SNAPSHOT') { + $NEWDESTI=$DESTI; + print "Remove target $FILENAMESNAPSHOT.tgz...\n"; - unlink("$DESTI/$FILENAMESNAPSHOT.tgz"); + unlink("$NEWDESTI/$FILENAMESNAPSHOT.tgz"); #rmdir "$BUILDROOT/$FILENAMESNAPSHOT"; $ret=`rm -fr $BUILDROOT/$FILENAMESNAPSHOT`; @@ -352,22 +346,19 @@ if ($nboftargetok) { $cmd="tar --exclude doli*.tgz --exclude doli*.deb --exclude doli*.exe --exclude doli*.zip --exclude doli*.rpm --exclude .cache --exclude .settings --exclude conf.php --exclude conf.php.mysql --exclude conf.php.old --exclude conf.php.postgres --directory \"$BUILDROOT\" --mode=go-w --group=500 --owner=500 -czvf \"$FILENAMESNAPSHOT.tgz\" $FILENAMESNAPSHOT"; print $cmd."\n"; $ret=`$cmd`; - if ($OS =~ /windows/i) - { - print "Move $FILENAMESNAPSHOT.tgz to $DESTI/$FILENAMESNAPSHOT.tgz\n"; - $ret=`mv "$FILENAMESNAPSHOT.tgz" "$DESTI/$FILENAMESNAPSHOT.tgz"`; - } - else - { - print "Move $FILENAMESNAPSHOT.tgz to $DESTI/$FILENAMESNAPSHOT.tgz\n"; - $ret=`mv "$FILENAMESNAPSHOT.tgz" "$DESTI/$FILENAMESNAPSHOT.tgz"`; - } + + # Move to final dir + print "Move $FILENAMESNAPSHOT.tgz to $NEWDESTI/$FILENAMESNAPSHOT.tgz\n"; + $ret=`mv "$FILENAMESNAPSHOT.tgz" "$NEWDESTI/$FILENAMESNAPSHOT.tgz"`; next; } if ($target eq 'TGZ') { + $NEWDESTI=$DESTI; + if (-d $DESTI.'/standard') { $NEWDESTI=$DESTI.'/standard'; } + print "Remove target $FILENAMETGZ.tgz...\n"; - unlink("$DESTI/$FILENAMETGZ.tgz"); + unlink("$NEWDESTI/$FILENAMETGZ.tgz"); #rmdir "$BUILDROOT/$FILENAMETGZ"; $ret=`rm -fr $BUILDROOT/$FILENAMETGZ`; @@ -376,24 +367,21 @@ if ($nboftargetok) { $ret=`$cmd`; print "Compress $FILENAMETGZ into $FILENAMETGZ.tgz...\n"; - $cmd="tar --exclude-vcs --exclude-from \"$DESTI/tgz/tar_exclude.txt\" --directory \"$BUILDROOT\" --mode=go-w --group=500 --owner=500 -czvf \"$FILENAMETGZ.tgz\" $FILENAMETGZ"; + $cmd="tar --exclude-vcs --exclude-from \"$BUILDROOT/$PROJECT/build/tgz/tar_exclude.txt\" --directory \"$BUILDROOT\" --mode=go-w --group=500 --owner=500 -czvf \"$FILENAMETGZ.tgz\" $FILENAMETGZ"; $ret=`$cmd`; - if ($OS =~ /windows/i) - { - print "Move $FILENAMETGZ.tgz to $DESTI/$FILENAMETGZ.tgz\n"; - $ret=`mv "$FILENAMETGZ.tgz" "$DESTI/$FILENAMETGZ.tgz"`; - } - else - { - print "Move $FILENAMETGZ.tgz to $DESTI/$FILENAMETGZ.tgz\n"; - $ret=`mv "$FILENAMETGZ.tgz" "$DESTI/$FILENAMETGZ.tgz"`; - } + + # Move to final dir + print "Move $FILENAMETGZ.tgz to $NEWDESTI/$FILENAMETGZ.tgz\n"; + $ret=`mv "$FILENAMETGZ.tgz" "$NEWDESTI/$FILENAMETGZ.tgz"`; next; } if ($target eq 'ZIP') { + $NEWDESTI=$DESTI; + if (-d $DESTI.'/standard') { $NEWDESTI=$DESTI.'/standard'; } + print "Remove target $FILENAMEZIP.zip...\n"; - unlink("$DESTI/$FILENAMEZIP.zip"); + unlink("$NEWDESTI/$FILENAMEZIP.zip"); #rmdir "$BUILDROOT/$FILENAMEZIP"; $ret=`rm -fr $BUILDROOT/$FILENAMEZIP`; @@ -411,21 +399,20 @@ if ($nboftargetok) { $ret= `$cmd`; chdir("$olddir"); - if ($OS =~ /windows/i) - { - print "Move $FILENAMEZIP.zip to $DESTI/$FILENAMEZIP.zip\n"; - $ret=`mv "$BUILDROOT/$FILENAMEZIP.zip" "$DESTI/$FILENAMEZIP.zip"`; - } - else - { - print "Move $FILENAMEZIP.zip to $DESTI/$FILENAMEZIP.zip\n"; - $ret=`mv "$BUILDROOT/$FILENAMEZIP.zip" "$DESTI/$FILENAMEZIP.zip"`; - } + # Move to final dir + print "Move $FILENAMEZIP.zip to $NEWDESTI/$FILENAMEZIP.zip\n"; + $ret=`mv "$BUILDROOT/$FILENAMEZIP.zip" "$NEWDESTI/$FILENAMEZIP.zip"`; next; } if ($target =~ /RPM/) { # Linux only - #$ARCH='i386'; + $NEWDESTI=$DESTI; + $subdir="package_rpm_generic"; + if ($target =~ /FEDO/i) { $subdir="package_rpm_redhat-fedora"; } + if ($target =~ /MAND/i) { $subdir="package_rpm_mandriva"; } + if ($target =~ /OPEN/i) { $subdir="package_rpm_opensuse"; } + if (-d $DESTI.'/'.$subdir) { $NEWDESTI=$DESTI.'/'.$subdir; } + $ARCH='noarch'; if ($RPMDIR eq "") { $RPMDIR=$ENV{'HOME'}."/rpmbuild"; } $newbuild = $BUILD; @@ -445,16 +432,34 @@ if ($nboftargetok) { $FILENAMETGZ2="$PROJECT-$MAJOR.$MINOR.$REL1"; print "Remove target ".$FILENAMETGZ2."-".$RPMSUBVERSION.".".$ARCH.".rpm...\n"; - unlink("$DESTI/".$FILENAMETGZ2."-".$RPMSUBVERSION.".".$ARCH.".rpm"); + unlink("$NEWDESTI/".$FILENAMETGZ2."-".$RPMSUBVERSION.".".$ARCH.".rpm"); + print "Remove target ".$FILENAMETGZ2."-".$RPMSUBVERSION.".src.rpm...\n"; + unlink("$NEWDESTI/".$FILENAMETGZ2."-".$RPMSUBVERSION.".src.rpm"); - #rmdir "$BUILDROOT/$FILENAMETGZ2"; $ret=`rm -fr $BUILDROOT/$FILENAMETGZ2`; print "Create directory $BUILDROOT/$FILENAMETGZ2/usr/share\n"; $ret=`mkdir -p "$BUILDROOT/$FILENAMETGZ2/usr/share"`; print "Copy $BUILDROOT/$PROJECT to $BUILDROOT/$FILENAMETGZ2/usr/share/$PROJECT\n"; $cmd="cp -pr \"$BUILDROOT/$PROJECT\" \"$BUILDROOT/$FILENAMETGZ2/usr/share/$PROJECT\""; $ret=`$cmd`; - + + print "Fix filefunc.inc.php, install/inc.php, support/inc.php\n"; + $cmd="cat \"$BUILDROOT/$PROJECT/htdocs/filefunc.inc.php\" | + sed -e 's/conffile = \"\\\.\\\.\\\/conf\\\/conf.php\"/conffile = \"\\\/etc\\\/dolibarr\\\/conf.php\"/g' | + sed -e 's/conffile = \"conf\\\/conf.php\"/conffile = \"\\\/etc\\\/dolibarr\\\/conf.php\"/g' | + sed -e 's/conffiletoshow = \"htdocs\\\/conf\\\/conf.php\"/conffiletoshow = \"\\\/etc\\\/dolibarr\\\/conf.php\"/g' > \"$BUILDROOT/$FILENAMETGZ2/usr/share/$PROJECT/htdocs/filefunc.inc.php\""; + $ret=`$cmd`; + $cmd="cat \"$BUILDROOT/$PROJECT/htdocs/install/inc.php\" | + sed -e 's/conffile = \"\\\.\\\.\\\/conf\\\/conf.php\"/conffile = \"\\\/etc\\\/dolibarr\\\/conf.php\"/g' | + sed -e 's/conffile = \"conf\\\/conf.php\"/conffile = \"\\\/etc\\\/dolibarr\\\/conf.php\"/g' | + sed -e 's/conffiletoshow = \"htdocs\\\/conf\\\/conf.php\"/conffiletoshow = \"\\\/etc\\\/dolibarr\\\/conf.php\"/g' > \"$BUILDROOT/$FILENAMETGZ2/usr/share/$PROJECT/htdocs/install/inc.php\""; + $ret=`$cmd`; + $cmd="cat \"$BUILDROOT/$PROJECT/htdocs/support/inc.php\" | + sed -e 's/conffile = \"\\\.\\\.\\\/conf\\\/conf.php\"/conffile = \"\\\/etc\\\/dolibarr\\\/conf.php\"/g' | + sed -e 's/conffile = \"conf\\\/conf.php\"/conffile = \"\\\/etc\\\/dolibarr\\\/conf.php\"/g' | + sed -e 's/conffiletoshow = \"htdocs\\\/conf\\\/conf.php\"/conffiletoshow = \"\\\/etc\\\/dolibarr\\\/conf.php\"/g' > \"$BUILDROOT/$FILENAMETGZ2/usr/share/$PROJECT/htdocs/support/inc.php\""; + $ret=`$cmd`; + print "Remove other files\n"; $ret=`rm -f $BUILDROOT/$FILENAMETGZ2/usr/share/$PROJECT/ChangeLog`; $ret=`rm -f $BUILDROOT/$FILENAMETGZ2/usr/share/$PROJECT/COPYING`; @@ -505,7 +510,7 @@ if ($nboftargetok) { # To remove once stable $ret=`rm -fr $BUILDROOT/$FILENAMETGZ2/usr/share/$PROJECT/htdocs/htdocs/theme/bureau2crea`; - # Apache conf files + # Conf files print "Copy apache.conf file into $BUILDROOT/$FILENAMETGZ2/etc/$PROJECT/httpd-dolibarr.conf\n"; $ret=`mkdir -p "$BUILDROOT/$FILENAMETGZ2/etc/$PROJECT"`; $ret=`cp "$SOURCE/build/rpm/httpd-dolibarr.conf" "$BUILDROOT/$FILENAMETGZ2/etc/$PROJECT/apache.conf"`; @@ -513,21 +518,6 @@ if ($nboftargetok) { $ret=`cp "$SOURCE/build/rpm/conf.php" "$BUILDROOT/$FILENAMETGZ2/etc/$PROJECT/conf.php"`; $ret=`cp "$SOURCE/build/rpm/install.forced.php.install" "$BUILDROOT/$FILENAMETGZ2/etc/$PROJECT/install.forced.php"`; - # Dolibarr conf files - # TODO - - # dolibarr.desktop - #print "Create directory $BUILDROOT/$FILENAMETGZ2/usr/share/applications\n"; - #$ret=`mkdir -p "$BUILDROOT/$FILENAMETGZ2/usr/share/applications"`; - #print "Copy desktop file into $BUILDROOT/$FILENAMETGZ2/usr/share/applications/dolibarr.desktop\n"; - #$ret=`cp "$SOURCE/build/rpm/dolibarr.desktop" "$BUILDROOT/$FILENAMETGZ2/usr/share/applications/dolibarr.desktop"`; - - # pixmap - #print "Create directory $BUILDROOT/$FILENAMETGZ2/usr/share/pixmaps\n"; - #$ret=`mkdir -p "$BUILDROOT/$FILENAMETGZ2/usr/share/pixmaps"`; - #print "Copy pixmap file into $BUILDROOT/$FILENAMETGZ2/usr/share/pixmaps/dolibarr.xpm\n"; - #$ret=`cp "$SOURCE/doc/images/dolibarr.xpm" "$BUILDROOT/$FILENAMETGZ2/usr/share/pixmaps/dolibarr.xpm"`; - # Set owners print "Set owners on files/dir\n"; $ret=`chown -R root.root $BUILDROOT/$FILENAMETGZ2`; @@ -583,18 +573,24 @@ if ($nboftargetok) { #$ret=`rpmbuild -vvvv --clean -ba $BUILDROOT/${BUILDFIC}`; $ret=`rpmbuild --clean -ba $BUILDROOT/${BUILDFIC}`; - print "Move $RPMDIR/RPMS/".$ARCH."/".$FILENAMETGZ2."-".$RPMSUBVERSION.".".$ARCH.".rpm into $DESTI/".$FILENAMETGZ2."-".$RPMSUBVERSION.".".$ARCH.".rpm\n"; - $cmd="mv \"$RPMDIR/RPMS/".$ARCH."/".$FILENAMETGZ2."-".$RPMSUBVERSION.".".$ARCH.".rpm\" \"$DESTI/".$FILENAMETGZ2."-".$RPMSUBVERSION.".".$ARCH.".rpm\""; + # Move to final dir + print "Move $RPMDIR/RPMS/".$ARCH."/".$FILENAMETGZ2."-".$RPMSUBVERSION.".".$ARCH.".rpm into $NEWDESTI/".$FILENAMETGZ2."-".$RPMSUBVERSION.".".$ARCH.".rpm\n"; + $cmd="mv \"$RPMDIR/RPMS/".$ARCH."/".$FILENAMETGZ2."-".$RPMSUBVERSION.".".$ARCH.".rpm\" \"$NEWDESTI/".$FILENAMETGZ2."-".$RPMSUBVERSION.".".$ARCH.".rpm\""; $ret=`$cmd`; - print "Move $RPMDIR/SRPMS/".$FILENAMETGZ2."-".$RPMSUBVERSION.".src.rpm into $DESTI/".$FILENAMETGZ2."-".$RPMSUBVERSION.".src.rpm\n"; - $cmd="mv \"$RPMDIR/SRPMS/".$FILENAMETGZ2."-".$RPMSUBVERSION.".src.rpm\" \"$DESTI/".$FILENAMETGZ2."-".$RPMSUBVERSION.".src.rpm\""; + print "Move $RPMDIR/SRPMS/".$FILENAMETGZ2."-".$RPMSUBVERSION.".src.rpm into $NEWDESTI/".$FILENAMETGZ2."-".$RPMSUBVERSION.".src.rpm\n"; + $cmd="mv \"$RPMDIR/SRPMS/".$FILENAMETGZ2."-".$RPMSUBVERSION.".src.rpm\" \"$NEWDESTI/".$FILENAMETGZ2."-".$RPMSUBVERSION.".src.rpm\""; + $ret=`$cmd`; + print "Move $RPMDIR/SOURCES/".$FILENAMETGZ2.".tgz into $NEWDESTI/".$FILENAMETGZ2.".tgz\n"; + $cmd="mv \"$RPMDIR/SOURCES/".$FILENAMETGZ2.".tgz\" \"$NEWDESTI/".$FILENAMETGZ2.".tgz\""; $ret=`$cmd`; - next; } if ($target eq 'DEB') { + $NEWDESTI=$DESTI; + if (-d $DESTI.'/package_debian-ubuntu') { $NEWDESTI=$DESTI.'/package_debian-ubuntu'; } + $olddir=getcwd(); $newbuild = $BUILD; @@ -609,16 +605,41 @@ if ($nboftargetok) { # now build is 0 for example print "Remove target ${FILENAMEDEB}_all.deb...\n"; - unlink("$DESTI/${FILENAMEDEB}_all.deb"); + unlink("$NEWDESTI/${FILENAMEDEB}_all.deb"); + print "Remove target ${FILENAMEDEB}.dsc...\n"; + unlink("$NEWDESTI/${FILENAMEDEB}.dsc"); + print "Remove target ${FILENAMEDEB}.tar.gz...\n"; + unlink("$NEWDESTI/${FILENAMEDEB}.tar.gz"); + print "Remove target ${FILENAMEDEB}.changes...\n"; + unlink("$NEWDESTI/${FILENAMEDEB}.changes"); #rmdir "$BUILDROOT/$PROJECT.tmp"; $ret=`rm -fr $BUILDROOT/$PROJECT.tmp`; + $ret=`rm -fr $BUILDROOT/$PROJECT-$MAJOR.$MINOR.$build`; + print "Create directory $BUILDROOT/$PROJECT.tmp/usr/share\n"; $ret=`mkdir -p "$BUILDROOT/$PROJECT.tmp/usr/share"`; print "Copy $BUILDROOT/$PROJECT to $BUILDROOT/$PROJECT.tmp/usr/share/$PROJECT\n"; $cmd="cp -pr \"$BUILDROOT/$PROJECT\" \"$BUILDROOT/$PROJECT.tmp/usr/share/$PROJECT\""; $ret=`$cmd`; + print "Fix filefunc.inc.php, install/inc.php, support/inc.php\n"; + $cmd="cat \"$BUILDROOT/$PROJECT/htdocs/filefunc.inc.php\" | + sed -e 's/conffile = \"\\\.\\\.\\\/conf\\\/conf.php\"/conffile = \"\\\/etc\\\/dolibarr\\\/conf.php\"/g' | + sed -e 's/conffile = \"conf\\\/conf.php\"/conffile = \"\\\/etc\\\/dolibarr\\\/conf.php\"/g' | + sed -e 's/conffiletoshow = \"htdocs\\\/conf\\\/conf.php\"/conffiletoshow = \"\\\/etc\\\/dolibarr\\\/conf.php\"/g' > \"$BUILDROOT/$PROJECT.tmp/usr/share/$PROJECT/htdocs/filefunc.inc.php\""; + $ret=`$cmd`; + $cmd="cat \"$BUILDROOT/$PROJECT/htdocs/install/inc.php\" | + sed -e 's/conffile = \"\\\.\\\.\\\/conf\\\/conf.php\"/conffile = \"\\\/etc\\\/dolibarr\\\/conf.php\"/g' | + sed -e 's/conffile = \"conf\\\/conf.php\"/conffile = \"\\\/etc\\\/dolibarr\\\/conf.php\"/g' | + sed -e 's/conffiletoshow = \"htdocs\\\/conf\\\/conf.php\"/conffiletoshow = \"\\\/etc\\\/dolibarr\\\/conf.php\"/g' > \"$BUILDROOT/$PROJECT.tmp/usr/share/$PROJECT/htdocs/install/inc.php\""; + $ret=`$cmd`; + $cmd="cat \"$BUILDROOT/$PROJECT/htdocs/support/inc.php\" | + sed -e 's/conffile = \"\\\.\\\.\\\/conf\\\/conf.php\"/conffile = \"\\\/etc\\\/dolibarr\\\/conf.php\"/g' | + sed -e 's/conffile = \"conf\\\/conf.php\"/conffile = \"\\\/etc\\\/dolibarr\\\/conf.php\"/g' | + sed -e 's/conffiletoshow = \"htdocs\\\/conf\\\/conf.php\"/conffiletoshow = \"\\\/etc\\\/dolibarr\\\/conf.php\"/g' > \"$BUILDROOT/$PROJECT.tmp/usr/share/$PROJECT/htdocs/support/inc.php\""; + $ret=`$cmd`; + # Create DEBIAN directory print "Create directory $BUILDROOT/$PROJECT.tmp/DEBIAN\n"; $ret=`mkdir "$BUILDROOT/$PROJECT.tmp/DEBIAN"`; @@ -803,7 +824,7 @@ if ($nboftargetok) { $ret=`$cmd`; # Creation of source package - print "Go to directory $BUILDROOT\n"; + print "Go to directory $BUILDROOT/$PROJECT-$MAJOR.$MINOR.$build\n"; chdir("$BUILDROOT/$PROJECT-$MAJOR.$MINOR.$build"); #$cmd="dpkg-source -b $BUILDROOT/$PROJECT-$MAJOR.$MINOR.$build"; $cmd="dpkg-buildpackage -us -uc"; @@ -813,26 +834,19 @@ if ($nboftargetok) { chdir("$olddir"); - if ($OS =~ /windows/i) - { - print "Move *_all.deb to $DESTI\n"; - $ret=`mv $BUILDROOT/*_all.deb "$DESTI/"`; - $ret=`mv $BUILDROOT/*.dsc "$DESTI/"`; - $ret=`mv $BUILDROOT/*.tar.gz "$DESTI/"`; - $ret=`mv $BUILDROOT/*.changes "$DESTI/"`; - } - else - { - print "Move *_all.deb to $DESTI\n"; - $ret=`mv $BUILDROOT/*_all.deb "$DESTI/"`; - $ret=`mv $BUILDROOT/*.dsc "$DESTI/"`; - $ret=`mv $BUILDROOT/*.tar.gz "$DESTI/"`; - $ret=`mv $BUILDROOT/*.changes "$DESTI/"`; - } + # Move to final dir + print "Move *_all.deb to $NEWDESTI\n"; + $ret=`mv $BUILDROOT/*_all.deb "$NEWDESTI/"`; + $ret=`mv $BUILDROOT/*.dsc "$NEWDESTI/"`; + $ret=`mv $BUILDROOT/*.tar.gz "$NEWDESTI/"`; + $ret=`mv $BUILDROOT/*.changes "$NEWDESTI/"`; next; } if ($target eq 'APS') { + $NEWDESTI=$DESTI; + if (-d $DESTI.'/package_aps') { $NEWDESTI=$DESTI.'/package_aps'; } + $newbuild = $BUILD; $newbuild =~ s/(dev|alpha)/0/gi; # dev $newbuild =~ s/beta/1/gi; # beta @@ -844,7 +858,7 @@ if ($nboftargetok) { print "Version is $MAJOR.$MINOR.$REL1-$RPMSUBVERSION\n"; print "Remove target $FILENAMEAPS.zip...\n"; - unlink "$DESTI/$FILENAMEAPS.zip"; + unlink "$NEWDESTI/$FILENAMEAPS.zip"; #rmdir "$BUILDROOT/$PROJECT.tmp"; $ret=`rm -fr $BUILDROOT/$PROJECT.tmp`; @@ -917,31 +931,29 @@ if ($nboftargetok) { $ret= `$cmd`; chdir("$olddir"); - if ($OS =~ /windows/i) - { - print "Move $BUILDROOT/$FILENAMEAPS.zip to $DESTI/$FILENAMEAPS.zip\n"; - $ret=`mv "$BUILDROOT/$FILENAMEAPS.zip" "$DESTI/$FILENAMEAPS.zip"`; - } - else - { - print "Move $BUILDROOT/$FILENAMEAPS.zip to $DESTI/$FILENAMEAPS.zip\n"; - $ret=`mv "$BUILDROOT/$FILENAMEAPS.zip" "$DESTI/$FILENAMEAPS.zip"`; - } + # Move to final dir + print "Move $BUILDROOT/$FILENAMEAPS.zip to $NEWDESTI/$FILENAMEAPS.zip\n"; + $ret=`mv "$BUILDROOT/$FILENAMEAPS.zip" "$NEWDESTI/$FILENAMEAPS.zip"`; next; } if ($target eq 'EXEDOLIWAMP') { + $NEWDESTI=$DESTI; + if (-d $DESTI.'/package_windows') { $NEWDESTI=$DESTI.'/package_windows'; } + print "Remove target $FILENAMEEXEDOLIWAMP.exe...\n"; - unlink "$DESTI/$FILENAMEEXEDOLIWAMP.exe"; + unlink "$NEWDESTI/$FILENAMEEXEDOLIWAMP.exe"; print "Compil exe $FILENAMEEXEDOLIWAMP.exe file from iss file \"$SOURCE\\build\\exe\\doliwamp\\doliwamp.iss\"\n"; $cmd= "iscc.exe \"$SOURCE\\build\\exe\\doliwamp\\doliwamp.iss\""; print "$cmd\n"; $ret= `$cmd`; #print "$ret\n"; - print "Move \"$SOURCE\\build\\$FILENAMEEXEDOLIWAMP.exe\" to $DESTI/$FILENAMEEXEDOLIWAMP.exe\n"; - rename("$SOURCE/build/$FILENAMEEXEDOLIWAMP.exe","$DESTI/$FILENAMEEXEDOLIWAMP.exe"); + + # Move to final dir + print "Move \"$SOURCE\\build\\$FILENAMEEXEDOLIWAMP.exe\" to $NEWDESTI/$FILENAMEEXEDOLIWAMP.exe\n"; + rename("$SOURCE/build/$FILENAMEEXEDOLIWAMP.exe","$NEWDESTI/$FILENAMEEXEDOLIWAMP.exe"); next; } } diff --git a/build/makepack-howto.txt b/build/makepack-howto.txt index 5d7afe36847..f8383f013ed 100644 --- a/build/makepack-howto.txt +++ b/build/makepack-howto.txt @@ -19,10 +19,9 @@ beta version of Dolibarr, step by step. - Add a CVS Tag (DOLIBARR_x_y_BETA) - Create a branch (DOLIBARR_x_y_BRANCH). -- Update the CVS on server that build automatically the tgz beta package - or build Dolibarr and DoliWamp with makepack-dolibarr.pl -- Enable entries on joomla web site www.dolibarr.org with links - that point to that file ("Dolibarr CVS snapshot of current beta"). +- Run makepack-dolibarr.pl to generate all packages. +- Enable the category that point to the beta files on joomla + web site www.dolibarr.org - Post a news on dolibarr.org/dolibarr.fr - Send mail on mailings-list diff --git a/build/rpm/dolibarr_fedora.spec b/build/rpm/dolibarr_fedora.spec index 8f0a678759d..87da5c20a4c 100755 --- a/build/rpm/dolibarr_fedora.spec +++ b/build/rpm/dolibarr_fedora.spec @@ -6,10 +6,8 @@ # edit it if you need to match your rules. # -------------------------------------------------------- -%define version __VERSION__ - Name: dolibarr -Version: %{version} +Version: __VERSION__ Release: __RELEASE__%{?dist} Summary: ERP and CRM software for small and medium companies or foundations Summary(es): Software ERP y CRM para pequeñas y medianas empresas o, asociaciones o autónomos @@ -21,16 +19,14 @@ License: GPLv2+ Vendor: Dolibarr dev team URL: http://www.dolibarr.org -Source0: http://www.dolibarr.org/files/fedora/dolibarr-%{version}.tgz +Source0: http://www.dolibarr.org/files/fedora/%{name}-%{version}.tgz BuildArch: noarch #BuildArchitectures: noarch -BuildRoot: %{_tmppath}/dolibarr-%{version}-build +BuildRoot: %{_tmppath}/%{name}-%{version}-build Group: Applications/Internet - Requires: mysql-server mysql httpd php php-cli php-gd php-ldap php-imap php-mysql - # Set yes to build test package, no for release (this disable need of /usr/bin/php not found by OpenSuse) AutoReqProv: no @@ -93,7 +89,8 @@ cui hai bisogno ed essere facile da usare. %{__mkdir} -p $RPM_BUILD_ROOT%{_datadir}/pixmaps %{__install} -m 644 usr/share/dolibarr/doc/images/dolibarr_48x48.png $RPM_BUILD_ROOT%{_datadir}/pixmaps/dolibarr.png %{__mkdir} -p $RPM_BUILD_ROOT%{_datadir}/applications -%{__desktop-file-install} -m 644 usr/share/dolibarr/build/rpm/dolibarr.desktop $RPM_BUILD_ROOT%{_datadir}/applications/dolibarr.desktop +#desktop-file-install -m 644 usr/share/dolibarr/build/rpm/dolibarr.desktop $RPM_BUILD_ROOT%{_datadir}/applications/dolibarr.desktop +%{__install} -m 644 usr/share/dolibarr/build/rpm/dolibarr.desktop $RPM_BUILD_ROOT%{_datadir}/applications/dolibarr.desktop %{__mkdir} -p $RPM_BUILD_ROOT/usr/share/dolibarr/build %{__mkdir} -p $RPM_BUILD_ROOT/usr/share/dolibarr/htdocs @@ -116,15 +113,15 @@ cui hai bisogno ed essere facile da usare. %files %defattr(-, root, root, 0755) -%doc /usr/share/doc/dolibarr -%dir /usr/share/dolibarr/build -%dir /usr/share/dolibarr/htdocs -%dir /usr/share/dolibarr/scripts +%doc %_datadir/doc/dolibarr +%dir %_datadir/dolibarr/build +%dir %_datadir/dolibarr/htdocs +%dir %_datadir/dolibarr/scripts %_datadir/pixmaps/dolibarr.png %_datadir/applications/dolibarr.desktop -/usr/share/dolibarr/build/* -/usr/share/dolibarr/htdocs/* -/usr/share/dolibarr/scripts/* +%_datadir/dolibarr/build/* +%_datadir/dolibarr/htdocs/* +%_datadir/dolibarr/scripts/* %defattr(0664, -, -) %config(noreplace) %{_sysconfdir}/dolibarr/conf.php @@ -150,6 +147,7 @@ export apachegroup='apache'; echo Create document directory $docdir %{__mkdir} -p $docdir +# Set correct owner on config files %{__chown} -R root:$apachegroup /etc/dolibarr/* # Create config for se $seconfig diff --git a/build/rpm/dolibarr_generic.spec b/build/rpm/dolibarr_generic.spec index 6a03be7d091..9b873d674f4 100755 --- a/build/rpm/dolibarr_generic.spec +++ b/build/rpm/dolibarr_generic.spec @@ -6,10 +6,8 @@ # edit it if you need to match your rules. # -------------------------------------------------------- -%define version __VERSION__ - Name: dolibarr -Version: %{version} +Version: __VERSION__ Release: __RELEASE__ Summary: ERP and CRM software for small and medium companies or foundations Summary(es): Software ERP y CRM para pequeñas y medianas empresas o, asociaciones o autónomos @@ -21,18 +19,18 @@ License: GPLv2+ Vendor: Dolibarr dev team URL: http://www.dolibarr.org -Source0: http://www.dolibarr.org/files/fedora/dolibarr-%{version}.tgz +Source0: http://www.dolibarr.org/files/fedora/%{name}-%{version}.tgz BuildArch: noarch #BuildArchitectures: noarch -BuildRoot: %{_tmppath}/dolibarr-%{version}-build +BuildRoot: %{_tmppath}/%{name}-%{version}-build # For Mandriva-Mageia Group: Networking/WWW # For all other distrib Group: Applications/Internet - # Requires for Fedora-Redhat -Requires: mysql-server mysql httpd php php-cli php-gd php-ldap php-imap php-mysql +Requires: mysql-server mysql httpd php php-cli php-gd php-ldap php-imap +Requires: php-mysql >= 4.1.0 # Requires for OpenSuse #Requires: mysql-community-server mysql-community-server-client apache2 apache2-mod_php5 php5 php5-gd php5-ldap php5-imap php5-mysql php5-openssl # Requires for Mandriva-Mageia @@ -124,37 +122,37 @@ cui hai bisogno ed essere facile da usare. %files %defattr(-, root, root, 0755) -%doc /usr/share/doc/dolibarr -%dir /usr/share/dolibarr/build -%dir /usr/share/dolibarr/htdocs -%dir /usr/share/dolibarr/scripts +%doc %_datadir/doc/dolibarr +%dir %_datadir/dolibarr/build +%dir %_datadir/dolibarr/htdocs +%dir %_datadir/dolibarr/scripts %_datadir/pixmaps/dolibarr.png %_datadir/applications/dolibarr.desktop -/usr/share/dolibarr/build/* -/usr/share/dolibarr/htdocs/* -/usr/share/dolibarr/scripts/* -#lang(ar_SA) /usr/share/dolibarr/htdocs/langs/ar_SA -#lang(ca_ES) /usr/share/dolibarr/htdocs/langs/ca_ES -#lang(da_DK) /usr/share/dolibarr/htdocs/langs/da_DK -#lang(de_AT) /usr/share/dolibarr/htdocs/langs/de_AT -#lang(de_DE) /usr/share/dolibarr/htdocs/langs/de_DE -#lang(el_GR) /usr/share/dolibarr/htdocs/langs/el_GR -#lang(en_AU) /usr/share/dolibarr/htdocs/langs/el_AU -#lang(en_GB) /usr/share/dolibarr/htdocs/langs/el_GB -#lang(en_IN) /usr/share/dolibarr/htdocs/langs/el_IN -#lang(en_NZ) /usr/share/dolibarr/htdocs/langs/el_NZ -#lang(en) /usr/share/dolibarr/htdocs/langs/en_US -#lang(es_AR) /usr/share/dolibarr/htdocs/langs/es_AR -#lang(es) /usr/share/dolibarr/htdocs/langs/es_ES -#lang(es_HN) /usr/share/dolibarr/htdocs/langs/es_HN -#lang(es_MX) /usr/share/dolibarr/htdocs/langs/en_MX -#lang(es_PR) /usr/share/dolibarr/htdocs/langs/en_PR -#lang(fa_IR) /usr/share/dolibarr/htdocs/langs/fa_IR -#lang(fi_FI) /usr/share/dolibarr/htdocs/langs/fi_FI -#lang(fr_BE) /usr/share/dolibarr/htdocs/langs/fr_BE -#lang(fr_CA) /usr/share/dolibarr/htdocs/langs/fr_CA -#lang(fr_CH) /usr/share/dolibarr/htdocs/langs/fr_CH -#lang(fr) /usr/share/dolibarr/htdocs/langs/fr_FR +%_datadir/dolibarr/build/* +%_datadir/dolibarr/htdocs/* +%_datadir/dolibarr/scripts/* +#lang(ar_SA) %_datadir/dolibarr/htdocs/langs/ar_SA +#lang(ca_ES) %_datadir/dolibarr/htdocs/langs/ca_ES +#lang(da_DK) %_datadir/dolibarr/htdocs/langs/da_DK +#lang(de_AT) %_datadir/dolibarr/htdocs/langs/de_AT +#lang(de_DE) %_datadir/dolibarr/htdocs/langs/de_DE +#lang(el_GR) %_datadir/dolibarr/htdocs/langs/el_GR +#lang(en_AU) %_datadir/dolibarr/htdocs/langs/el_AU +#lang(en_GB) %_datadir/dolibarr/htdocs/langs/el_GB +#lang(en_IN) %_datadir/dolibarr/htdocs/langs/el_IN +#lang(en_NZ) %_datadir/dolibarr/htdocs/langs/el_NZ +#lang(en) %_datadir/dolibarr/htdocs/langs/en_US +#lang(es_AR) %_datadir/dolibarr/htdocs/langs/es_AR +#lang(es) %_datadir/dolibarr/htdocs/langs/es_ES +#lang(es_HN) %_datadir/dolibarr/htdocs/langs/es_HN +#lang(es_MX) %_datadir/dolibarr/htdocs/langs/en_MX +#lang(es_PR) %_datadir/dolibarr/htdocs/langs/en_PR +#lang(fa_IR) %_datadir/dolibarr/htdocs/langs/fa_IR +#lang(fi_FI) %_datadir/dolibarr/htdocs/langs/fi_FI +#lang(fr_BE) %_datadir/dolibarr/htdocs/langs/fr_BE +#lang(fr_CA) %_datadir/dolibarr/htdocs/langs/fr_CA +#lang(fr_CH) %_datadir/dolibarr/htdocs/langs/fr_CH +#lang(fr) %_datadir/dolibarr/htdocs/langs/fr_FR %defattr(0664, -, -) %config(noreplace) %{_sysconfdir}/dolibarr/conf.php @@ -220,6 +218,8 @@ then %{__cat} /usr/share/dolibarr/build/rpm/install.forced.php.install | sed -e 's/__SUPERUSERLOGIN__/'$superuserlogin'/g' | sed -e 's/__SUPERUSERPASSWORD__/'$superuserpassword'/g' > $installconfig %{__chmod} -R 660 $installconfig fi + +# Set correct owner on config files %{__chown} -R root:$apachegroup /etc/dolibarr/* # Create config for se $seconfig @@ -227,10 +227,8 @@ if [ "x$os" = "xfedora-redhat" -a -s /sbin/restorecon ]; then echo Add SE Linux permissions for dolibarr # semanage add records into /etc/selinux/targeted/contexts/files/file_contexts.local semanage fcontext -a -t httpd_sys_script_rw_t "/etc/dolibarr(/.*?)" - #semanage fcontext -a -t httpd_sys_script_rw_t "/usr/share/dolibarr(/.*?)" semanage fcontext -a -t httpd_sys_script_rw_t "/var/lib/dolibarr(/.*?)" restorecon -R -v /etc/dolibarr - #restorecon -R -v /usr/share/dolibarr restorecon -R -v /var/lib/dolibarr fi diff --git a/build/rpm/dolibarr_mandriva.spec b/build/rpm/dolibarr_mandriva.spec index 5dd30522ed4..79df79dcf40 100755 --- a/build/rpm/dolibarr_mandriva.spec +++ b/build/rpm/dolibarr_mandriva.spec @@ -6,10 +6,8 @@ # edit it if you need to match your rules. # -------------------------------------------------------- -%define version __VERSION__ - Name: dolibarr -Version: %{version} +Version: __VERSION__ Release: __RELEASE__ Summary: ERP and CRM software for small and medium companies or foundations Summary(es): Software ERP y CRM para pequeñas y medianas empresas o, asociaciones o autónomos @@ -21,16 +19,14 @@ License: GPLv2+ Vendor: Dolibarr dev team URL: http://www.dolibarr.org -Source0: http://www.dolibarr.org/files/mandriva/dolibarr-%{version}.tgz +Source0: http://www.dolibarr.org/files/mandriva/%{name}-%{version}.tgz BuildArch: noarch #BuildArchitectures: noarch -BuildRoot: %{_tmppath}/dolibarr-%{version}-build +BuildRoot: %{_tmppath}/%{name}-%{version}-build Group: Networking/WWW - Requires: mysql mysql-client apache-base apache-mod_php php-cgi php-cli php-bz2 php-gd php-ldap php-imap php-mysqli php-openssl - # Set yes to build test package, no for release (this disable need of /usr/bin/php not found by OpenSuse) AutoReqProv: no @@ -116,15 +112,15 @@ cui hai bisogno ed essere facile da usare. %files %defattr(-, root, root, 0755) -%doc /usr/share/doc/dolibarr -%dir /usr/share/dolibarr/build -%dir /usr/share/dolibarr/htdocs -%dir /usr/share/dolibarr/scripts +%doc %_datadir/doc/dolibarr +%dir %_datadir/dolibarr/build +%dir %_datadir/dolibarr/htdocs +%dir %_datadir/dolibarr/scripts %_datadir/pixmaps/dolibarr.png %_datadir/applications/dolibarr.desktop -/usr/share/dolibarr/build/* -/usr/share/dolibarr/htdocs/* -/usr/share/dolibarr/scripts/* +%_datadir/dolibarr/build/* +%_datadir/dolibarr/htdocs/* +%_datadir/dolibarr/scripts/* %defattr(0664, -, -) %config(noreplace) %{_sysconfdir}/dolibarr/conf.php @@ -150,6 +146,7 @@ export apachegroup='apache'; echo Create document directory $docdir %{__mkdir} -p $docdir +# Set correct owner on config files %{__chown} -R root:$apachegroup /etc/dolibarr/* # Create a config link dolibarr.conf diff --git a/build/rpm/dolibarr_opensuse.spec b/build/rpm/dolibarr_opensuse.spec index c5c6e9e6074..f785d3f41b1 100755 --- a/build/rpm/dolibarr_opensuse.spec +++ b/build/rpm/dolibarr_opensuse.spec @@ -6,10 +6,8 @@ # edit it if you need to match your rules. # -------------------------------------------------------- -%define version __VERSION__ - Name: dolibarr -Version: %{version} +Version: __VERSION__ Release: __RELEASE__ Summary: ERP and CRM software for small and medium companies or foundations Summary(es): Software ERP y CRM para pequeñas y medianas empresas o, asociaciones o autónomos @@ -21,16 +19,14 @@ License: GPLv2+ Vendor: Dolibarr dev team URL: http://www.dolibarr.org -Source0: http://www.dolibarr.org/files/opensuse/dolibarr-%{version}.tgz +Source0: http://www.dolibarr.org/files/opensuse/%{name}-%{version}.tgz BuildArch: noarch #BuildArchitectures: noarch -BuildRoot: %{_tmppath}/dolibarr-%{version}-build +BuildRoot: %{_tmppath}/%{name}-%{version}-build Group: Applications/Internet - Requires: mysql-community-server mysql-community-server-client apache2 apache2-mod_php5 php5 php5-gd php5-ldap php5-imap php5-mysql php5-openssl - # Set yes to build test package, no for release (this disable need of /usr/bin/php not found by OpenSuse) AutoReqProv: no @@ -115,15 +111,15 @@ cui hai bisogno ed essere facile da usare. %files %defattr(-, root, root, 0755) -%doc /usr/share/doc/dolibarr -%dir /usr/share/dolibarr/build -%dir /usr/share/dolibarr/htdocs -%dir /usr/share/dolibarr/scripts +%doc %_datadir/doc/dolibarr +%dir %_datadir/dolibarr/build +%dir %_datadir/dolibarr/htdocs +%dir %_datadir/dolibarr/scripts %_datadir/pixmaps/dolibarr.png %_datadir/applications/dolibarr.desktop -/usr/share/dolibarr/build/* -/usr/share/dolibarr/htdocs/* -/usr/share/dolibarr/scripts/* +%_datadir/dolibarr/build/* +%_datadir/dolibarr/htdocs/* +%_datadir/dolibarr/scripts/* %defattr(0664, -, -) %config(noreplace) %{_sysconfdir}/dolibarr/conf.php @@ -149,6 +145,7 @@ export apachegroup='www'; echo Create document directory $docdir %{__mkdir} -p $docdir +# Set correct owner on config files %{__chown} -R root:$apachegroup /etc/dolibarr/* # Create a config link dolibarr.conf diff --git a/build/rpm/file_contexts.dolibarr b/build/rpm/file_contexts.dolibarr index 6e7cca9e3cc..1ae18e623cd 100755 --- a/build/rpm/file_contexts.dolibarr +++ b/build/rpm/file_contexts.dolibarr @@ -2,5 +2,4 @@ # It is provided as example to know contexts modified by installer # to make Dolibarr working. /etc/dolibarr(/.*?) system_u:object_r:httpd_sys_script_rw_t:s0 -/usr/share/dolibarr(/.*?) system_u:object_r:httpd_sys_script_rw_t:s0 /var/lib/dolibarr(/.*?) system_u:object_r:httpd_sys_script_rw_t:s0 \ No newline at end of file diff --git a/htdocs/comm/propal.php b/htdocs/comm/propal.php index c0ba671b639..dfb3f6e15aa 100644 --- a/htdocs/comm/propal.php +++ b/htdocs/comm/propal.php @@ -26,7 +26,7 @@ * \file htdocs/comm/propal.php * \ingroup propale * \brief Page of commercial proposals card and list - * \version $Id: propal.php,v 1.614 2011/08/03 00:46:26 eldy Exp $ + * \version $Id: propal.php,v 1.615 2011/08/08 01:53:26 eldy Exp $ */ require("../main.inc.php"); @@ -818,6 +818,10 @@ if ($_POST['action'] == 'updateligne' && $user->rights->propale->creer && $_POST $localtax2_rate=get_localtax($vat_rate,2,$object->client); $up_ht=GETPOST('pu')?GETPOST('pu'):GETPOST('subprice'); + // Define special_code for special lines + $special_code=0; + if (empty($_POST['qty'])) $special_code=3; + // On verifie que le prix minimum est respecte $productid = $_POST['productid'] ; if ($productid) @@ -843,7 +847,7 @@ if ($_POST['action'] == 'updateligne' && $user->rights->propale->creer && $_POST $_POST['desc'], 'HT', $info_bits, - '', + $special_code, $_POST['fk_parent_line'] ); @@ -1828,7 +1832,7 @@ else $soc = new Societe($db); $soc->fetch($socid); } - + $param='&socid='.$socid.'&viewstatut='.$viewstatut; if ($month) $param.='&month='.$month; if ($year) $param.='&year='.$year; @@ -1975,6 +1979,6 @@ else } $db->close(); -llxFooter('$Date: 2011/08/03 00:46:26 $ - $Revision: 1.614 $'); +llxFooter('$Date: 2011/08/08 01:53:26 $ - $Revision: 1.615 $'); ?> diff --git a/htdocs/comm/propal/class/propal.class.php b/htdocs/comm/propal/class/propal.class.php index c7ca5ed3834..3d90dc99837 100644 --- a/htdocs/comm/propal/class/propal.class.php +++ b/htdocs/comm/propal/class/propal.class.php @@ -29,7 +29,7 @@ * \author Rodolphe Qiedeville * \author Eric Seigne * \author Laurent Destailleur - * \version $Id: propal.class.php,v 1.110 2011/08/03 00:46:39 eldy Exp $ + * \version $Id: propal.class.php,v 1.111 2011/08/08 01:53:26 eldy Exp $ */ require_once(DOL_DOCUMENT_ROOT ."/core/class/commonobject.class.php"); @@ -431,18 +431,20 @@ class Propal extends CommonObject /** - * \brief Mise a jour d'une ligne de produit - * \param rowid Id de la ligne - * \param pu Prix unitaire (HT ou TTC selon price_base_type) - * \param qty Quantity - * \param remise_percent Remise effectuee sur le produit - * \param txtva Taux de TVA - * \param txlocaltax1 Local tax 1 rate - * \param txlocaltax2 Local tax 2 rate - * \param desc Description - * \param price_base_type HT ou TTC - * \param info_bits Miscellanous informations - * \return int 0 en cas de succes + * Update a proposal line + * @param rowid Id de la ligne + * @param pu Prix unitaire (HT ou TTC selon price_base_type) + * @param qty Quantity + * @param remise_percent Remise effectuee sur le produit + * @param txtva Taux de TVA + * @param txlocaltax1 Local tax 1 rate + * @param txlocaltax2 Local tax 2 rate + * @param desc Description + * @param price_base_type HT ou TTC + * @param info_bits Miscellanous informations + * @param special_code Set special code ('' = we don't change it) + * @param fk_parent_line Id of line parent + * @return int 0 en cas de succes */ function updateline($rowid, $pu, $qty, $remise_percent=0, $txtva, $txlocaltax1=0, $txlocaltax2=0, $desc='', $price_base_type='HT', $info_bits=0, $special_code=0, $fk_parent_line=0, $skip_update_total=0) { @@ -458,6 +460,8 @@ class Propal extends CommonObject $txtva = price2num($txtva); $txlocaltax1=price2num($txlocaltax1); $txlocaltax2=price2num($txlocaltax2); + if (empty($qty) && empty($special_code)) $special_code=3; // Set option tag + if (! empty($qty) && $special_code == 3) $special_code=0; // Remove option tag if ($this->statut == 0) { @@ -508,8 +512,6 @@ class Propal extends CommonObject $this->line->fk_parent_line=$fk_parent_line; $this->line->skip_update_total=$skip_update_total; - if (empty($qty) && empty($special_code)) $this->line->special_code=3; - // TODO deprecated $this->line->price=$price; $this->line->remise=$remise; @@ -2671,12 +2673,11 @@ class PropaleLigne $sql.= " , marge_tx='".$this->marge_tx."'"; $sql.= " , marque_tx='".$this->marque_tx."'"; $sql.= " , info_bits=".$this->info_bits; - if ($this->special_code != '') $sql.= " , special_code=".$this->special_code; + if (strlen($this->special_code)) $sql.= " , special_code=".$this->special_code; $sql.= " , fk_parent_line=".($this->fk_parent_line>0?$this->fk_parent_line:"null"); $sql.= " WHERE rowid = ".$this->rowid; dol_syslog("PropaleLigne::update sql=$sql"); - $resql=$this->db->query($sql); if ($resql) { diff --git a/htdocs/commande/class/commande.class.php b/htdocs/commande/class/commande.class.php index c37f9d71f0a..b0a046939f0 100644 --- a/htdocs/commande/class/commande.class.php +++ b/htdocs/commande/class/commande.class.php @@ -24,7 +24,7 @@ * \file htdocs/commande/class/commande.class.php * \ingroup commande * \brief Fichier des classes de commandes - * \version $Id: commande.class.php,v 1.120 2011/07/31 22:23:14 eldy Exp $ + * \version $Id: commande.class.php,v 1.121 2011/08/08 01:10:07 eldy Exp $ */ require_once(DOL_DOCUMENT_ROOT."/core/class/commonobject.class.php"); require_once(DOL_DOCUMENT_ROOT."/product/class/product.class.php"); @@ -2481,12 +2481,12 @@ class Commande extends CommonObject } if ($mode == 2) { - if ($statut==-1) return img_picto($langs->trans('StatusOrderCanceledShort'),'statut5').' '.$langs->trans('StatusOrderCanceled'); - if ($statut==0) return img_picto($langs->trans('StatusOrderDraftShort'),'statut0').' '.$langs->trans('StatusOrderDraft'); - if ($statut==1) return img_picto($langs->trans('StatusOrderValidatedShort'),'statut1').' '.$langs->trans('StatusOrderValidated'); - if ($statut==2) return img_picto($langs->trans('StatusOrderSentShort'),'statut3').' '.$langs->trans('StatusOrderSentShort'); - if ($statut==3 && ! $facturee) return img_picto($langs->trans('StatusOrderToBillShort'),'statut7').' '.$langs->trans('StatusOrderToBill'); - if ($statut==3 && $facturee) return img_picto($langs->trans('StatusOrderProcessedShort'),'statut6').' '.$langs->trans('StatusOrderProcessed'); + if ($statut==-1) return img_picto($langs->trans('StatusOrderCanceled'),'statut5').' '.$langs->trans('StatusOrderCanceledShort'); + if ($statut==0) return img_picto($langs->trans('StatusOrderDraft'),'statut0').' '.$langs->trans('StatusOrderDraftShort'); + if ($statut==1) return img_picto($langs->trans('StatusOrderValidated'),'statut1').' '.$langs->trans('StatusOrderValidatedShort'); + if ($statut==2) return img_picto($langs->trans('StatusOrderOnProcess'),'statut3').' '.$langs->trans('StatusOrderSentShort'); + if ($statut==3 && ! $facturee) return img_picto($langs->trans('StatusOrderToBill'),'statut7').' '.$langs->trans('StatusOrderToBillShort'); + if ($statut==3 && $facturee) return img_picto($langs->trans('StatusOrderProcessed'),'statut6').' '.$langs->trans('StatusOrderProcessedShort'); } if ($mode == 3) { @@ -2502,18 +2502,18 @@ class Commande extends CommonObject if ($statut==-1) return img_picto($langs->trans('StatusOrderCanceled'),'statut5').' '.$langs->trans('StatusOrderCanceled'); if ($statut==0) return img_picto($langs->trans('StatusOrderDraft'),'statut0').' '.$langs->trans('StatusOrderDraft'); if ($statut==1) return img_picto($langs->trans('StatusOrderValidated'),'statut1').' '.$langs->trans('StatusOrderValidated'); - if ($statut==2) return img_picto($langs->trans('StatusOrderSentShort'),'statut3').' '.$langs->trans('StatusOrderSentShort'); + if ($statut==2) return img_picto($langs->trans('StatusOrderSentShort'),'statut3').' '.$langs->trans('StatusOrderOnProcess'); if ($statut==3 && ! $facturee) return img_picto($langs->trans('StatusOrderToBill'),'statut7').' '.$langs->trans('StatusOrderToBill'); if ($statut==3 && $facturee) return img_picto($langs->trans('StatusOrderProcessed'),'statut6').' '.$langs->trans('StatusOrderProcessed'); } if ($mode == 5) { - if ($statut==-1) return $langs->trans('StatusOrderCanceledShort').' '.img_picto($langs->trans('StatusOrderCanceledShort'),'statut5'); - if ($statut==0) return $langs->trans('StatusOrderDraftShort').' '.img_picto($langs->trans('StatusOrderDraftShort'),'statut0'); - if ($statut==1) return $langs->trans('StatusOrderValidatedShort').' '.img_picto($langs->trans('StatusOrderValidatedShort'),'statut1'); - if ($statut==2) return $langs->trans('StatusOrderSentShort').' '.img_picto($langs->trans('StatusOrderSentShort'),'statut3'); - if ($statut==3 && ! $facturee) return $langs->trans('StatusOrderToBillShort').' '.img_picto($langs->trans('StatusOrderToBillShort'),'statut7'); - if ($statut==3 && $facturee) return $langs->trans('StatusOrderProcessedShort').' '.img_picto($langs->trans('StatusOrderProcessedShort'),'statut6'); + if ($statut==-1) return $langs->trans('StatusOrderCanceledShort').' '.img_picto($langs->trans('StatusOrderCanceled'),'statut5'); + if ($statut==0) return $langs->trans('StatusOrderDraftShort').' '.img_picto($langs->trans('StatusOrderDraft'),'statut0'); + if ($statut==1) return $langs->trans('StatusOrderValidatedShort').' '.img_picto($langs->trans('StatusOrderValidated'),'statut1'); + if ($statut==2) return $langs->trans('StatusOrderSentShort').' '.img_picto($langs->trans('StatusOrderOnProcess'),'statut3'); + if ($statut==3 && ! $facturee) return $langs->trans('StatusOrderToBillShort').' '.img_picto($langs->trans('StatusOrderToBill'),'statut7'); + if ($statut==3 && $facturee) return $langs->trans('StatusOrderProcessedShort').' '.img_picto($langs->trans('StatusOrderProcessed'),'statut6'); } } diff --git a/htdocs/compta/paiement.php b/htdocs/compta/paiement.php index 5da397b4183..233e241667f 100644 --- a/htdocs/compta/paiement.php +++ b/htdocs/compta/paiement.php @@ -23,7 +23,7 @@ * \file htdocs/compta/paiement.php * \ingroup compta * \brief Page to create a payment - * \version $Id: paiement.php,v 1.113 2011/08/03 00:46:23 eldy Exp $ + * \version $Id: paiement.php,v 1.114 2011/08/08 01:01:46 eldy Exp $ */ require('../main.inc.php'); @@ -289,7 +289,7 @@ if ($action == 'create' || $action == 'confirm_paiement' || $action == 'add_paie json["amountPayment"] = jQuery("#amountpayment").attr("value"); json["amounts"] = elemToJson(form.find("input[name*=\"amount_\"]")); json["remains"] = elemToJson(form.find("input[name*=\"remain_\"]")); - + if(imgId != null)json["imgClicked"] = imgId; jQuery.post("ajaxpayment.php", json, function(data) @@ -300,13 +300,13 @@ if ($action == 'create' || $action == 'confirm_paiement' || $action == 'add_paie for(var key in json) { - if(key == "result") { - if(json["makeRed"]) { + if(key == "result") { + if(json["makeRed"]) { jQuery("#"+key).css("color", "red"); } else { jQuery("#"+key).removeAttr("style"); } - json[key]=json["label"]+" "+json[key]; + json[key]=json["label"]+" "+json[key]; jQuery("#"+key).text(json[key]); } else { form.find("input[name*=\""+key+"\"]").each(function() { @@ -581,7 +581,7 @@ if ($action == 'create' || $action == 'confirm_paiement' || $action == 'add_paie $langs->load("withdrawals"); if ($conf->global->WITHDRAW_DISABLE_AUTOCREATE_ONPAYMENTS) print '
'.$langs->trans("IfInvoiceNeedOnWithdrawPaymentWontBeClosed"); }*/ - print '
'; + print '


'; // print ''; } @@ -672,5 +672,5 @@ if (! GETPOST('action')) $db->close(); -llxFooter('$Date: 2011/08/03 00:46:23 $ - $Revision: 1.113 $'); +llxFooter('$Date: 2011/08/08 01:01:46 $ - $Revision: 1.114 $'); ?> diff --git a/htdocs/compta/paiement/class/paiement.class.php b/htdocs/compta/paiement/class/paiement.class.php index a95a0431c28..db4932eefcd 100644 --- a/htdocs/compta/paiement/class/paiement.class.php +++ b/htdocs/compta/paiement/class/paiement.class.php @@ -21,7 +21,7 @@ * \file htdocs/compta/paiement/class/paiement.class.php * \ingroup facture * \brief File of class to manage payments of customers invoices - * \version $Id: paiement.class.php,v 1.23 2011/08/05 21:06:55 eldy Exp $ + * \version $Id: paiement.class.php,v 1.24 2011/08/08 01:01:45 eldy Exp $ */ require_once(DOL_DOCUMENT_ROOT ."/core/class/commonobject.class.php"); @@ -200,7 +200,8 @@ class Paiement extends CommonObject } } - if ($remaintopay) dol_syslog("Remain to pay for invoice ".$facid." not null. We do nothing more."); + if ($invoice->type != 0 && $invoice->type != 1) dol_syslog("Invoice ".$facid." is not a standard nor replacement invoice. We do nothing more."); + else if ($remaintopay) dol_syslog("Remain to pay for invoice ".$facid." not null. We do nothing more."); else if ($mustwait) dol_syslog("There is ".$mustwait." differed payment to process, we do nothing more."); else $result=$invoice->set_paid($user,'',''); } diff --git a/htdocs/install/mysql/tables/llx_propaldet.sql b/htdocs/install/mysql/tables/llx_propaldet.sql index 9e28a37d6bb..8a43c4bf5e0 100644 --- a/htdocs/install/mysql/tables/llx_propaldet.sql +++ b/htdocs/install/mysql/tables/llx_propaldet.sql @@ -16,7 +16,7 @@ -- You should have received a copy of the GNU General Public License -- along with this program. If not, see . -- --- $Id: llx_propaldet.sql,v 1.9 2011/08/03 01:25:41 eldy Exp $ +-- $Id: llx_propaldet.sql,v 1.10 2011/08/08 01:53:25 eldy Exp $ -- =================================================================== create table llx_propaldet @@ -49,7 +49,7 @@ create table llx_propaldet marge_tx double(6,3) DEFAULT 0, -- taux de marge (marge sur prix d'achat) marque_tx double(6,3) DEFAULT 0, -- taux de marque (marge sur prix de vente) - special_code integer UNSIGNED DEFAULT 0, -- code pour les lignes speciales + special_code integer DEFAULT 0, -- code pour les lignes speciales rang integer DEFAULT 0 -- ordre affichage sur la propal )ENGINE=innodb; diff --git a/htdocs/langs/en_US/bills.lang b/htdocs/langs/en_US/bills.lang index 3918702c260..93e3b307c3a 100644 --- a/htdocs/langs/en_US/bills.lang +++ b/htdocs/langs/en_US/bills.lang @@ -366,7 +366,7 @@ DisabledBecausePayments=Not possible since there is some payments CantRemovePaymentWithOneInvoicePaid=Can't remove payment since there is at least one invoice classified payed ExpectedToPay=Expected payment PayedByThisPayment=Payed by this payment -ClosePaidInvoicesAutomatically=Classify "Payed" all invoices entierely payed. +ClosePaidInvoicesAutomatically=Classify "Payed" all standard or replacement invoices entierely payed. AllCompletelyPayedInvoiceWillBeClosed=All invoice with no remain to pay will be automatically closed to status "Payed". ##### Types de contacts ##### TypeContact_facture_internal_SALESREPFOLL=Representative following-up customer invoice diff --git a/htdocs/langs/en_US/orders.lang b/htdocs/langs/en_US/orders.lang index 4012f20b722..9b9bdc626e2 100755 --- a/htdocs/langs/en_US/orders.lang +++ b/htdocs/langs/en_US/orders.lang @@ -28,7 +28,7 @@ SuppliersOrdersToProcess=Supplier's orders to process StatusOrderCanceledShort=Canceled StatusOrderDraftShort=Draft StatusOrderValidatedShort=Validated -StatusOrderSentShort=Shipment in process +StatusOrderSentShort=In process StatusOrderOnProcessShort=Reception StatusOrderProcessedShort=Processed StatusOrderToBillShort=To bill diff --git a/htdocs/langs/fr_FR/bills.lang b/htdocs/langs/fr_FR/bills.lang index 3e510424795..0176649a21c 100644 --- a/htdocs/langs/fr_FR/bills.lang +++ b/htdocs/langs/fr_FR/bills.lang @@ -366,7 +366,7 @@ DisabledBecausePayments=Non disponible car il existe des paiements CantRemovePaymentWithOneInvoicePaid=Suppression impossible quand il existe au moins une facture classée payée. ExpectedToPay=Paiement attendu PayedByThisPayment=Règlé par ce paiement -ClosePaidInvoicesAutomatically=Classer automatiquement à "Payé" les factures entièrement payées. +ClosePaidInvoicesAutomatically=Classer automatiquement à "Payé" les factures standards et de remplacement entièrement payées. AllCompletelyPayedInvoiceWillBeClosed=Toutes les factures avec un reste à payer nul seront automatiquement fermées au statut "Payé". ##### Types de contacts ##### TypeContact_facture_internal_SALESREPFOLL=Responsable suivi facture client diff --git a/htdocs/langs/fr_FR/orders.lang b/htdocs/langs/fr_FR/orders.lang index 24165d2d5ea..67261fc26cd 100755 --- a/htdocs/langs/fr_FR/orders.lang +++ b/htdocs/langs/fr_FR/orders.lang @@ -29,7 +29,7 @@ StatusOrderCanceledShort=Annulée StatusOrderDraftShort=Brouillon StatusOrderValidatedShort=Validée StatusOrderOnProcessShort=Réception -StatusOrderSentShort=Expédition en cours +StatusOrderSentShort=Envoi en cours StatusOrderProcessedShort=Traitée StatusOrderToBillShort=À facturer StatusOrderApprovedShort=Approuvée diff --git a/htdocs/support/inc.php b/htdocs/support/inc.php index 330d77ee107..337c7cb178e 100644 --- a/htdocs/support/inc.php +++ b/htdocs/support/inc.php @@ -21,7 +21,7 @@ /** * \file htdocs/support/inc.php * \brief File that define environment for support pages - * \version $Id: inc.php,v 1.31 2011/07/31 23:22:33 eldy Exp $ + * \version $Id: inc.php,v 1.32 2011/08/07 13:10:26 eldy Exp $ */ define('DOL_VERSION','2.5-dev'); // Also defined in htdocs/master.inc.php @@ -63,7 +63,16 @@ else $includeconferror=''; + +# Define vars +$conffiletoshowshort = "conf.php"; +# Define localization of conf file $conffile = "../conf/conf.php"; +$conffiletoshow = "htdocs/conf/conf.php"; +# For debian/redhat like systems +#$conffile = "/etc/dolibarr/conf.php"; +#$conffiletoshow = "/etc/dolibarr/conf.php"; + $charset="UTF-8"; // If not output format found in any conf file if (! defined('DONOTLOADCONF') && file_exists($conffile)) { diff --git a/htdocs/theme/eldy/style.css.php b/htdocs/theme/eldy/style.css.php index c15f65c5630..d47a4791ecd 100644 --- a/htdocs/theme/eldy/style.css.php +++ b/htdocs/theme/eldy/style.css.php @@ -2,6 +2,7 @@ /* Copyright (C) 2004-2011 Laurent Destailleur * Copyright (C) 2006 Rodolphe Quiedeville * Copyright (C) 2007-2011 Regis Houssin + * Copyright (C) 2011 Philippe Grand * * 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 @@ -20,7 +21,7 @@ /** * \file htdocs/theme/eldy/style.css.php * \brief Fichier de style CSS du theme Eldy - * \version $Id: style.css.php,v 1.89 2011/07/31 23:22:05 eldy Exp $ + * \version $Id: style.css.php,v 1.94 2011/08/07 22:58:48 eldy Exp $ */ //if (! defined('NOREQUIREUSER')) define('NOREQUIREUSER','1'); // Not disabled cause need to load personalized language @@ -815,10 +816,9 @@ div.tabBar { padding-right: 8px; padding-bottom: 8px; margin: 0px 0px 10px 0px; - -moz-border-radius-topleft:6px; - -moz-border-radius-topright:6px; - -moz-border-radius-bottomleft:6px; - -moz-border-radius-bottomright:6px; + -moz-border-radius:6px; + -webkit-border-radius: 6px; + border-radius: 6px; border-right: 1px solid #555555; border-bottom: 1px solid #555555; border-left: 1px solid #D0D0D0; @@ -856,8 +856,9 @@ a.tab:link { margin: 0em 0.2em; text-decoration: none; white-space: nowrap; - -moz-border-radius-topleft:6px; - -moz-border-radius-topright:6px; + -moz-border-radius:6px 6px 0px 0px; + -webkit-border-radius:6px 6px 0px 0px; + border-radius:6px 6px 0px 0px; border-: 1px solid #555555; border-: 1px solid #D8D8D8; @@ -871,8 +872,9 @@ a.tab:visited { margin: 0em 0.2em; text-decoration: none; white-space: nowrap; - -moz-border-radius-topleft:6px; - -moz-border-radius-topright:6px; + -moz-border-radius:6px 6px 0px 0px; + -webkit-border-radius:6px 6px 0px 0px; + border-radius:6px 6px 0px 0px; border-: 1px solid #555555; border-: 1px solid #D8D8D8; @@ -886,8 +888,9 @@ a.tab#active { padding: 0px 6px; margin: 0em 0.2em; text-decoration: none; - -moz-border-radius-topleft:6px; - -moz-border-radius-topright:6px; + -moz-border-radius:6px 6px 0px 0px; + -webkit-border-radius:6px 6px 0px 0px; + border-radius:6px 6px 0px 0px; border-: 1px solid #555555; border-: 1px solid #D8D8D8; @@ -901,8 +904,9 @@ a.tab:hover { padding: 0px 6px; margin: 0em 0.2em; text-decoration: none; - -moz-border-radius-topleft:6px; - -moz-border-radius-topright:6px; + -moz-border-radius:6px 6px 0px 0px; + -webkit-border-radius:6px 6px 0px 0px; + border-radius:6px 6px 0px 0px; border-: 1px solid #555555; border-: 1px solid #D8D8D8; @@ -928,8 +932,9 @@ span.tabspan { margin: 0em 0.2em; text-decoration: none; white-space: nowrap; - -moz-border-radius-topleft:6px; - -moz-border-radius-topright:6px; + -moz-border-radius:6px 6px 0px 0px; + -webkit-border-radius:6px 6px 0px 0px; + border-radius:6px 6px 0px 0px; border-: 1px solid #555555; border-: 1px solid #D8D8D8; @@ -1211,6 +1216,7 @@ border: 0px; box-shadow: 4px 4px 4px #CCC; } + .box { padding-right: 0px; padding-left: 0px; @@ -1227,8 +1233,6 @@ font-family: , sans-serif; font-weight: normal; border-bottom: 1px solid #FDFFFF; white-space: nowrap; - -moz-border-radius-topleft:6px; - -moz-border-radius-topright:6px; } tr.box_impair { @@ -1269,6 +1273,8 @@ div.warning { margin: 0.5em 0em 0.5em 0em; border: 1px solid #e0e0d0; -moz-border-radius:6px; + -webkit-border-radius: 6px; + border-radius: 6px; background: #efefd4; } @@ -1278,6 +1284,8 @@ div.error { margin: 0.5em 0em 0.5em 0em; border: 1px solid #8C9CAB; -moz-border-radius:6px; + -webkit-border-radius: 6px; + border-radius: 6px; background: #EFCFCF; } @@ -1288,6 +1296,8 @@ div.info { margin: 0.5em 0em 0.5em 0em; border: 1px solid #e0e0d0; -moz-border-radius:6px; + -webkit-border-radius: 6px; + border-radius:6px; background: #efefd4; } @@ -1381,6 +1391,8 @@ z-index: 3000; background-color: #FFFFF0; opacity: 1; -moz-border-radius:6px; +-webkit-border-radius: 6px; +border-radius: 6px; } @@ -1402,7 +1414,9 @@ opacity: 1; } .bodyline { - -moz-border-radius:8px; + -moz-border-radius: 8px; + -webkit-border-radius: 8px; + border-radius: 8px; border: 1px #E4ECEC outset; padding: 0px; margin-bottom: 5px; @@ -1498,7 +1512,7 @@ td.hidden { .cal_past_month { background: #EEEEEE; border: solid 1px #ACBCBB; padding-: 2px; padding-: 1px; padding-top: 0px; padding-bottom: 0px; } .cal_current_month { background: #FFFFFF; border: solid 1px #ACBCBB; padding-: 2px; padding-: 1px; padding-top: 0px; padding-bottom: 0px; } .cal_today { background: #FFFFFF; border: solid 2px #6C7C7B; padding-: 2px; padding-: 1px; padding-top: 0px; padding-bottom: 0px; } -table.cal_event { border-collapse: collapse; margin-bottom: 1px; } +table.cal_event { border-collapse: collapse; margin-bottom: 1px; -webkit-border-radius: 6px; border-radius: 6px; } table.cal_event td { border: 0px; padding-: 0px; padding-: 2px; padding-top: 0px; padding-bottom: 0px; } .cal_event a:link { color: #111111; font-size: 11px; font-weight: normal !important; } .cal_event a:visited { color: #111111; font-size: 11px; font-weight: normal !important; }