Removed deprecated files

This commit is contained in:
Laurent Destailleur 2009-01-05 00:35:20 +00:00
parent 6916621c3e
commit 313e1ac313
14 changed files with 72 additions and 984 deletions

View File

@ -70,7 +70,6 @@ if (! file_exists($dir))
}
}
//$pdf = new PDF_Label(array('name'=>'perso1', 'marginLeft'=>1, 'marginTop'=>1, 'NX'=>2, 'NY'=>7, 'SpaceX'=>0, 'SpaceY'=>0, 'width'=>99.1, 'height'=>'38.1', 'metric'=>'mm', 'font-size'=>14), 1, 2);
$pdf = new PDF_card('CARD', 1, 1);
$pdf->Open();

View File

@ -52,7 +52,6 @@ if (! file_exists($dir))
//$pdf = new PDF_Label(array('name'=>'perso1', 'marginLeft'=>1, 'marginTop'=>1, 'NX'=>2, 'NY'=>7, 'SpaceX'=>0, 'SpaceY'=>0, 'width'=>99.1, 'height'=>'38.1', 'metric'=>'mm', 'font-size'=>14), 1, 2);
//$pdf = new PDF_card('CARD', 1, 1);
if (defined("ADHERENT_ETIQUETTE_TYPE") && ADHERENT_ETIQUETTE_TYPE !=''){
$pdf = new PDF_card(ADHERENT_ETIQUETTE_TYPE, 1, 1);

View File

@ -160,6 +160,10 @@ if ($resql)
if ($module->encodingIsSupported($obj->encoding))
{
// Build barcode on disk
$result=$module->writeBarCode($obj->example,$obj->encoding,'Y');
// Output files with barcode generators
$url=DOL_URL_ROOT.'/viewimage.php?modulepart=barcode&generator='.urlencode($obj->coder).'&code='.urlencode($obj->example).'&encoding='.urlencode($obj->encoding);
//print $url;
print '<img src="'.$url.'" title="'.$obj->example.'" border="0">';
@ -257,119 +261,6 @@ if ($conf->produit->enabled)
print '</table>';
/*
//EAN13
$var=!$var;
print '<tr '.$bc[$var].'><td width="100">';
print "EAN13";
print "</td><td>\n";
print "L'EAN se compose de 13 caract<63>res, 12 chiffres plus une cl<63> de contr<74>le. Il fonctionne de la m<>me mani<6E>re que l'UPC, avec lequel il est compatible.<br>";
print "L'utilisation des symbologies EAN13 impose la souscription et l'abonnement aupr<70>s d'organisme tel que GENCOD.<br>";
print "Codes num<75>riques utilis<69>s exclusivement <20> l'identification des produits susceptibles d'<27>tre vendus au grand public.";
print '</td>';
// Affiche exemple
print '<td align="center"><img src="'.dol_genbarcode('123456789012','EAN',1).'"></td>';
print '<td align="center">';
print $formbarcode->setBarcodeEncoder('EAN13','form'.$i);
print "</td></tr>\n";
$i++;
//UPC
$var=!$var;
print '<tr '.$bc[$var].'><td width="100">';
print "UPC";
print "</td><td>\n";
print "L'UPC est l'<27>quivalent de l'EAN8/13 pour des pays codificateurs autre que l'Europe.<br>";
print "Il ne comporte que 11 chiffres plus la cl<63>.<br>";
print "C'est en r<>alit<69> un code EAN13 dont le premier chiffre serait z<>ro et dont la pr<70>sentation serait l<>g<EFBFBD>rement diff<66>rente.<br>";
print "Codes num<75>riques utilis<69>s exclusivement <20> l'identification des produits susceptibles d'<27>tre vendus au grand public.";
print '</td>';
// Affiche exemple
print '<td align="center"><img src="'.dol_genbarcode('123456789012','UPC',1).'"></td>';
print '<td align="center">';
print $formbarcode->setBarcodeEncoder('UPC','form'.$i);
print "</td></tr>\n";
$i++;
//ISBN
$var=!$var;
print '<tr '.$bc[$var].'><td width="100">';
print "ISBN";
print "</td><td>\n";
print "Le code ISBN est un code d<>di<64> au milieu de la presse <20>crite.";
print '</td>';
// Affiche exemple
print '<td align="center"><img src="'.dol_genbarcode('123456789','ISBN',1).'"></td>';
print '<td align="center">';
print $formbarcode->setBarcodeEncoder('ISBN','form'.$i);
print "</td></tr>\n";
$i++;
//code 39
$var=!$var;
print '<tr '.$bc[$var].'><td width="100">';
print "Code 39";
print "</td><td>\n";
print "Premier code alpha num<75>rique utilis<69> massivement dans l'Industrie pour sa capacit<69> d'encodage (chiffres et lettres)<br>";
print "ainsi que par son degr<67> de s<>curit<69> <20> l'encodage (clef de contr<74>le).<br>";
print "Il met a disposition les 10 chiffres, les 26 lettres de l'alphabet et sept symboles.<br>";
print "l'ast<73>risque (*) sert de caract<63>re de bornage. La lecture est bidirectionnelle.<br>";
print "La longueur est variable mais en g<>n<EFBFBD>ral ne d<>passe pas 32 caract<63>res.";
print '</td>';
// Affiche exemple
print '<td align="center"><img src="'.dol_genbarcode('1234567890','39',1).'"></td>';
print '<td align="center">';
print $formbarcode->setBarcodeEncoder('C39','form'.$i);
print "</td></tr>\n";
$i++;
//code 128
$var=!$var;
print '<tr '.$bc[$var].'><td width="100">';
print "Code 128";
print "</td><td>\n";
print "Ce code \"derni<EFBFBD>re g<>n<EFBFBD>ration\" alpha num<75>rique est susceptible d'encoder les 128 caract<63>res de la table ASCII ( chiffres + lettres + symboles ).<br>";
print "Le code 128 poss<73>de des algorithmes de cryptage s<>curis<69>s assez avanc<6E>s.<br>";
print "C'est le plus complet des codes <20> barres, il propose 3 jeux de 128 caract<63>res.<br>";
print "La lecture est bidirectionnelle.<br>";
print "La longueur est variable mais en g<>n<EFBFBD>ral ne d<>passe pas 20 caract<63>res.";
print '</td>';
// Affiche exemple
print '<td align="center"><img src="'.dol_genbarcode('ABCD1234567890','128',1).'"></td>';
print '<td align="center">';
print $formbarcode->setBarcodeEncoder('C128','form'.$i);
print "</td></tr>\n";
$i++;
//I25
$var=!$var;
print '<tr '.$bc[$var].'><td width="100">';
print "I25";
print "</td><td>\n";
print "information";
print '</td>';
// Affiche exemple
print '<td align="center"><img src="'.dol_genbarcode('1234567890','I25',1).'"></td>';
print '<td align="center">';
print $formbarcode->setBarcodeEncoder('I25','form'.$i);
print "</td></tr>\n";
$i++;
*/
print "<br>";
$db->close();

View File

@ -282,7 +282,8 @@ class Conf
// Module oscommerce 1
$this->boutique->livre->enabled=defined("BOUTIQUE_LIVRE")?BOUTIQUE_LIVRE:0;
$this->boutique->album->enabled=defined("BOUTIQUE_ALBUM")?BOUTIQUE_ALBUM:0;
// Module Barcode
$this->barcode->dir_temp=DOL_DATA_ROOT."/barcode/temp";
/*
* Modification de quelques variable de conf en fonction des Constantes

View File

@ -207,6 +207,9 @@ function barcode_outimage($text, $bars, $scale = 1, $mode = "png",
}
}
// DOLCHANGE LDR
global $filebarcode;
/* output the image */
$mode=strtolower($mode);
if ($mode=='jpg' || $mode=='jpeg'){
@ -215,11 +218,17 @@ function barcode_outimage($text, $bars, $scale = 1, $mode = "png",
} else if ($mode=='gif'){
header("Content-Type: image/gif; name=\"barcode.gif\"");
imagegif($im);
// Begin DOLCHANGE LDR
} else if (! empty($filebarcode))
{
imagepng($im,$filebarcode);
// End DOLCHANGE LDR
} else {
header("Content-Type: image/png; name=\"barcode.png\"");
imagepng($im);
}
}
/*

View File

@ -3,9 +3,27 @@ This file describe changes made on external library after beeing included
in Dolibarr root.
PHP-BARCODE:
------------
If files are replaced by new version, following changes must be done:
* Add lines into barcode_outimage function
*******************************************
// DOLCHANGE LDR
global $filebarcode;
// Begin DOLCHANGE LDR
} else if (! empty($filebarcode))
{
imagepng($im,$filebarcode);
// End DOLCHANGE LDR
FCKEDITOR:
----------
If fckeditor files are replaced by new version, following changes must be done:
If files are replaced by new version, following changes must be done:
* Edit file fckeditor/editor/filemanager/browser/default/browser.css
**********************************************************

View File

@ -1,353 +0,0 @@
<?php
/* Copyright (C) 2005 Rodolphe Quiedeville <rodolphe@quiedeville.org>
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
*
* $Id$
* $Source$
*/
require_once(DOL_DOCUMENT_ROOT.'/includes/fpdf/fpdfi/fpdi_protection.php');
class DolibarrPdfBarCode extends FPDF {
/* Author Olivier PLATHEY
* Licence Freeware see : http://fpdf.org/fr/script/script5.php
*/
function EAN13($x,$y,$barcode,$h=16,$w=.35)
{
$this->Barcode($x,$y,$barcode,$h,$w,13);
}
function UPC_A($x,$y,$barcode,$h=16,$w=.35)
{
$this->Barcode($x,$y,$barcode,$h,$w,12);
}
function GetCheckDigit($barcode)
{
//Calcule le chiffre de contrôle
$sum=0;
for($i=1;$i<=11;$i+=2)
$sum+=3*$barcode{$i};
for($i=0;$i<=10;$i+=2)
$sum+=$barcode{$i};
$r=$sum%10;
if($r>0)
$r=10-$r;
return $r;
}
function TestCheckDigit($barcode)
{
//Vérifie le chiffre de contrôle
$sum=0;
for($i=1;$i<=11;$i+=2)
$sum+=3*$barcode{$i};
for($i=0;$i<=10;$i+=2)
$sum+=$barcode{$i};
return ($sum+$barcode{12})%10==0;
}
function Barcode($x,$y,$barcode,$h,$w,$len)
{
//Ajoute des 0 si nécessaire
$barcode=str_pad($barcode,$len-1,'0',STR_PAD_LEFT);
if($len==12)
$barcode='0'.$barcode;
//Ajoute ou teste le chiffre de contrôle
if(strlen($barcode)==12)
$barcode.=$this->GetCheckDigit($barcode);
elseif(!$this->TestCheckDigit($barcode))
$this->Error('Incorrect check digit');
//Convertit les chiffres en barres
$codes=array(
'A'=>array(
'0'=>'0001101','1'=>'0011001','2'=>'0010011','3'=>'0111101','4'=>'0100011',
'5'=>'0110001','6'=>'0101111','7'=>'0111011','8'=>'0110111','9'=>'0001011'),
'B'=>array(
'0'=>'0100111','1'=>'0110011','2'=>'0011011','3'=>'0100001','4'=>'0011101',
'5'=>'0111001','6'=>'0000101','7'=>'0010001','8'=>'0001001','9'=>'0010111'),
'C'=>array(
'0'=>'1110010','1'=>'1100110','2'=>'1101100','3'=>'1000010','4'=>'1011100',
'5'=>'1001110','6'=>'1010000','7'=>'1000100','8'=>'1001000','9'=>'1110100')
);
$parities=array(
'0'=>array('A','A','A','A','A','A'),
'1'=>array('A','A','B','A','B','B'),
'2'=>array('A','A','B','B','A','B'),
'3'=>array('A','A','B','B','B','A'),
'4'=>array('A','B','A','A','B','B'),
'5'=>array('A','B','B','A','A','B'),
'6'=>array('A','B','B','B','A','A'),
'7'=>array('A','B','A','B','A','B'),
'8'=>array('A','B','A','B','B','A'),
'9'=>array('A','B','B','A','B','A')
);
$code='101';
$p=$parities[$barcode{0}];
for($i=1;$i<=6;$i++)
$code.=$codes[$p[$i-1]][$barcode{$i}];
$code.='01010';
for($i=7;$i<=12;$i++)
$code.=$codes['C'][$barcode{$i}];
$code.='101';
//Dessine les barres
for($i=0;$i<strlen($code);$i++)
{
if($code{$i}=='1')
$this->Rect($x+$i*$w,$y,$w,$h,'F');
}
//Imprime le texte sous le code-barres
$this->SetFont('Arial','',12);
$this->Text($x,$y+$h+11/$this->k,substr($barcode,-$len));
}
/*
* Licence See i25/info.htm
*/
function i25($xpos, $ypos, $code, $basewidth=1, $height=10){
$wide = $basewidth;
$narrow = $basewidth / 3 ;
// wide/narrow codes for the digits
$barChar['0'] = 'nnwwn';
$barChar['1'] = 'wnnnw';
$barChar['2'] = 'nwnnw';
$barChar['3'] = 'wwnnn';
$barChar['4'] = 'nnwnw';
$barChar['5'] = 'wnwnn';
$barChar['6'] = 'nwwnn';
$barChar['7'] = 'nnnww';
$barChar['8'] = 'wnnwn';
$barChar['9'] = 'nwnwn';
$barChar['A'] = 'nn';
$barChar['Z'] = 'wn';
// add leading zero if code-length is odd
if(strlen($code) % 2 != 0){
$code = '0' . $code;
}
$this->SetFont('Arial','',10);
$this->Text($xpos, $ypos + $height + 4, $code);
$this->SetFillColor(0);
// add start and stop codes
$code = 'AA'.strtolower($code).'ZA';
for($i=0; $i<strlen($code); $i=$i+2)
{
// choose next pair of digits
$charBar = $code{$i};
$charSpace = $code{$i+1};
// check whether it is a valid digit
if(!isset($barChar[$charBar]))
{
$this->Error('Invalid character in barcode: '.$charBar);
}
if(!isset($barChar[$charSpace]))
{
$this->Error('Invalid character in barcode: '.$charSpace);
}
// create a wide/narrow-sequence (first digit=bars, second digit=spaces)
$seq = '';
for($s=0; $s<strlen($barChar[$charBar]); $s++)
{
$seq .= $barChar[$charBar]{$s} . $barChar[$charSpace]{$s};
}
for($bar=0; $bar<strlen($seq); $bar++){
// set lineWidth depending on value
if($seq{$bar} == 'n')
{
$lineWidth = $narrow;
}
else
{
$lineWidth = $wide;
}
// draw every second value, because the second digit of the pair is represented by the spaces
if($bar % 2 == 0)
{
$this->Rect($xpos, $ypos, $lineWidth, $height, 'F');
}
$xpos += $lineWidth;
}
}
}
/*
* Copyright ehavet@yahoo.fr
* Emmanuel Havet
* License: Freeware
*
*/
function Code39($x, $y, $code, $ext = true, $cks = false, $w = 0.4, $h = 20, $wide = true)
{
//Display code
$this->SetFont('Arial', '', 10);
$this->Text($x, $y+$h+4, $code);
$this->SetFillColor(0,0,0);
if($ext)
{
//Extended encoding
$code = $this->encode_code39_ext($code);
}
else
{
//Convert to upper case
$code = strtoupper($code);
//Check validity
if(!preg_match('|^[0-9A-Z. $/+%-]*$|', $code))
$this->Error('Invalid barcode value: '.$code);
}
//Compute checksum
if ($cks)
$code .= $this->checksum_code39($code);
//Add start and stop characters
$code = '*'.$code.'*';
//Conversion tables
$narrow_encoding = array (
'0' => '101001101101', '1' => '110100101011', '2' => '101100101011',
'3' => '110110010101', '4' => '101001101011', '5' => '110100110101',
'6' => '101100110101', '7' => '101001011011', '8' => '110100101101',
'9' => '101100101101', 'A' => '110101001011', 'B' => '101101001011',
'C' => '110110100101', 'D' => '101011001011', 'E' => '110101100101',
'F' => '101101100101', 'G' => '101010011011', 'H' => '110101001101',
'I' => '101101001101', 'J' => '101011001101', 'K' => '110101010011',
'L' => '101101010011', 'M' => '110110101001', 'N' => '101011010011',
'O' => '110101101001', 'P' => '101101101001', 'Q' => '101010110011',
'R' => '110101011001', 'S' => '101101011001', 'T' => '101011011001',
'U' => '110010101011', 'V' => '100110101011', 'W' => '110011010101',
'X' => '100101101011', 'Y' => '110010110101', 'Z' => '100110110101',
'-' => '100101011011', '.' => '110010101101', ' ' => '100110101101',
'*' => '100101101101', '$' => '100100100101', '/' => '100100101001',
'+' => '100101001001', '%' => '101001001001' );
$wide_encoding = array (
'0' => '101000111011101', '1' => '111010001010111', '2' => '101110001010111',
'3' => '111011100010101', '4' => '101000111010111', '5' => '111010001110101',
'6' => '101110001110101', '7' => '101000101110111', '8' => '111010001011101',
'9' => '101110001011101', 'A' => '111010100010111', 'B' => '101110100010111',
'C' => '111011101000101', 'D' => '101011100010111', 'E' => '111010111000101',
'F' => '101110111000101', 'G' => '101010001110111', 'H' => '111010100011101',
'I' => '101110100011101', 'J' => '101011100011101', 'K' => '111010101000111',
'L' => '101110101000111', 'M' => '111011101010001', 'N' => '101011101000111',
'O' => '111010111010001', 'P' => '101110111010001', 'Q' => '101010111000111',
'R' => '111010101110001', 'S' => '101110101110001', 'T' => '101011101110001',
'U' => '111000101010111', 'V' => '100011101010111', 'W' => '111000111010101',
'X' => '100010111010111', 'Y' => '111000101110101', 'Z' => '100011101110101',
'-' => '100010101110111', '.' => '111000101011101', ' ' => '100011101011101',
'*' => '100010111011101', '$' => '100010001000101', '/' => '100010001010001',
'+' => '100010100010001', '%' => '101000100010001');
$encoding = $wide ? $wide_encoding : $narrow_encoding;
//Inter-character spacing
$gap = ($w > 0.29) ? '00' : '0';
//Convert to bars
$encode = '';
for ($i = 0; $i< strlen($code); $i++)
$encode .= $encoding[$code{$i}].$gap;
//Draw bars
$this->draw_code39($encode, $x, $y, $w, $h);
}
function checksum_code39($code) {
//Compute the modulo 43 checksum
$chars = array('0', '1', '2', '3', '4', '5', '6', '7', '8', '9',
'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K',
'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V',
'W', 'X', 'Y', 'Z', '-', '.', ' ', '$', '/', '+', '%');
$sum = 0;
for ($i=0 ; $i<strlen($code); $i++)
{
$a = array_keys($chars, $code{$i});
$sum += $a[0];
}
$r = $sum % 43;
return $chars[$r];
}
function encode_code39_ext($code) {
//Encode characters in extended mode
$encode = array(
chr(0) => '%U', chr(1) => '$A', chr(2) => '$B', chr(3) => '$C',
chr(4) => '$D', chr(5) => '$E', chr(6) => '$F', chr(7) => '$G',
chr(8) => '$H', chr(9) => '$I', chr(10) => '$J', chr(11) => '£K',
chr(12) => '$L', chr(13) => '$M', chr(14) => '$N', chr(15) => '$O',
chr(16) => '$P', chr(17) => '$Q', chr(18) => '$R', chr(19) => '$S',
chr(20) => '$T', chr(21) => '$U', chr(22) => '$V', chr(23) => '$W',
chr(24) => '$X', chr(25) => '$Y', chr(26) => '$Z', chr(27) => '%A',
chr(28) => '%B', chr(29) => '%C', chr(30) => '%D', chr(31) => '%E',
chr(32) => ' ', chr(33) => '/A', chr(34) => '/B', chr(35) => '/C',
chr(36) => '/D', chr(37) => '/E', chr(38) => '/F', chr(39) => '/G',
chr(40) => '/H', chr(41) => '/I', chr(42) => '/J', chr(43) => '/K',
chr(44) => '/L', chr(45) => '-', chr(46) => '.', chr(47) => '/O',
chr(48) => '0', chr(49) => '1', chr(50) => '2', chr(51) => '3',
chr(52) => '4', chr(53) => '5', chr(54) => '6', chr(55) => '7',
chr(56) => '8', chr(57) => '9', chr(58) => '/Z', chr(59) => '%F',
chr(60) => '%G', chr(61) => '%H', chr(62) => '%I', chr(63) => '%J',
chr(64) => '%V', chr(65) => 'A', chr(66) => 'B', chr(67) => 'C',
chr(68) => 'D', chr(69) => 'E', chr(70) => 'F', chr(71) => 'G',
chr(72) => 'H', chr(73) => 'I', chr(74) => 'J', chr(75) => 'K',
chr(76) => 'L', chr(77) => 'M', chr(78) => 'N', chr(79) => 'O',
chr(80) => 'P', chr(81) => 'Q', chr(82) => 'R', chr(83) => 'S',
chr(84) => 'T', chr(85) => 'U', chr(86) => 'V', chr(87) => 'W',
chr(88) => 'X', chr(89) => 'Y', chr(90) => 'Z', chr(91) => '%K',
chr(92) => '%L', chr(93) => '%M', chr(94) => '%N', chr(95) => '%O',
chr(96) => '%W', chr(97) => '+A', chr(98) => '+B', chr(99) => '+C',
chr(100) => '+D', chr(101) => '+E', chr(102) => '+F', chr(103) => '+G',
chr(104) => '+H', chr(105) => '+I', chr(106) => '+J', chr(107) => '+K',
chr(108) => '+L', chr(109) => '+M', chr(110) => '+N', chr(111) => '+O',
chr(112) => '+P', chr(113) => '+Q', chr(114) => '+R', chr(115) => '+S',
chr(116) => '+T', chr(117) => '+U', chr(118) => '+V', chr(119) => '+W',
chr(120) => '+X', chr(121) => '+Y', chr(122) => '+Z', chr(123) => '%P',
chr(124) => '%Q', chr(125) => '%R', chr(126) => '%S', chr(127) => '%T');
$code_ext = '';
for ($i = 0 ; $i<strlen($code); $i++) {
if (ord($code{$i}) > 127)
$this->Error('Invalid character: '.$code{$i});
$code_ext .= $encode[$code{$i}];
}
return $code_ext;
}
function draw_code39($code, $x, $y, $w, $h)
{
//Draw bars
for($i=0; $i<strlen($code); $i++)
{
if($code{$i} == '1')
$this->Rect($x+$i*$w, $y, $w, $h, 'F');
}
}
}

View File

@ -1,104 +0,0 @@
<?php
/* Modifié par Rodolphe Quiédeville
* Auteur : Olivier PLATHEY
* Source : http://www.fpdf.org
* License: Freeware
* $Id$
* $Source$
*/
class PDF_html extends PDF_Indexes
{
var $B;
var $I;
var $U;
var $HREF;
function PDF_html($orientation='P',$unit='mm',$format='A4')
{
//Appel au constructeur parent
$this->FPDF($orientation,$unit,$format);
//Initialisation
$this->B=0;
$this->I=0;
$this->U=0;
$this->HREF='';
}
function WriteHTML($html)
{
//Parseur HTML
$html=str_replace("\n",' ',$html);
$a=preg_split('/<(.*)>/U',$html,-1,PREG_SPLIT_DELIM_CAPTURE);
foreach($a as $i=>$e)
{
if($i%2==0)
{
//Texte
if($this->HREF)
$this->PutLink($this->HREF,$e);
else
$this->Write(5,$e);
}
else
{
//Balise
if($e{0}=='/')
$this->CloseTag(strtoupper(substr($e,1)));
else
{
//Extraction des attributs
$a2=explode(' ',$e);
$tag=strtoupper(array_shift($a2));
$attr=array();
foreach($a2 as $v)
if(ereg('^([^=]*)=["\']?([^"\']*)["\']?$',$v,$a3))
$attr[strtoupper($a3[1])]=$a3[2];
$this->OpenTag($tag,$attr);
}
}
}
}
function OpenTag($tag,$attr)
{
//Balise ouvrante
if($tag=='B' or $tag=='I' or $tag=='U')
$this->SetStyle($tag,true);
if($tag=='A')
$this->HREF=$attr['HREF'];
if($tag=='BR')
$this->Ln(5);
}
function CloseTag($tag)
{
//Balise fermante
if($tag=='B' or $tag=='I' or $tag=='U')
$this->SetStyle($tag,false);
if($tag=='A')
$this->HREF='';
}
function SetStyle($tag,$enable)
{
//Modifie le style et sélectionne la police correspondante
$this->$tag+=($enable ? 1 : -1);
$style='';
foreach(array('B','I','U') as $s)
if($this->$s>0)
$style.=$s;
$this->SetFont('',$style);
}
function PutLink($URL,$txt)
{
//Place un hyperlien
$this->SetTextColor(0,0,255);
$this->SetStyle('U',true);
$this->Write(5,$txt,$URL);
$this->SetStyle('U',false);
$this->SetTextColor(0);
}
}
?>

View File

@ -1,206 +0,0 @@
<?php
/* Modifié par Rodolphe Quiédeville
* Auteur : Pierre-André Vullioud
* Licence : Freeware
* Source : http://www.fpdf.org
*
* $Id$
* $Source$
*/
class PDF_Indexes extends FPDF
{
var $Reference=array(); //Array containing the references
var $col=0; //Current column number
var $NbCol; //Total number of columns
var $y0; //Top ordinate of columns
var $IndexesName=array();
function Reference($txt, $index)
{
$Present=0;
$size=sizeof($this->Reference[$index]);
//Search the reference in the array
for ($i=0;$i<$size;$i++)
{
if ($this->Reference[$index][$i]['t']==$txt)
{
$Present=1;
$this->Reference[$index][$i]['p'].=','.$this->PageNo();
}
}
//If not found, add it
if ($Present==0)
{
$this->Reference[$index][]=array('t'=>$txt,'p'=>$this->PageNo());
}
}
function ReferenceNewPage($link='')
{
$this->AddPage();
if ($link)
{
$this->SetLink($link);
}
$this->SetFont('Arial','',15);
$this->SetXY(10,10);
$this->MultiCell(190,12, $this->IndexesName[$this->IndexName], 1 ,'C', 0);
$this->y0 = $this->GetY() + 2;
$this->SetY($this->y0);
$this->SetFontSize(8);
}
function ReferencePrintSection()
{
$this->SetY($this->GetY() + 2);
if ($this->GetY() > $this->YMax)
{
$this->ReferenceNewPage();
}
if ( $this->ReferenceNextSection == $this->ReferenceCurrentSection)
{
$this->SetFontSize(9);
$this->MultiCell(90, 4, $this->ReferenceCurrentSection ,0,1,'L');
$this->SetFontSize(8);
}
}
function CreateReference($NbCol, $index, $link='')
{
$this->YMax = 270;
$this->NbCol = $NbCol;
$this->SetCol(0);
$this->IndexName = $index;
$page = 1;
// New Page
$page = $this->ReferenceNewPage($link);
//Initialization
$this->SetFontSize(8);
$size = sizeof($this->Reference[$index]);
$PageWidth = $this->w - $this->lMargin - $this->rMargin;
$last = '';
for ($i=0 ; $i < $size ; $i++)
{
$this->ReferenceNextSection = $this->Reference[$index][$i]['t'][0];
if ($this->GetY() > $this->YMax)
{
$this->ReferenceNextCol();
}
//
// Section Break
//
if ($last <> $this->Reference[$index][$i]['t'][0])
{
$last = $this->Reference[$index][$i]['t'][0];
$this->ReferenceCurrentSection = $last;
$this->ReferencePrintSection();
}
//LibelleLabel
if (is_array($this->Reference[$index][$i]['t']))
{
$str= " ".$this->Reference[$index][$i]['t'][1];
}
else
{
$str= $this->Reference[$index][$i]['t'];
}
$strsize=$this->GetStringWidth($str);
$this->Cell($strsize+2,$this->FontSize+2,$str,0,0,'R');
//Dots
//Computes the widths
$ColWidth = ($PageWidth/$NbCol)-2;
$w=$ColWidth-$this->GetStringWidth($this->Reference[$index][$i]['p'])-($strsize+4);
if ($w<15)
$w=15;
$nb=$w/$this->GetStringWidth('.');
$dots=str_repeat('.',$nb-2);
$this->Cell($w,$this->FontSize+2,$dots,0,0,'L');
//Page number
$Largeur=$ColWidth-$strsize-$w;
$this->MultiCell($Largeur,$this->FontSize+1,$this->Reference[$index][$i]['p'],0,1,'R');
}
}
function SetCol($col)
{
//Set position on a column
$this->col=$col;
$x=$this->rMargin+$col*($this->w-$this->rMargin-$this->rMargin)/$this->NbCol;
$this->SetLeftMargin($x);
$this->SetX($x);
}
function ReferenceNextCol()
{
if($this->col < $this->NbCol-1)
{
//Go to the next column
$this->SetCol($this->col+1);
$this->SetY($this->y0);
$this->ReferencePrintSection();
//Stay on the page
return false;
}
else
{
//Go back to the first column
$this->SetCol(0);
$this->ReferenceNewPage();
$this->ReferencePrintSection();
//Page break
return true;
}
}
/*
*
*
*/
function SortReference($index)
{
$ar = $this->Reference[$index];
$size=sizeof($this->Reference[$index]);
$cats = array();
$last = '';
for ($i=0;$i<$size;$i++)
{
//print $ar[$i]['t'][0] . "<br>";
$cat = $ar[$i]['t'][0];
if (! array_key_exists($cat, $cats))
{
$cats[$cat] = array();
}
array_push($cats[$cat], array($ar[$i]['t'][1], $ar[$i]['p']));
}
ksort($cats);
//var_dump($cats);
$i = 0;
foreach ($cats as $key => $value)
{
foreach ($value as $skey => $svalue)
{
$this->Reference[$index][$i]['t'][0] = $key;
$this->Reference[$index][$i]['t'][1] = $svalue[0];
$this->Reference[$index][$i]['p'] = $svalue[1];
$i++;
}
}
}
}
?>

View File

@ -1,186 +0,0 @@
<?php
////////////////////////////////////////////////////
// PDF_Label
//
// Classe afin d'éditer au format PDF des étiquettes
// au format Avery ou personnalisé
//
//
// Copyright (C) 2003 Laurent PASSEBECQ (LPA)
// Basé sur les fonctions de Steve Dillon : steved@mad.scientist.com
//
//-------------------------------------------------------------------
// VERSIONS :
// 1.0 : Initial release
// 1.1 : + : Added unit in the constructor
// + : Now Positions start @ (1,1).. then the first image @top-left of a page is (1,1)
// + : Added in the description of a label :
// font-size : defaut char size (can be changed by calling Set_Char_Size(xx);
// paper-size : Size of the paper for this sheet (thanx to Al Canton)
// metric : type of unit used in this description
// You can define your label properties in inches by setting metric to 'in'
// and printing in millimiter by setting unit to 'mm' in constructor.
// Added some labels :
// 5160, 5161, 5162, 5163,5164 : thanx to Al Canton : acanton@adams-blake.com
// 8600 : thanx to Kunal Walia : kunal@u.washington.edu
// + : Added 3mm to the position of labels to avoid errors
// 1.2 : + : Added Set_Font_Name method
// = : Bug of positionning
// = : Set_Font_Size modified -> Now, just modify the size of the font
// = : Set_Char_Size renamed to Set_Font_Size
////////////////////////////////////////////////////
/**
* Modifié par Regis Houssin
* PDF_Label - PDF label editing
* @package PDF_Label
* @author Laurent PASSEBECQ <lpasseb@numericable.fr>
* @copyright 2003 Laurent PASSEBECQ
* $Id$
* $Source$
**/
require_once(FPDF_PATH."fpdf.php");
class PDF_Label extends FPDF {
// Propriétés privées
var $_Avery_Name = ''; // Nom du format de l'étiquette
var $_Margin_Left = 0; // Marge de gauche de l'étiquette
var $_Margin_Top = 0; // marge en haut de la page avant la première étiquette
var $_X_Space = 0; // Espace horizontal entre 2 bandes d'étiquettes
var $_Y_Space = 0; // Espace vertical entre 2 bandes d'étiquettes
var $_X_Number = 0; // Nombre d'étiquettes sur la largeur de la page
var $_Y_Number = 0; // Nombre d'étiquettes sur la hauteur de la page
var $_Width = 0; // Largeur de chaque étiquette
var $_Height = 0; // Hauteur de chaque étiquette
var $_Char_Size = 10; // Hauteur des caractères
var $_Line_Height = 10; // Hauteur par défaut d'une ligne
var $_Metric = 'mm'; // Type of metric for labels.. Will help to calculate good values
var $_Metric_Doc = 'mm'; // Type of metric for the document
var $_Font_Name = 'Arial'; // Name of the font
var $_COUNTX = 1;
var $_COUNTY = 1;
// Listing of labels size
var $_Avery_Labels = array (
'5160'=>array('name'=>'5160', 'paper-size'=>'letter', 'metric'=>'mm', 'marginLeft'=>1.762, 'marginTop'=>10.7, 'NX'=>3, 'NY'=>10, 'SpaceX'=>3.175, 'SpaceY'=>0, 'width'=>66.675, 'height'=>25.4, 'font-size'=>8),
'5161'=>array('name'=>'5161', 'paper-size'=>'letter', 'metric'=>'mm', 'marginLeft'=>0.967, 'marginTop'=>10.7, 'NX'=>2, 'NY'=>10, 'SpaceX'=>3.967, 'SpaceY'=>0, 'width'=>101.6, 'height'=>25.4, 'font-size'=>8),
'5162'=>array('name'=>'5162', 'paper-size'=>'letter', 'metric'=>'mm', 'marginLeft'=>0.97, 'marginTop'=>20.224, 'NX'=>2, 'NY'=>7, 'SpaceX'=>4.762, 'SpaceY'=>0, 'width'=>100.807, 'height'=>35.72, 'font-size'=>8),
'5163'=>array('name'=>'5163', 'paper-size'=>'letter', 'metric'=>'mm', 'marginLeft'=>1.762, 'marginTop'=>10.7, 'NX'=>2, 'NY'=>5, 'SpaceX'=>3.175, 'SpaceY'=>0, 'width'=>101.6, 'height'=>50.8, 'font-size'=>8),
'5164'=>array('name'=>'5164', 'paper-size'=>'letter', 'metric'=>'in', 'marginLeft'=>0.148, 'marginTop'=>0.5, 'NX'=>2, 'NY'=>3, 'SpaceX'=>0.2031, 'SpaceY'=>0, 'width'=>4.0, 'height'=>3.33, 'font-size'=>12),
'8600'=>array('name'=>'8600', 'paper-size'=>'letter', 'metric'=>'mm', 'marginLeft'=>7.1, 'marginTop'=>19, 'NX'=>3, 'NY'=>10, 'SpaceX'=>9.5, 'SpaceY'=>3.1, 'width'=>66.6, 'height'=>25.4, 'font-size'=>8),
'L7163'=>array('name'=>'L7163', 'paper-size'=>'A4', 'metric'=>'mm', 'marginLeft'=>5, 'marginTop'=>15, 'NX'=>2, 'NY'=>7, 'SpaceX'=>25, 'SpaceY'=>0, 'width'=>99.1, 'height'=>38.1, 'font-size'=>9)
);
// convert units (in to mm, mm to in)
// $src and $dest must be 'in' or 'mm'
function _Convert_Metric ($value, $src, $dest) {
if ($src != $dest) {
$tab['in'] = 39.37008;
$tab['mm'] = 1000;
return $value * $tab[$dest] / $tab[$src];
} else {
return $value;
}
}
// Give the height for a char size given.
function _Get_Height_Chars($pt) {
// Tableau de concordance entre la hauteur des caractères et de l'espacement entre les lignes
$_Table_Hauteur_Chars = array(6=>2, 7=>2.5, 8=>3, 9=>4, 10=>5, 11=>6, 12=>7, 13=>8, 14=>9, 15=>10);
if (in_array($pt, array_keys($_Table_Hauteur_Chars))) {
return $_Table_Hauteur_Chars[$pt];
} else {
return 100; // There is a prob..
}
}
function _Set_Format($format) {
$this->_Metric = $format['metric'];
$this->_Avery_Name = $format['name'];
$this->_Margin_Left = $this->_Convert_Metric ($format['marginLeft'], $this->_Metric, $this->_Metric_Doc);
$this->_Margin_Top = $this->_Convert_Metric ($format['marginTop'], $this->_Metric, $this->_Metric_Doc);
$this->_X_Space = $this->_Convert_Metric ($format['SpaceX'], $this->_Metric, $this->_Metric_Doc);
$this->_Y_Space = $this->_Convert_Metric ($format['SpaceY'], $this->_Metric, $this->_Metric_Doc);
$this->_X_Number = $format['NX'];
$this->_Y_Number = $format['NY'];
$this->_Width = $this->_Convert_Metric ($format['width'], $this->_Metric, $this->_Metric_Doc);
$this->_Height = $this->_Convert_Metric ($format['height'], $this->_Metric, $this->_Metric_Doc);
$this->Set_Font_Size($format['font-size']);
}
function PDF_Label ($format, $unit='mm', $posX=1, $posY=1) {
if (is_array($format)) {
// Si c'est un format personnel alors on maj les valeurs
$Tformat = $format;
} else {
// Si c'est un format avery on stocke le nom de ce format selon la norme Avery.
// Permettra d'aller récupérer les valeurs dans le tableau _Avery_Labels
$Tformat = $this->_Avery_Labels[$format];
}
parent::FPDF('P', $Tformat['metric'], $Tformat['paper-size']);
$this->_Set_Format($Tformat);
$this->Set_Font_Name('Arial');
$this->SetMargins(0,0);
$this->SetAutoPageBreak(false);
$this->_Metric_Doc = $unit;
// Permet de commencer l'impression à l'étiquette désirée dans le cas où la page a déjà servi
if ($posX > 1) $posX--; else $posX=0;
if ($posY > 1) $posY--; else $posY=0;
if ($posX >= $this->_X_Number) $posX = $this->_X_Number-1;
if ($posY >= $this->_Y_Number) $posY = $this->_Y_Number-1;
$this->_COUNTX = $posX;
$this->_COUNTY = $posY;
}
// Méthode qui permet de modifier la taille des caractères
// Cela modifiera aussi l'espace entre chaque ligne
function Set_Font_Size($pt) {
if ($pt > 3) {
$this->_Char_Size = $pt;
$this->_Line_Height = $this->_Get_Height_Chars($pt);
$this->SetFontSize($this->_Char_Size);
}
}
// Method to change font name
function Set_Font_Name($fontname) {
if ($fontname != '') {
$this->_Font_Name = $fontname;
$this->SetFont($this->_Font_Name);
}
}
// On imprime une étiqette
function Add_PDF_Label($texte) {
// We are in a new page, then we must add a page
if (($this->_COUNTX ==0) and ($this->_COUNTY==0)) {
$this->AddPage();
}
$_PosX = $this->_Margin_Left+($this->_COUNTX*($this->_Width+$this->_X_Space));
$_PosY = $this->_Margin_Top+($this->_COUNTY*($this->_Height+$this->_Y_Space));
$this->SetXY($_PosX+3, $_PosY+3);
$this->MultiCell($this->_Width, $this->_Line_Height, $texte);
$this->_COUNTY++;
if ($this->_COUNTY == $this->_Y_Number) {
// Si on est en bas de page, on remonte le 'curseur' de position
$this->_COUNTX++;
$this->_COUNTY=0;
}
if ($this->_COUNTX == $this->_X_Number) {
// Si on est en bout de page, alors on repart sur une nouvelle page
$this->_COUNTX=0;
$this->_COUNTY=0;
}
}
}
?>

View File

@ -26,8 +26,6 @@
*/
require_once(FPDFI_PATH.'fpdi_protection.php');
require_once(DOL_DOCUMENT_ROOT ."/includes/fpdf/fpdf_indexes.php");
require_once(DOL_DOCUMENT_ROOT ."/includes/fpdf/fpdf_html.php");
require_once(DOL_DOCUMENT_ROOT."/lib/company.lib.php");
/**

View File

@ -16,15 +16,13 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
* or see http://www.gnu.org/
*
* $Id$
*/
/**
\file htdocs/includes/modules/barcode/phpbarcode.modules.php
\ingroup facture
\brief Fichier contenant la classe du modèle de generation code barre phpbarcode
\version $Revision$
\version $Id$
*/
require_once(DOL_DOCUMENT_ROOT ."/includes/modules/barcode/modules_barcode.php");
@ -84,10 +82,10 @@ class modPhpbarcode extends ModeleBarCode
}
/**
\brief Retourne fichier image
\param $code Valeur numérique a coder
\param $encoding Mode de codage
\param $readable Code lisible
* \brief Return an image file on output
* \param $code Valeur numérique a coder
* \param $encoding Mode de codage
* \param $readable Code lisible
*/
function buildBarCode($code,$encoding,$readable='Y')
{
@ -112,7 +110,27 @@ class modPhpbarcode extends ModeleBarCode
return 1;
}
/**
* \brief Save an image file on disk
* \param $code Valeur numérique a coder
* \param $encoding Mode de codage
* \param $readable Code lisible
*/
function writeBarCode($code,$encoding,$readable='Y')
{
global $conf,$filebarcode;
create_exdir($conf->barcode->dir_temp);
$file=$conf->barcode->dir_temp.'/barcode_'.$code.'_'.$encoding.'.png';
$filebarcode=$file; // global var to be used in buildBarCode
$result=$this->buildBarCode($code,$encoding,$readable);
return $result;
}
}
?>

View File

@ -1,6 +1,6 @@
<?php
/* Copyright (C) 2005 Rodolphe Quiedeville <rodolphe@quiedeville.org>
* Copyright (C) 2005-2007 Laurent Destailleur <eldy@users.sourceforge.net>
* Copyright (C) 2005-2009 Laurent Destailleur <eldy@users.sourceforge.net>
* Copyright (C) 2005 Regis Houssin <regis@dolibarr.fr>
*
* This program is free software; you can redistribute it and/or modify
@ -27,7 +27,7 @@
*/
require_once(DOL_DOCUMENT_ROOT.'/lib/functions.lib.php');
require_once DOL_DOCUMENT_ROOT.'/includes/fpdf/DolibarrPdfBarCode.class.php';
require_once(DOL_DOCUMENT_ROOT.'/includes/fpdf/fpdfi/fpdi_protection.php');
/**
@ -35,7 +35,7 @@ require_once DOL_DOCUMENT_ROOT.'/includes/fpdf/DolibarrPdfBarCode.class.php';
* \brief Parent class of ssending receipts models
*/
class ModelePdfExpedition extends DolibarrPdfBarCode
class ModelePdfExpedition extends FPDF
{
var $error='';

View File

@ -87,9 +87,11 @@ Class pdf_expedition_rouget extends ModelePdfExpedition
$pdf->Rect($this->marge_gauche, $this->marge_haute, $this->page_largeur-$this->marge_gauche-$this->marge_droite, 30);
if ($this->barcode->enabled)
if ($conf->barcode->enabled)
{
$pdf->Code39($this->marge_gauche+3, $this->marge_haute+3, $this->expe->ref);
// TODO Build code bar with function writeBarCode of barcode module for sending ref $this->expe->ref
//$pdf->SetXY($this->marge_gauche+3, $this->marge_haute+3);
//$pdf->Image($logo,10, 5, 0, 24);
}
$pdf->SetDrawColor(128,128,128);
@ -100,9 +102,11 @@ Class pdf_expedition_rouget extends ModelePdfExpedition
$pdf->Text($posx, 28, $outputlangs->transnoentities("Date")." : ".dolibarr_print_date($this->expe->date,"%d %b %Y",false,$outputlangs));
$pdf->Text($posx, 34, $outputlangs->transnoentities("Page")." : ".$pdf->PageNo() ."/{nb}", 0);
if ($this->barcode->enabled)
if ($conf->barcode->enabled)
{
$pdf->Code39($this->marge_gauche+3, 44, $this->expe->commande->ref);
// TODO Build code bar with function writeBarCode of barcode module for sending ref $this->expe->ref
//$pdf->SetXY($this->marge_gauche+3, $this->marge_haute+3);
//$pdf->Image($logo,10, 5, 0, 24);
}
$pdf->SetFont('Arial','', 14);