// $Id: confedit.php 2009/02/10 14:41:30 hli Exp $ if (!isset($_SERVER['PHP_AUTH_USER'])) { Header("WWW-Authenticate: Basic realm='Configurations-Editor'"); Header("HTTP/1.0 401 Unauthorized"); echo "Sie müssen sich autentifizieren\n"; exit; } else { if (!$_POST) { //Je Shop ein Conf-File == Multishop if( isset($_GET["Shop"]) ) { $Shop = $_GET["Shop"]; } else { $Shop = ''; }; if ( $Shop != "" and file_exists ('conf'.$Shop.'.php') ) { require 'conf'.$Shop.'.php'; $out = "Konfiguration für Shop $Shop gelesen"; } else { //Singleshop oder noch kein Shop definiert require "conf.php"; $out = "Standard-Konfiguration gelesen"; } if ( $_SERVER['PHP_AUTH_USER']<>$ERPftpuser || $_SERVER['PHP_AUTH_PW']<>$ERPftppwd ) { Header("WWW-Authenticate: Basic realm='My Realm'"); Header("HTTP/1.0 401 Unauthorized"); echo "Sie müssen sich autentifizieren\n"; exit; } echo $out; } } include_once("error.php"); include_once("dblib.php"); $api = php_sapi_name(); if ( $api == 'cli' ) { echo "Nur im Browser benutzen\n"; exit(-1); }; $err = new error($api); $zeichen = array("","UTF-8","ISO-8859-1","ISO-8859-15","Windows-1252","ASCII"); function lager($sel,$db) { if (!$db) return ''; $sql = "select w.description as lager,b.description as platz,b.id from "; $sql .= "bin b left join warehouse w on w.id=b.warehouse_id "; $sql .= "order by b.warehouse_id,b.id"; $bin=$db->getall($sql); echo "\tkein Lagerbestand\n"; echo "\tGesamtbestand\n"; if ($bin) foreach ($bin as $row) { echo "\t".$row['lager']." ".$row['platz']."\n"; } } function unit($sel,$db) { if (!$db) return ''; $sql="select name from units order by sortkey"; $pgs=$db->getall($sql); if ($sel=='') $sel=$pgs[0]['name']; if ($pgs) foreach ($pgs as $row) { echo "\t".$row['name']."\n"; } } function pg($sel,$db) { if (!$db) return ''; $sql="select id,pricegroup from pricegroup"; $pgs=$db->getall($sql); echo "\tStandard VK\n"; if ($pgs) foreach ($pgs as $row) { echo "\t".$row['pricegroup']."\n"; } } function getTax($db) { $sql = "SELECT BG.id AS bugru,T.rate,TK.startdate,C.taxkey_id, "; $sql .= "(SELECT id FROM chart WHERE accno = T.taxnumber) AS tax_id, "; $sql .= "BG.income_accno_id_0,BG.expense_accno_id_0 "; $sql .= "FROM buchungsgruppen BG LEFT JOIN chart C ON BG.income_accno_id_0=C.id "; $sql .= "LEFT JOIN taxkeys TK ON TK.chart_id=C.id "; $sql .= "LEFT JOIN tax T ON T.id=TK.tax_id WHERE TK.startdate <= now()"; $rs = $db->getAll($sql); if ($rs) foreach ($rs as $row) { $nr = $row['bugru']; if (!$TAX[$nr]) { $data = array(); $data['startdate'] = $row['startdate']; $data['rate'] = $row['rate']*100.0; $TAX[$nr] = $data; } else if ($TAX[$nr]['startdate'] < $row['startdate']) { $TAX[$nr]["startdate"] = $row['startdate']; $TAX[$nr]["rate"] = $row['rate']*100.0; } } return $TAX; } function fputsA($f,$key,$var,$bg=false) { $lf="\n"; fputs($f,'$'.$key.'["ID"]=\''. $var['ID'].'\';'.$lf); fputs($f,'$'.$key.'["NR"]=\''. $var['NR'].'\';'.$lf); fputs($f,'$'.$key.'["Unit"]=\''. $var['Unit'].'\';'.$lf); fputs($f,'$'.$key.'["TXT"]=\''. $var['TXT'].'\';'.$lf); if ($bg) fputs($f,'$'.$key.'["BUGRU"]=\''. $var['BUGRU'].'\';'.$lf); if ($bg) fputs($f,'$'.$key.'["TAX"]=\''. $var['TAX'].'\';'.$lf); } if ( isset($_POST["ok"]) ) { foreach ($_POST as $key=>$val) { ${$key} = $val; } }; if ( empty($ERPport) ) $ERPport = '5432'; if ( empty($SHOPport) ) $SHOPport = '3306'; $ok=true; $dbP = new mydb($ERPhost,$ERPdbname,$ERPuser,$ERPpass,$ERPport,'pgsql',$err,$debug); if (!$dbP->db) { $ok=false; echo "Keine Verbindung zur ERP"; $dbP=false; unset($divStd['ID']); unset($divVerm['ID']); unset($minder['ID']); unset($versand['ID']); unset($nachn['ID']); unset($paypal['ID']); unset($treuhand['ID']); unset($ERPusr['ID']); } else { $tax = getTax($dbP); $sql="SELECT id,description,unit,buchungsgruppen_id FROM parts where partnumber = '%s'"; $rs=$dbP->getOne(sprintf($sql,$divStd['NR'])); $divStd['ID']=$rs['id']; $divStd['Unit']=$rs['unit']; $divStd['BUGRU']=$rs['buchungsgruppen_id']; $divStd['TAX']=$tax[$rs['buchungsgruppen_id']]['rate']; $divStd['TXT']=addslashes($rs['description']); $rs=$dbP->getOne(sprintf($sql,$divVerm['NR'])); $divVerm['ID']=$rs['id']; $divVerm['Unit']=$rs['unit']; $divVerm['BUGRU']=$rs['buchungsgruppen_id']; $divVerm['TAX']=$tax[$rs['buchungsgruppen_id']]['rate']; $divVerm['TXT']=addslashes($rs['description']); $rs=$dbP->getOne(sprintf($sql,$versandS['NR'])); $versandS['ID']=$rs['id']; $versandS['Unit']=$rs['unit']; $versandS['BUGRU']=$rs['buchungsgruppen_id']; $versandS['TAX']=$tax[$rs['buchungsgruppen_id']]['rate']; if ($versandS['TXT'] == '') $versandS['TXT']=addslashes($rs['description']); $rs=$dbP->getOne(sprintf($sql,$versandV['NR'])); $versandV['ID']=$rs['id']; $versandV['Unit']=$rs['unit']; $versandV['BUGRU']=$rs['buchungsgruppen_id']; $versandV['TAX']=$tax[$rs['buchungsgruppen_id']]['rate']; if ($versandV['TXT'] == '') $versandV['TXT']=addslashes($rs['description']); $rs=$dbP->getOne(sprintf($sql,$nachn['NR'])); $nachn['ID']=$rs['id']; $nachn['Unit']=$rs['unit']; $nachn['BUGRU']=$rs['buchungsgruppen_id']; $nachn['TAX']=$tax[$rs['buchungsgruppen_id']]['rate']; if ($nachn['TXT'] == '') $nachn['TXT']=addslashes($rs['description']); $rs=$dbP->getOne(sprintf($sql,$minder['NR'])); $minder['ID']=$rs['id']; $minder['Unit']=$rs['unit']; $minder['BUGRU']=$rs['buchungsgruppen_id']; $minder['TAX']=$tax[$rs['buchungsgruppen_id']]['rate']; if ($minder['TXT'] == '') $minder['TXT']=addslashes($rs['description']); $rs=$dbP->getOne(sprintf($sql,$paypal['NR'])); $paypal['ID']=$rs['id']; $paypal['Unit']=$rs['unit']; $paypal['BUGRU']=$rs['buchungsgruppen_id']; $paypal['TAX']=$tax[$rs['buchungsgruppen_id']]['rate']; if ($paypal['TXT'] == '') $paypal['TXT']=addslashes($rs['description']); $rs=$dbP->getOne(sprintf($sql,$treuhand['NR'])); $treuhand['ID']=$rs['id']; $treuhand['Unit']=$rs['unit']; $treuhand['BUGRU']=$rs['buchungsgruppen_id']; $treuhand['TAX']=$tax[$rs['buchungsgruppen_id']]['rate']; if ($treuhand['TXT'] == '') $treuhand['TXT']=addslashes($rs['description']); $rs=$dbP->getOne("select id from employee where login = '".$ERPusrName."'"); $ERPusrID=$rs['id']; } $dbM = new mydb($SHOPhost,$SHOPdbname,$SHOPuser,$SHOPpass,$SHOPport,'mysql',$err,$debug); if (!$dbM->db) { $ok=false; echo "Keine Verbindung zum Shop"; $dbM=false; }; if ( isset($_POST["ok"]) ) { $lf = "\n"; $f = @fopen('conf'.$Shop.'.php','w'); if ($f) { $v="1.5"; $d=date("Y/m/d H:i:s"); fputs($f,""); fclose($f); echo "Konfiguration conf$Shop.php gesichert."; } else { echo "Konfigurationsdatei (conf$Shop.php) konnte nicht geschrieben werden"; } } ?> DatenLx-ERPShop db-Host db-Port Database db-User Name db-User PWD Zeichensatz ".$code."\n"; }; ?> ".$code."\n"; }; ?> Preise > incl. 1)?"checked":'' ?>> excl. MwSt > incl. 1)?"checked":'' ?>> excl. MwSt User-ID > Image-Dir Platzhalterbild ohne Endung >nur bei fehlerhaftem Upload verwenden FTP-Host FTP-User FTP-User PWD Nr Diverse Std-MwSt > Nr Diverse Verm-MwSt > Nr Versand Std-MwSt > Text: = $versandS['TAX'] ?> Nr Versand Verm-MwSt > Text: = $versandV['TAX'] ?> Nr Paypal > Text: Nr Treuhand > Text: Nr Mindermenge > Text: Nr Nachname > Text: Std-Einheit unit($unit,$dbP); ?> Preisgruppe pg($pricegroup,$dbP); ?> Auftragsnummern durch > LxO 1)?"checked":'' ?>> Shop Kundennummern durch > LxO 1)?"checked":'' ?>> Shop Nummernerweiterung Auftrag Kunde Lagerbestand aus lager($lager,$dbP); ?> Langbeschreibung aus Shop übernehmen 2)?"checked":'' ?>>Ja >Nein LxO-Rechnungen sind Netto 2)?"checked":'' ?>>Ja >Nein Varianten sind eigene Nummern in Lx (-n) 2)?"checked":'' ?>>Ja >Nein Unbekannte Artikel beim Bestellimport anlegen 2)?"checked":'' ?>>Ja >Nein Logging ein> aus>