#!/usr/bin/perl

########################################################
#                                                      #
# Gestdb v1.0 by Michela Fontana                       #
# Website : http://www.calzatura.com                   #
# Created : 01/01/2004                                 #
#                                                      #
########################################################

############   ADJUST THESE VARIABLES   ################

       use CGI;
       use DBI;

# Get the Dbase information

$mysql1  = 'calzatura_com_calzatura';
$mysql2  = 'mysql.register.it';
$mysql3  = 'GS1219_CALZATURA';
$mysql4  = 'michela';

	$footfile  = '/italy/head/foot.txt';

# Get the form variables

	if ($ENV{'REQUEST_METHOD'} eq 'GET') {
        	$buffer = $ENV{'QUERY_STRING'};
	}	
	else {
        	read(STDIN, $buffer, $ENV{'CONTENT_LENGTH'});
	}

# Break em up into a format the script can read

	@pairs = split(/&/, $buffer);
	foreach $pair (@pairs) {
        	($name, $value) = split(/=/, $pair);
        	$value =~ tr/+/ /;
        	$value =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg;
        	$FORM{$name} = $value;
	}

# Get the footer information

	unless (open (DATA,"$footfile")) {die (&error);}
		if ($uselock eq '1') {
			flock DATA, 2;
			seek DATA, 0, 0;
		}
		@footinfo = <DATA>;
		if ($uselock eq '1') {
			flock DATA, 8;
		}
	close (DATA);
	foreach $footline (@footinfo){
		$footer = $footer.$footline;
	}

# Get the Dbase information


#------------------------------------------------- M A I N
print "Content-type: text/html\n\n";
$numero         = $FORM{'numero'};
$action         = $FORM{'action'};
$password       = $FORM{'password'};

if ($action eq 'rubrica') {
print "<body bgcolor=#cccccc>
<font FACE=arial,helvetica COLOR=000000 SIZE=2><div align=center><center>

<table border=0 cellspacing=0 width=100% height=1 cellpadding=0>
  <tr>
    <td width=2% valign=top bgcolor=#CCCCCC height=3></td>
    <td width=10% height=3 bgcolor=#CCCCCC></td>
    <td width=79% height=3 bgcolor=#CCCCCC>&nbsp; </td>
    <td width=2% align=right valign=top bgcolor=#CCCCCC height=3></td>
  </tr>
  <tr>
    <td width=2% valign=top bgcolor=#C8DCF0 height=1><img
    src=http://www.calzatura.com/images/angle1.gif width=7 height=8></td>
    <td width=10% height=1 bgcolor=#C8DCF0></td>
    <td width=79% height=1 bgcolor=#C8DCF0 rowspan=2><table border=0 width=100%
    cellspacing=0 cellpadding=0 height=11>
      <tr>
        <td width=99% height=11><b>&nbsp;</font><font face=arial,helvetica color=#FF0000
        size=2>SCHEDA VCF PER OUTLOOK 2000 o RUBRICA DI CALZATURA</font></b></td>
        <td width=15% height=11></td>
      </tr>
    </table>
    </td>
    <td width=2% align=right valign=top bgcolor=#C8DCF0 height=1><img
    src=http://www.calzatura.com/images/angle2.gif width=11 height=12></td>
  </tr>
  <tr>
    <td width=2% bgcolor=#C8DCF0 height=1></td>
    <td width=10% height=1 bgcolor=#E1E1E1 rowspan=2 valign=top></td>
    <td width=2% align=right bgcolor=#C8DCF0 height=1></td>
  </tr>
  <tr>
    <td width=2% bgcolor=#C8DCF0 height=21></td>
    <td width=79% height=21 bgcolor=#E1E1E1><table border=0 width=100%
    cellspacing=0 cellpadding=5>
      <tr>
        <td width=100%><small><font color=#000080 face=Verdana>Inserisci la tua PASSWORD di
        CALZATURA: </font></small><form method=POST
        action=vcard.cgi>
          <input type=hidden name=numero value=$numero>
          <input type=hidden name=action value=aggiungi>
          <p><font color=#000080 face=Verdana><input type=password name=password size=20>
          &nbsp;&nbsp; <input type=submit value=Invia name=B1><input type=reset
          value=Reimposta name=B2></font></p>
        </form>
        </td>
      </tr>
      <tr>
        <td width=100%></td>
      </tr>
    </table>
    </td>
    <td width=2% align=right bgcolor=#C8DCF0 height=21></td>
  </tr>
  <tr>
    <td width=2% valign=bottom bgcolor=#C8DCF0 height=1><img
    src=http://www.calzatura.com/images/angle3.gif width=11 height=12></td>
    <td width=10% height=1 bgcolor=#C8DCF0></td>
    <td width=79% height=1 bgcolor=#C8DCF0></td>
    <td width=2% align=right valign=bottom bgcolor=#C8DCF0 height=1><img
    src=http://www.calzatura.com/images/angle4.gif width=11 height=12></td>
  </tr>
</table>
</center></div>

<hr WIDTH=400>

<p align=center><font FACE=arial,helvetica size=1 color=#FF0000><a
HREF=http://www.calzatura.com target=_top>Calzatura</a></font><font
FACE=arial,helvetica COLOR=000000 size=1> E-Mail: <a
href=mailto:info\@calzatura.com>info\@calzatura.com</a><br>
All Rights Reserved.</font></p>

<table border=0 width=100% cellspacing=0 cellpadding=0>
  <tr>
    <td width=100% bgcolor=#C0C0C0 align=center></td>
  </tr>
</table>
</body>";
exit;
}



# Open DB connection
$dbh = DBI->connect("DBI:mysql:$mysql1:$mysql2", $mysql3, $mysql4);
if (!dbh) { print "Errore!"; }

my $stat = $dbh->prepare("SELECT ID, RAGIONESOCIALE, INDIRIZZO, CAP, CITTA, PROVINCIA, NAZIONE, MAIL,
                          URL, TELEFONO, FAX, DESCRIZIONEITA, IMMAGINE, PAGA, CATEGORIA1, CATEGORIA2, CATEGORIA3, 
                          NOMECONTATTO, COGNOMECONTATTO, POSIZIONECONTATTO, MAILCONTATTO, NOMEACQUISTI, COGNOMEACQUISTI, CELLULAREACQUISTI,
                          NOMEVENDITE, COGNOMEVENDITE, CELLULAREVENDITE  FROM Base
                          WHERE ID='$numero'");

my $return = $stat->execute;

($id, $rag, $indirizzo, $cap, $citta, $provincia, $nazione, $mail,
 $url, $telefono, $fax, $descrizione, $immagine, $paga, $cat1, $cat2, $cat3, $nomecontatto, $cognomecontatto, $posizione, $emailpersonale,
 $nomeacquisti, $cognomeacquisti, $cellulareacquisti, $nomevendite, $cognomevendite, $cellularevendite) = $stat->fetchrow_array;

($nazioneestesa) = $dbh->selectrow_array("SELECT NAZIONE FROM Nazioni WHERE ID='$nazione'");

$dbh->disconnect;

$linea3 = $cognomecontatto."::".$nomecontatto."::".$telefono."::".$fax."::".$mail."::".$posizione."::".$rag."::".$indirizzo."::".$citta."::".$cap."::"." "."::".$provincia."::".$nazioneestesa."::"." "."::".$url."::"." "."::"." "."::"." "."::"." "."::";

if ($action eq 'aggiungi') {

   $files2 = "/agende/".$password."rub.txt";
   unless (open (DATA,"$files2")) {die (&error);}
	if ($uselock eq '1') {
		flock DATA, 2;
		seek DATA, 0, 0;
	}
	@input = <DATA>;
	if ($uselock eq '1') {
		flock DATA, 8;
	}
	close (DATA);
        $entries = @input;
        $currentline = $entries;

   $contatore = 0;

   until ($currentline < 0){
       @data = split (/::/,$input[$currentline]);
       if ($data[19] > $contatore){
          $contatore = $data[19];
       }
       $currentline = $currentline - 1;
   }

   $contatore = $contatore + 1;

$linea3 = $linea3.$contatore."::"."Cliente"."::";

$files2 = "/agende/".$password."rub.txt";
unless (open (DATA,">>$files2")) {die (&error);}
        if ($uselock eq '1') {
           flock DATA, 2;
        }
        print DATA "$linea3\n";
    if ($uselock eq '1') {
        flock DATA, 8;
    }
    close (DATA);

unless (open (DATA,"$files2")) {die (&error);}
	if ($uselock eq '1') {
		flock DATA, 2;
		seek DATA, 0, 0;
	}
	@input = <DATA>;
	if ($uselock eq '1') {
		flock DATA, 8;
	}
	close (DATA);
        $entries = @input;
        $currentline = $entries;

$files = "/agende/".$password."rub.new";
unless (open (DATA,">$files")) {die (&error);}
       if ($uselock eq '1') {
	  flock DATA, 2;
       }

    until (($currentline < 0 )){
          @data = split (/::/,$input[$currentline]);
          $currentline2 = $currentline - 1;
          until (($currentline2 < 0)){
                @data2 = split (/::/,$input[$currentline2]);
                if (($data[0] lt $data2[0])){
                   $data[0]  = $data2[0];
                   $appoggio = $input[$currentline];
                   $input[$currentline]  = $input[$currentline2];
                   $input[$currentline2] = $appoggio;
	        }
                $currentline2 = $currentline2 - 1;
          }
          if ($input[$currentline] ne ''){
             print DATA "$input[$currentline]";
          }
          $currentline=$currentline - 1;
    }
    if ($uselock eq '1') {
       flock DATA, 8;
    }
    close (DATA);

$files = "/agende/".$password."rub.new";
$files2 = "/agende/".$password."rub.txt";

unlink $files2;
rename $files , $files2;

print "<body bgcolor=#cccccc>
<font FACE=arial,helvetica COLOR=000000 SIZE=2><div align=center><center>

<table border=0 cellspacing=0 width=100% height=1 cellpadding=0>
  <tr>
    <td width=2% valign=top bgcolor=#CCCCCC height=3></td>
    <td width=10% height=3 bgcolor=#CCCCCC></td>
    <td width=79% height=3 bgcolor=#CCCCCC>&nbsp; </td>
    <td width=2% align=right valign=top bgcolor=#CCCCCC height=3></td>
  </tr>
  <tr>
    <td width=2% valign=top bgcolor=#C8DCF0 height=1><img
    src=http://www.calzatura.com/images/angle1.gif width=7 height=8></td>
    <td width=10% height=1 bgcolor=#C8DCF0></td>
    <td width=79% height=1 bgcolor=#C8DCF0 rowspan=2><table border=0 width=100%
    cellspacing=0 cellpadding=0 height=11>
      <tr>
        <td width=99% height=11><b>&nbsp;</font><font face=arial,helvetica color=#FF0000
        size=2>SCHEDA VCF PER OUTLOOK 2000 o RUBRICA DI CALZATURA</font></b></td>
        <td width=15% height=11></td>
      </tr>
    </table>
    </td>
    <td width=2% align=right valign=top bgcolor=#C8DCF0 height=1><img
    src=http://www.calzatura.com/images/angle2.gif width=11 height=12></td>
  </tr>
  <tr>
    <td width=2% bgcolor=#C8DCF0 height=1></td>
    <td width=10% height=1 bgcolor=#E1E1E1 rowspan=2 valign=top></td>
    <td width=2% align=right bgcolor=#C8DCF0 height=1></td>
  </tr>
  <tr>
    <td width=2% bgcolor=#C8DCF0 height=21></td>
    <td width=79% height=21 bgcolor=#E1E1E1><font face=Verdana color=#000080><small>&nbsp;</small></font><p><font
    face=Verdana color=#000080><small>INSERIMENTO ESEGUITO</small></font></p>
    <p><font face=Verdana color=#000080><small>&nbsp;</small></font></td>
    <td width=2% align=right bgcolor=#C8DCF0 height=21></td>
  </tr>
  <tr>
    <td width=2% valign=bottom bgcolor=#C8DCF0 height=1><img
    src=http://www.calzatura.com/images/angle3.gif width=11 height=12></td>
    <td width=10% height=1 bgcolor=#C8DCF0></td>
    <td width=79% height=1 bgcolor=#C8DCF0></td>
    <td width=2% align=right valign=bottom bgcolor=#C8DCF0 height=1><img
    src=http://www.calzatura.com/images/angle4.gif width=11 height=12></td>
  </tr>
</table>
</center></div>

<hr WIDTH=400>

<p align=center><font FACE=arial,helvetica size=1 color=#FF0000><a
HREF=http://www.calzatura.com target=_top>Calzatura</a></font><font
FACE=arial,helvetica COLOR=000000 size=1> E-Mail: <a
href=mailto:info\@calzatura.com>info\@calzatura.com</a><br>
All Rights Reserved.</font></p>

<table border=0 width=100% cellspacing=0 cellpadding=0>
  <tr>
    <td width=100% bgcolor=#C0C0C0 align=center></td>
  </tr>
</table>
</body>
";
exit;
}

$username = 'calzatodo';
$password = 'password';

# Open DB connection
$dbh = DBI->connect("DBI:mysql:$mysql1:$mysql2", $mysql3, $mysql4);
if (!dbh) { print "Errore!"; }

my $stat = $dbh->prepare("SELECT ID, RAGIONESOCIALE, INDIRIZZO, CAP, CITTA, PROVINCIA, NAZIONE, MAIL,
                          URL, TELEFONO, FAX, DESCRIZIONEITA, IMMAGINE, PAGA, CATEGORIA1, CATEGORIA2, CATEGORIA3, 
                          NOMECONTATTO, COGNOMECONTATTO, POSIZIONECONTATTO, MAILCONTATTO, NOMEACQUISTI, COGNOMEACQUISTI, CELLULAREACQUISTI,
                          NOMEVENDITE, COGNOMEVENDITE, CELLULAREVENDITE  FROM Base
                          WHERE ID='$numero'");

my $return = $stat->execute;

($id, $rag, $indirizzo, $cap, $citta, $provincia, $nazione, $mail,
 $url, $telefono, $fax, $descrizione, $immagine, $paga, $cat1, $cat2, $cat3, $nomecontatto, $cognomecontatto, $posizione, $emailpersonale,
 $nomeacquisti, $cognomeacquisti, $cellulareacquisti, $nomevendite, $cognomevendite, $cellularevendite) = $stat->fetchrow_array;

($nazioneestesa) = $dbh->selectrow_array("SELECT NAZIONE FROM Nazioni WHERE ID='$nazione'");

$dbh->disconnect;

$files = "/vcard/".$numero.".vcf";
$files2 = "http://www.calzatura.com/vcard/".$numero.".vcf";

unless (open (DATA,">$files")) {die (&error);}
       if ($uselock eq '1') {
          flock DATA, 2;
       }
       print DATA "BEGIN:VCARD\n";
       print DATA "VERSION:2.1\n";
       print DATA "N:$nomecontatto;$cognomecontatto\n";
       print DATA "FN:$cognomecontatto $nomecontatto\n";
       print DATA "ORG:$rag\n";
       print DATA "TITLE:$posizione\n";
       print DATA "TEL;WORK;VOICE:$telefono\n";
       print DATA "TEL;HOME;VOICE:\n";
       print DATA "TEL;CELL;VOICE:\n";
       print DATA "TEL;WORK;FAX:$fax\n";
       print DATA "ADR;WORK:;;;$indirizzo $cap $citta $provincia;;;$nazioneestesa\n";
       print DATA "LABEL;WORK;ENCODING=QUOTED-PRINTABLE:$indirizzo $cap $citta $provincia=0D=0A$nazioneestesa\n";
       print DATA "URL:\n";
       print DATA "URL:$url\n";
       print DATA "EMAIL;PREF;INTERNET:$mail\n";
       print DATA "REV:20010323T171302Z\n";
       print DATA "END:VCARD\n";

    if ($uselock eq '1') {
        flock DATA, 8;
    }
    close (DATA);

print "<body bgcolor=#cccccc>
<font FACE=arial,helvetica COLOR=000000 SIZE=2><div align=center><center>

<table border=0 cellspacing=0 width=100% height=1 cellpadding=0>
  <tr>
    <td width=2% valign=top bgcolor=#CCCCCC height=3></td>
    <td width=10% height=3 bgcolor=#CCCCCC></td>
    <td width=79% height=3 bgcolor=#CCCCCC>&nbsp; </td>
    <td width=2% align=right valign=top bgcolor=#CCCCCC height=3></td>
  </tr>
  <tr>
    <td width=2% valign=top bgcolor=#C8DCF0 height=1><img
    src=http://www.calzatura.com/images/angle1.gif width=7 height=8></td>
    <td width=10% height=1 bgcolor=#C8DCF0></td>
    <td width=79% height=1 bgcolor=#C8DCF0 rowspan=2><table border=0 width=100%
    cellspacing=0 cellpadding=0 height=11>
      <tr>
        <td width=99% height=11><b>&nbsp;</font><font face=arial,helvetica color=#FF0000
        size=2>SCHEDA VCF PER OUTLOOK 2000 o RUBRICA DI CALZATURA</font></b><font
        FACE=arial,helvetica COLOR=000000 SIZE=2></font></td>
        <td width=15% height=11></td>
      </tr>
    </table>
    </td>
    <td width=2% align=right valign=top bgcolor=#C8DCF0 height=1><img
    src=http://www.calzatura.com/images/angle2.gif width=11 height=12></td>
  </tr>
  <tr>
    <td width=2% bgcolor=#C8DCF0 height=1></td>
    <td width=10% height=1 bgcolor=#E1E1E1 rowspan=2 valign=top></td>
    <td width=2% align=right bgcolor=#C8DCF0 height=1></td>
  </tr>
  <tr>
    <td width=2% bgcolor=#C8DCF0 height=21></td>
    <td width=79% height=21 bgcolor=#E1E1E1><table border=0 width=100%
    cellspacing=0 cellpadding=5>
      <tr>
        <td width=50%><font face=Verdana color=#000080><small>Per scaricare direttamente i
        dati di questo Cliente sulla tua rubrica personale di <strong><em>OUTLOOK</em></strong>
        clicca qui sotto:</small></font><p align=center><font face=Verdana color=#000080><small><a
        href=$files2><img src=http://www.calzatura.com/images/vcard/contatti.jpg alt=VCARD
        border=0></a></small></font></td>
        <td width=50%><font face=Verdana color=#000080><small>Per scaricare direttamente i
        dati di questo Cliente sulla tua rubrica personale di <em><strong>CALZATURA</strong></em>
        clicca qui sotto:</small></font><p align=center><font face=Verdana color=#000080><small><a
        href=vcard.cgi?action=rubrica&numero=$numero><img
        src=http://www.calzatura.com/images/vcard/rubpe.jpg alt=RUBRICA border=0></a></small></font></td>
      </tr>
      <tr>
        <td width=100% colspan=2></td>
      </tr>
    </table>
    </td>
    <td width=2% align=right bgcolor=#C8DCF0 height=21></td>
  </tr>
  <tr>
    <td width=2% valign=bottom bgcolor=#C8DCF0 height=1><img
    src=http://www.calzatura.com/images/angle3.gif width=11 height=12></td>
    <td width=10% height=1 bgcolor=#C8DCF0></td>
    <td width=79% height=1 bgcolor=#C8DCF0></td>
    <td width=2% align=right valign=bottom bgcolor=#C8DCF0 height=1><img
    src=http://www.calzatura.com/images/angle4.gif width=11 height=12></td>
  </tr>
</table>
</center></div>

<hr WIDTH=400>

<p align=center><font FACE=arial,helvetica size=1 color=#FF0000><a
HREF=http://www.calzatura.com target=_top>Calzatura</a></font><font
FACE=arial,helvetica COLOR=000000 size=1> E-Mail: <a
href=mailto:info\@calzatura.com>info\@calzatura.com</a><br>
All Rights Reserved.</font></p>
</body>
";



exit;

#------------------------------------------------- E N D  M A I N


sub heading {
	print "$heading";
}

sub footer {
        print "$footer";
        exit;
}

sub error {    
	$noshow = 1;
	&heading;
	print "<CENTER><FONT $font><h2>File Access Error</h2><P><B>You have an error in your PATH configuration variables in the $ENV{'SCRIPT_NAME'} file.</B><P>Your server reports that your BASE path is : $ENV{'DOCUMENT_ROOT'}<BR>Note that this is reported as your BASE path, not the FULL path to your files.<P>If you require help installing this script please consider purchasing the professional version of this script. Your purchase includes full tech support and installation.<P><B>Get it at : <A HREF=http://www.getperl.com/easysearch/>http://www.getperl.com/easysearch/</A></B></FONT></CENTER><P>\n";
	&footer;
}
