Zur aktuellen Revision | Blame | Vergleich mit vorheriger | Letzte Änderung | Log anzeigen | RSS feed
<?phprequire_once "fpdf/fpdf.php";class PDF extends FPDF{//Page headerfunction Header(){}//Page footerfunction Footer(){}}error_reporting( E_ALL & ~ ( E_NOTICE ) );define( "Range", 100 );define( "modul_name", "Warenwirtschaft" );define( "tool_name", "bestellung" );define( "VAR_EXTR_PREFIX", "schnell" );require_once "../../Online-Shop/connect2.php";$time = microtime_float();require_once "../includes/bestellungen/system/getBestellungLieferscheinStatus.php";require_once "../includes/bestellungen/system/getBestellungRechnungStatus.php";require_once "../includes/bestellungen/system/getBestellungStatus.php";require_once "../includes/bestellungen/system/getBestellungSumme.php";require_once "../includes/bestellungen/system/mysql_query_logged.php";require_once "../includes/bestellungen/system/artikelDatabase.php";require_once "../includes/bestellungen/system/bestellung_puffern.php";require_once "../includes/bestellungen/system/getVersandItems.php";require_once "../includes/best_manu/system/getShops.php";require_once "../includes/bestellungen/createOrderText.php"; // Ma/*require_once "includes/bestellungen/system/bestellart.php"; // Marequire_once "includes/bestellungen/system/functions.inc.php"; // Ma*/require_once "../includes/bestellungen/system/getBestellarten.php"; // Ma$ausgabeFelder = array( 0 => "bestellung", "artikel", "schnelleditor" );$bestellartFelder = array( 1 => "Online-Shop", "Reservierung" );$Heute = date( "d.m.Y" );$jetzt = date( "H:i" );function getArtikel( $ID, $a_id ){if ( !$ID )return false;$buffer = array();$sql = "SELECTartikel_to_Bestellung.*, artikel.*FROMartikel_to_Bestellung,artikel,BestellungWHEREartikel_to_Bestellung.Bestellung=$IDANDartikel.ID=artikel_to_Bestellung.artikelANDartikel.ID=$a_idANDBestellung.ID=artikel_to_Bestellung.BestellungANDartikel.Language=Bestellung.Language";$result = mysql_query_logged( $sql ) or die( mysql_errno() . ": " .mysql_error() . "<hr>$query<hr>" );while ( $zeile = mysql_fetch_assoc( $result ) ){$zeile['ArtikelID'] = $zeile['ID'];unset( $zeile['ID'] );$buffer = $zeile;}return $buffer;}function getBestellDaten( $ID ){global $daten;if ( !$ID ){return false;}$buffer = array();$sql = "SELECTBestellung.ID AS bestellungId,artikel_to_Bestellung.status,Bestellung.Login,artikel_to_Bestellung.Bestellung,Bestellung.termin,date_format( Bestellung.erstellt_am, '%d.%m.%Y' ) AS bestellDatum,date_format( Bestellung.erstellt_am, '%T' ) AS bestellZeit,sum( artikel_to_Bestellung.Menge * artikel_to_Bestellung.Preis_pro_Stueck ) AS BetragFROM artikel_to_BestellungLEFT JOIN Bestellung ON ( Bestellung.ID = artikel_to_Bestellung.Bestellung )WHERE Bestellung.ID=$ID GROUP BY Bestellung.ID";$result = mysql_query_logged( $sql ) or die( mysql_errno() . ": " .mysql_error() . "<hr>$sql<hr>" );while ( $zeile = mysql_fetch_assoc( $result ) ){$buffer['Kundendaten'] = !( $buffer['Kundendaten'] ) ?getKundenDaten( $zeile['Login'] ) : $buffer['Kundendaten'];$buffer['Artikel'] = !( $buffer['Artikel'] ) ? getArtikel( $zeile['Bestellung'],$daten[2] ) : $buffer['Artikel'];$buffer['Bestellung'] = $zeile;}return $buffer;}function getKundenDaten( $ID ){if ( !$ID ){return false;}$buffer = array();$sql = "SELECT * FROM Logins WHERE Logins.ID=$ID";$result = mysql_query_logged( $sql ) or die( mysql_errno() . ": " .mysql_error() . "<hr>$query<hr>" );$zeile = mysql_fetch_assoc( $result );$zeile['Login'] = $zeile['ID'];unset( $zeile['ID'] );return $zeile;}function getWebSettings( $shop_ID, $best_art ){global $Bestellung;$Userdata = $Bestellung["Kundendaten"];//var_dump($Userdata);$artikel = $Bestellung["Artikel"];$Datum = $Bestellung["Bestellung"]["bestellDatum"];$Zeit = date( "H:i", strtotime( $Bestellung["Bestellung"]["bestellZeit"] ) );/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ *//* ++ Ma.Nie 10.04.2008 Websettings lesen ++ *//* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */$query = "select * from web_settings where shops_ID=$shop_ID AND bestellart_id=$best_art order by Rang";//$query = "select * from web_settings where shops_ID=$shop_ID AND bestellart_id=2 order by Rang";$result = mysql_query( $query ) or die( mysql_errno() . ": " .mysql_error() . "<hr>$query<hr>" );while ( $zeile = mysql_fetch_assoc( $result ) ){$wsID = $zeile[ID];$wsInhalt = $zeile["Inhalt"];@eval( "\$web_settings[$wsID]=\"$wsInhalt\";" );}return $web_settings;}$Felddaten = explode( ";", $_GET["Felddaten"] );if ( $_POST["mode"] ){foreach ( $_POST["daten"] as $daten ){$bestelldaten = unserialize( stripslashes( $daten["bestell_daten"] ) );$daten["bestell_id"] = $bestelldaten["bestellungId"];$res = sendMail( $daten );if ( $res["code"] ){// echo "E-Mail erfolgreich verschickt!<br>";if ( $_POST["mode"] == "send" ){$art = "B";}else{$art = "V";}$ln = sprintf( "%05d", getPDFLN( $daten["bestell_id"], $daten["artikel_id"],$art ) );$res = generate_pdf( $daten["bestell_id"], $daten["artikel_id"],$res["body"], $art, $ln );if ( $res ){$res = setStatus( $daten["bestell_id"], $daten["artikel_id"],$daten["status"] );if ( $res ){//echo "Artikel erfolgreich reserviert!<br>";}}}else{echo"Leider ist ein Fehler beim Verschicken der E-Mail aufgetreten! Bitte versuchen Sie es später noch einmal!<br>";}}}else{$i = 0;$c = count( $_POST["schnellAktion"] );$f_daten = explode( ";", $_GET["Felddaten"] );$mode_str = $f_daten[count( $f_daten ) - 1];if ( in_array( $mode_str, array( "mode=drucken","mode=schnittmarke-drucken" ) ) ){foreach ( $_POST as $key => $value ){foreach ( $value as $key2 => $value2 ){$daten = explode( ",", $value2 );$Bestellung = getBestellDaten( $daten[3] );$web_settings = getWebSettings( $daten[0], $daten[1] );$daten["kunden_daten"] = serialize( $Bestellung["Kundendaten"] );$daten["bestell_daten"] = serialize( $Bestellung["Bestellung"] );if ( $i == $c - 1 ){$mode_str = "mode=drucken";}drucken( $daten, $mode_str );$i++;}}} elseif ( $f_daten[count( $f_daten ) - 1] == "mode=verzoegerung" ){foreach ( $_POST as $key => $value ){foreach ( $value as $key2 => $value2 ){$daten = explode( ",", $value2 );$Bestellung = getBestellDaten( $daten[3] );$web_settings = getWebSettings( $daten[0], $daten[1] );if ( $i == 0 ){ ?><form action="" method="post"><input type="hidden" name="from" value="<?= $web_settings[11]; ?>"><table><?php}prepareVerzMail( $web_settings, $Bestellung["Kundendaten"] );//sendMail( $web_settings, $Bestellung["Kundendaten"]["E_Mail"] );if ( $i == $c - 1 ){ ?><tr><td colspan="2"><input type="submit" value="senden und drucken"><input type="hidden" name="mode" value="send_v"></td></tr></table></form><?php}$i++;}}}else{foreach ( $_POST as $key => $value ){foreach ( $value as $key2 => $value2 ){$daten = explode( ",", $value2 );$Bestellung = getBestellDaten( $daten[3] );$web_settings = getWebSettings( $daten[0], $daten[1] );if ( $i == 0 ){ ?><form action="" method="post"><input type="hidden" name="from" value="<?= $web_settings[11]; ?>"><table><?php}prepareMail( $web_settings, $Bestellung["Kundendaten"] );//sendMail( $web_settings, $Bestellung["Kundendaten"]["E_Mail"] );if ( $i == $c - 1 ){ ?><tr><td colspan="2"><input type="submit" value="senden und drucken"><input type="hidden" name="mode" value="send"></td></tr></table></form><?php}$i++;//header( "Location: ../bestellungen.php" );}}}}function sendMail( $daten ){//var_dump( $daten );$mailSubject = $daten["mailSubject"];$mailText = str_replace( "<#Abholdatum#>", $daten["datum"], $daten["mailText"] );$email = $daten["email"];$body = $mailText . "\r\n\r\n";$res = mail( "$email", $mailSubject, $body, "From:$_POST[from]", "-f$_POST[from]" );$erg["body"] .= $body;$erg["code"] = $res;return $erg;}function generate_pdf( $bestell_id, $artikel_id, $body, $art = "B", $ln =1 ){global $webs;//Instanciation of inherited class$pdf = new PDF();global $site;require_once "../includes/reservierungen/body_$site.inc.php";$pdf->setSubject( "E-Mail über Reservierung" );$pdf->setAuthor( $haendler_name );$pdf->setCreator( "fpdf PHP Library" );$pdf->AliasNbPages();$pdf->AddPage();$pdf->setY( 45 );$pdf->setFont( 'Arial', '', 10 );$pdf->multicell( 190, 4, "$body", "B", "L", 0 );$f_name = $bestell_id . "_" . $artikel_id . "_" . $art . $ln .".pdf";$pdf->Output( $webs['verzeichnis'] . "/images/dokumente/$f_name" );$sql ="REPLACE INTO dokumente (table_foreign, row_foreign, data_foreign, document, letzte_Aenderung_am, letzte_Aenderung_von)VALUES('Bestellung', 'ID', $bestell_id, '$f_name', NOW(), '" .$_SERVER["PHP_AUTH_USER"] . "')";$res = mysql_query( $sql );if ( !$res ){mail( "tiefland@weban.de","Fehler beim hinzufügen der PDF-Datei zur Bestellung!",mysql_error() . "\n$sql", "From: redaktion@$site" );}return true;}function drucken( $daten, $mode_str ){global $Bestellung;$kundendaten = unserialize( stripslashes( $daten["kunden_daten"] ) );$bestelldaten = unserialize( stripslashes( $daten["bestell_daten"] ) ); ?><table><tr><td style="font-weight:bold;font-size:120%;">Bestelldatum:</td><td style="font-weight:bold;font-size:120%;"><?= $bestelldaten["bestellDatum"] . " " . $bestelldaten["bestellZeit"]; ?></td></tr><tr><td>Artikel:</td><td><?= $Bestellung["Artikel"]["kurzbezeichnung"]; ?></td></tr><tr><td>Kundenname:</td><td><?= $Bestellung["Kundendaten"]["Vorname"] . " " . $Bestellung["Kundendaten"]["Name1"]; ?></td></tr><tr><td>Telefon:</td><td><?= $Bestellung["Kundendaten"]["Telefon"]; ?></td></tr><tr><td>E-Mail:</td><td><?= $Bestellung["Kundendaten"]["E_Mail"]; ?></td></tr><tr><td>Preis:</td><td><?= $Bestellung["Artikel"]["Preis_pro_Stueck"]; ?></td></tr><tr><td>Menge:</td><td><?= $Bestellung["Artikel"]["Menge"]; ?></td></tr><tr><td>Bestellnummer:</td><td><?= $bestelldaten["bestellungId"]; ?></td></tr><tr><td>Reserviert für:</td><td><?= $bestelldaten["termin"]; ?> Tage</td></tr></table><?phpif ( $mode_str == "mode=schnittmarke-drucken" ){ ?><hr style="page-break-after:always"><?php} elseif ( $mode_str == "mode=drucken" ){ ?><hr><?php}//echo $bestell_id, $artikel_id;return true;}function setStatus( $bestell_id, $artikel_id, $statusText = "erledigt" ){$sql = "UPDATE artikel_to_Bestellung SET status='$statusText' WHERE Bestellung=$bestell_id AND artikel=$artikel_id";$res = mysql_query( $sql );if ( !$res ){mail( "tiefland@weban.de","Status konnte nicht geändert werden!", mysql_error(),"FROM: redaktion@$site" );}return $res;}function prepareMail( $settings, $kundendaten ){global $Bestellung;$bestelldaten = serialize( $Bestellung["Bestellung"] );$email = $kundendaten["E_Mail"];$kundendaten["Name"] = $kundendaten["Vorname"] . " " . $kundendaten["Name1"];$artikel_name = $Bestellung["Artikel"]["kurzbezeichnung"];$bestell_id = $Bestellung["Bestellung"]["bestellungId"];$artikel_id = $Bestellung["Artikel"]["artikel"];$artikel_preis = $Bestellung["Artikel"]["Preis_pro_Stueck"];$artikel_menge = $Bestellung["Artikel"]["Menge"];static $ind = 0;$mailSubject = $settings[12];$mailText = $settings[13];$mailUserData = $settings[14];$mailEnd = $settings[15];$kundendaten = serialize( $kundendaten );$mailText .= "\n" . $mailUserData . "\n" . $mailEnd; ?><tr><td>Kunden-Email:</td><td><input type="text" name="daten[<?= $ind; ?>][email]" value="<?= $email; ?>" size="65"></td></tr><tr><td>Betreff:</td><td><input type="text" name="daten[<?= $ind; ?>][mailSubject]" value="<?= $mailSubject; ?>" size="65"></td></tr><tr><td>Text:</td><td><textarea cols="50" rows="20" name="daten[<?= $ind; ?>][mailText]"><?= $mailText; ?></textarea></td></tr><tr><td>Status:</td><td><?= getStati( $ind ); ?></td></tr><tr><td>Abholdatum:</td><td><input type="text" name="daten[<?= $ind; ?>][datum]" value="<?= date( "d.m.Y",strtotime( "5 days" ) ); ?>"></td></tr><tr><td colspan="2"><hr></td></tr><tr><td><input type="hidden" name="daten[<?= $ind; ?>][bestell_daten]" value='<?= $bestelldaten; ?>'><input type="hidden" name="daten[<?= $ind; ?>][artikel_id]" value="<?= $artikel_id; ?>"><input type="hidden" name="daten[<?= $ind; ?>][artikel_name]" value="<?= $artikel_name; ?>"><input type="hidden" name="daten[<?= $ind; ?>][kunden_daten]" value='<?= $kundendaten; ?>'><input type="hidden" name="daten[<?= $ind; ?>][artikel_preis]" value="<?= $artikel_preis; ?>"><input type="hidden" name="daten[<?= $ind; ?>][artikel_menge]" value="<?= $artikel_menge; ?>"></td></tr><?php$ind++;}function getStati( $ind ){$cmd_buttons = array( 'offen', 'in Bearbeitung', 'reserviert','erledigt', 'abgeschlossen' ); ?><select name="daten[<?= $ind; ?>][status]"><?phpforeach ( $cmd_buttons as $id => $status ){$selected = '';if ( $id == 1 ){$selected = 'selected="selected"';} ?><option value="<?= $status; ?>" <?= $selected; ?>><?= $status; ?></option><?php} ?></select><?php}function prepareVerzMail( $settings, $kundendaten ){global $Bestellung;$bestelldaten = serialize( $Bestellung["Bestellung"] );$email = $kundendaten["E_Mail"];$kundendaten["Name"] = $kundendaten["Vorname"] . " " . $kundendaten["Name1"];$artikel_name = $Bestellung["Artikel"]["kurzbezeichnung"];$bestell_id = $Bestellung["Bestellung"]["bestellungId"];$artikel_id = $Bestellung["Artikel"]["artikel"];$artikel_preis = $Bestellung["Artikel"]["Preis_pro_Stueck"];$artikel_menge = $Bestellung["Artikel"]["Menge"];static $ind = 0;$mailSubject = $settings[64];$mailText = $settings[65];$kundendaten = serialize( $kundendaten ); ?><tr><td>Kunden-Email:</td><td><input type="text" name="daten[<?= $ind; ?>][email]" value="<?= $email; ?>" size="65"></td></tr><tr><td>Betreff:</td><td><input type="text" name="daten[<?= $ind; ?>][mailSubject]" value="<?= $mailSubject; ?>" size="65"></td></tr><tr><td>Text:</td><td><textarea cols="50" rows="20" name="daten[<?= $ind; ?>][mailText]"><?= $mailText; ?></textarea></td></tr><tr><td>Status:</td><td><?= getStati( $ind ); ?></td></tr><tr><td colspan="2"><hr></td></tr><tr><td><input type="hidden" name="daten[<?= $ind; ?>][bestell_daten]" value='<?= $bestelldaten; ?>'><input type="hidden" name="daten[<?= $ind; ?>][artikel_id]" value="<?= $artikel_id; ?>"><input type="hidden" name="daten[<?= $ind; ?>][artikel_name]" value="<?= $artikel_name; ?>"><input type="hidden" name="daten[<?= $ind; ?>][kunden_daten]" value='<?= $kundendaten; ?>'><input type="hidden" name="daten[<?= $ind; ?>][artikel_preis]" value="<?= $artikel_preis; ?>"><input type="hidden" name="daten[<?= $ind; ?>][artikel_menge]" value="<?= $artikel_menge; ?>"></td></tr><?php$ind++;}function getPDFLN( $bestell_id, $artikel_id, $art ){$f_name = $bestell_id . "_" . $artikel_id . "_" . $art;$sql = "SELECT MAX(dokument) AS dokument FROM WHERE dokument LIKE '$f_name%'";$res = mysql_query( $sql );if ( $res ){if ( mysql_num_rows( $res ) ){$row = mysql_fetch_assoc( $res );$dokument = substr( $row["dokument"], 0, strlen( $row["dokument"] ) -4 );$dokument = explode( "_", $dokument );$ln = substr( $dokument[count( $dokument ) - 1], 1 );$ln++;}else{$ln = 1;}}else{$ln = 1;}return $ln;} ?>