Secure->GetGET("id"); $sid = $app->Secure->GetGET("sid"); if($sid > 0) $id = $sid; // alle artikel die ein Kunde kaufen kann mit preisen netto brutto $cmd = $app->Secure->GetGET("smodule"); $cmd = strtolower($_objekt); // headings $heading = array('','','','Titel', 'Stichwort', 'Version','Größe', 'Ersteller','Version','Datum','Menü'); $width = array('1%','1%','10','40%', '15%', '5%','10%','15%', '10%', '10%','15%', '10%','5%'); $findcols = array('open','d.id','d.id','d.titel', 's.subjekt', 'v.version','v.size', 'v.ersteller','v.bemerkung','v.datum', 's.id'); $searchsql = array('d.titel', 's.subjekt', 'v.version','v.size', 'v.ersteller','v.bemerkung','v.dateiname'); //$menu = "
Conf->WFconf['defaulttheme']}/images/edit.svg\" border=\"0\"> Conf->WFconf['defaulttheme']}/images/download.svg\" border=\"0\"> Conf->WFconf['defaulttheme']}/images/delete.svg\" border=\"0\" >
"; $menu = "
Conf->WFconf['defaulttheme']}/images/download.svg\" border=\"0\"> Conf->WFconf['defaulttheme']}/images/delete.svg\" border=\"0\" >
"; $menucol = 10; $alignright=array(6,7); if(!function_exists('imagejpeg')) { $img = "'Conf->WFconf['defaulttheme']}/images/icon_img_error.png title=\"Keine GD-Erweiterung installiert\" />'"; }else{ $img = "concat('')"; } // SQL statement $sql = "SELECT SQL_CALC_FOUND_ROWS d.id,'Conf->WFconf['defaulttheme']}/images/details_open.png class=details>' as open,concat(''), $img, if(d.titel!='',CONCAT(d.titel,'
',v.dateiname,''),v.dateiname), s.subjekt, v.version, if(v.size!='',if(v.size > 1024*1024,CONCAT(ROUND(v.size/1024/1024,2),' MB'),CONCAT(ROUND(v.size/1024,2),' KB')),''), v.ersteller, v.bemerkung, DATE_FORMAT(v.datum, '%d.%m.%Y'), d.id FROM datei d LEFT JOIN datei_stichwoerter s ON d.id=s.datei LEFT JOIN datei_version v ON v.datei=d.id "; parse_str(parse_url($_SERVER['HTTP_REFERER'], PHP_URL_QUERY), $queries); switch($queries['module']) { case "adresse": $objekt="adressen"; break; default: $objekt=$queries['module']; } //if(!ctype_alpha($objekt))$objekt=""; if(!preg_match('/[A-Za-z_]/', $objekt))$objekt=""; $parameter=$id; $moreinfo = true; $moreinfomodule = 'dateien'; // fester filter $where = "s.objekt LIKE '$_objekt' AND s.parameter='$parameter' AND d.geloescht=0"; $count = "SELECT COUNT(d.id) FROM datei d LEFT JOIN datei_stichwoerter s ON d.id=s.datei LEFT JOIN datei_version v ON v.datei=d.id WHERE $where"; } switch ($name) { case "dateien_list": $allowed['dateien_list'] = array('list'); $heading = array('ID','Titel', 'Beschreibung', 'Verknüpfung', 'Geloescht', 'Logdatei', 'Menü'); $width = array('10%'); // Fill out manually later $findcols = array('d.id','d.titel', 'd.beschreibung', 'd.nummer', 'd.geloescht', 'd.logdatei'); $searchsql = array('d.titel', 'd.beschreibung', 'd.nummer', 'd.geloescht', 'd.logdatei'); $defaultorder = 1; $defaultorderdesc = 0; $menu = "
" . "Conf->WFconf['defaulttheme']}/images/edit.svg\" border=\"0\">
"; $sql = "SELECT SQL_CALC_FOUND_ROWS d.id, d.id, d.titel, d.beschreibung, GROUP_CONCAT(ds.objekt SEPARATOR ', '), d.geloescht, d.logdatei, d.id FROM datei d LEFT join datei_stichwoerter ds ON ds.datei = d.id"; $where = "1"; $count = "SELECT count(DISTINCT id) FROM datei WHERE $where"; $groupby = " GROUP BY d.id "; break; } $erg = []; foreach($erlaubtevars as $k => $v) { if(isset($$v)) { $erg[$v] = $$v; } } return $erg; } function __construct($app, $intern = false) { //parent::GenDateien($app); $this->app=$app; if($intern) { return; } $this->id = $this->app->Secure->GetGET("id"); $this->app->Tpl->Set('ID', $this->id ); $this->app->ActionHandlerInit($this); $this->app->ActionHandler("create","DateienCreate"); $this->app->ActionHandler("edit","DateienEdit"); $this->app->ActionHandler("list","datei_list"); $this->app->ActionHandler("archiv","DateienArchiv"); $this->app->ActionHandler("artikel","DateienArtikel"); $this->app->ActionHandler("send","DateienSend"); $this->app->ActionHandler("delete","DateienDelete"); $this->app->ActionHandler("zahlung","DateienZahlung"); $this->app->ActionHandler("protokoll","DateienProtokoll"); $this->app->ActionHandler("abschicken","DateienAbschicken"); $this->app->ActionHandler("freigabe","DateienFreigabe"); $this->app->ActionHandler("delete","DateienDelete"); $this->app->ActionHandler("listfreigegebene","DateienListFreigegebene"); $this->app->ActionHandler("kundeuebernehmen","DateienKundeuebernehmen"); $this->app->ActionHandler("versand","DateienVersand"); $this->app->ActionHandler("lieferadresseneu","DateienLieferadresseNeu"); $this->app->ActionHandler("download","DateienDownload"); $this->app->ActionHandler("minidetail","DateienMinidetail"); $this->app->ActionHandler("lieferadresseauswahl","DateienLieferadresseAuswahl"); $this->app->ActionHandler("popup","DateienPopup"); $this->app->ActionHandlerListen($app); } function DateienPopup() { $this->app->BuildNavigation = false; $this->app->PopupJS = true; $typ = $this->app->Secure->GetGET('typ'); $typid = $this->app->Secure->GetGET('typid'); if($this->app->Secure->GetGET('cmd')==='getanz') { echo json_encode(array('anz'=>$this->app->DB->Select("SELECT COUNT(d.id) FROM datei d LEFT JOIN datei_stichwoerter s ON d.id=s.datei LEFT JOIN datei_version v ON v.datei=d.id WHERE s.objekt LIKE '$typ' AND s.parameter='$typid' AND d.geloescht=0"))); $this->app->ExitXentral(); } $this->app->YUI->TableSearch('TAB1', "dateien_popup_".$typ, "show","","",basename(__FILE__), __CLASS__); $parameter = array('module'=>$typ,'action'=>'popup','popup'=>true); if(is_numeric($typid)) { $id = $typid; }else{ $id = ''; $parameter['idelement'] = $typid; } $this->app->YUI->DateiUpload('PAGE',$typ,$id,$parameter); } function DateienMinidetail() { $id = (int)$this->app->Secure->GetGET('id'); echo "

Beschreibung:

"; echo nl2br($this->app->DB->Select("SELECT beschreibung FROM datei WHERE id = '$id' LIMIT 1")); $this->app->ExitXentral(); } function DateienHauptMenu() { $this->app->erp->Headlines('Dateien'); } function datei_list() { $this->app->erp->MenuEintrag("index.php?module=dateien&action=list", "Übersicht"); $this->app->erp->MenuEintrag("index.php?module=dateien&action=create", "Neu anlegen"); $this->app->erp->MenuEintrag("index.php", "Zurück"); $this->app->YUI->TableSearch('TAB1', 'dateien_list', "show", "", "", basename(__FILE__), __CLASS__); $this->app->Tpl->Parse('PAGE', "dateien_list.tpl"); } function DateienDownload() { $typ = $this->app->Secure->GetGET('typ'); $id = (int)$this->app->Secure->GetGET('id'); $erlaubt = false; if($typ && $id) { switch($typ) { case "bestellung": case "angebot": case "lieferschein": case "rechnung": case "gutschrift": case "auftrag": case "arbeitsnachweis": case "brieffax": if($this->app->erp->RechteVorhanden($typ,'edit'))$erlaubt = true; break; case "brieffax": if($this->app->erp->RechteVorhanden('adresse','brief'))$erlaubt = true; $typ = "dokument"; break; } if($erlaubt) { $dateianhang = $this->app->DB->SelectArr("SELECT ds.id, ds.datei, d.titel FROM datei_stichwoerter ds INNER JOIN datei d on ds.datei = d.id where d.geloescht <> 1 AND ds.datei = '$id' AND objekt like '$typ' LIMIT 1"); if($dateianhang) { $dateianhang = reset($dateianhang); $this->app->erp->SendDatei($id); $this->app->ExitXentral(); } } else { echo "Fehlende Rechte"; $this->app->ExitXentral(); } } echo "Fehler"; $this->app->ExitXentral(); } function DateienMenu() { $id = $this->app->Secure->GetGET("id"); $this->app->Tpl->Add('TABS',"Dateien "); $this->app->Tpl->Add('TABS',"Artikel "); $this->app->Tpl->Add('TABS',"Zahlungsinformation "); $this->app->Tpl->Add('TABS',"Versand "); $this->app->Tpl->Add('TABS',"Abschicken "); $this->app->Tpl->Add('TABS',"Zurück zur Übersicht "); } function DateienCreate() { $id = $this->id; $this->DateienHauptMenu(); $speichern = $this->app->Secure->GetPOST("speichern"); if($speichern !='') { $titel= $this->app->Secure->GetPOST("titel"); $beschreibung= $this->app->Secure->GetPOST("beschreibung"); $nummer= $this->app->Secure->GetPOST("nummer"); $subjekt= $this->app->Secure->GetPOST("subjekt"); $objekt= $this->app->Secure->GetPOST("objekt"); $this->app->Tpl->Set('TITLE',$titel); $this->app->Tpl->Set('BESCHREIBUNG',$beschreibung); $this->app->Tpl->Set('NUMMER',$nummer); $this->app->Tpl->Set('SUBJEKT',$subjekt); $this->app->Tpl->Set('OBJEKT',$objekt); if($_FILES['upload']['tmp_name']=='') { $this->app->Tpl->Set('ERROR',"
Bitte wählen Sie eine Datei aus und laden Sie diese herauf!
"); } else { // nach /tmp //move_uploaded_file($_FILES['upload']['tmp_name'],"//".$_FILES['upload']['name'])){ $fileid = $this->app->erp->CreateDatei($_FILES['upload']['name'],$titel,$beschreibung,$nummer,$_FILES['upload']['tmp_name'],$this->app->User->GetName()); // stichwoerter hinzufuegen $this->app->erp->AddDateiStichwort($fileid,$subjekt,$objekt,$nummer); $this->app->Location->execute('index.php?module=dateien&action=edit&id='.$fileid); //loeschen von /tmp } } //$this->DateienMenu(); $this->app->Tpl->Set('HEADING',"Datei (Neu)"); $this->app->Tpl->Parse('PAGE',"datei_neu.tpl"); } function DateienEdit() { $id = $this->app->Secure->GetGET("id"); $this->DateienHauptMenu(); $this->app->YUI->DateiUploadNeuVersion('NEUEVERSION',$id); $speichern = $this->app->Secure->GetPOST("speichern"); if($speichern !="") { $titel= $this->app->Secure->GetPOST("titel"); $beschreibung= $this->app->Secure->GetPOST("beschreibung"); $this->app->DB->Update("UPDATE datei SET titel='$titel', beschreibung='$beschreibung' WHERE id='$id' LIMIT 1"); } $titel = $this->app->DB->Select("SELECT titel FROM datei WHERE id='$id' LIMIT 1"); $beschreibung = $this->app->DB->Select("SELECT beschreibung FROM datei WHERE id='$id' LIMIT 1"); $nummer= $this->app->DB->Select("SELECT nummer FROM datei WHERE id='$id' LIMIT 1"); $this->app->Tpl->Set('TITEL',$titel); $this->app->Tpl->Set('KURZUEBERSCHRIFT2',$titel); $this->app->Tpl->Set('BESCHREIBUNG',$beschreibung); $this->app->Tpl->Set('NUMMER',$nummer); $table = new EasyTable($this->app); $table->Query("SELECT version,dateiname,datum,ersteller,bemerkung,id FROM datei_version WHERE datei='$id'",0,""); /* $table->DisplayNew('VERSIONEN'," ", "");*/ $table->DisplayNew('VERSIONEN'," "); $table = new EasyTable($this->app); $table->Query("SELECT subjekt,objekt,parameter FROM datei_stichwoerter WHERE datei='$id'",0,""); $table->DisplayNew('STICHWOERTER',"Parameter","noAction"); $this->app->YUI->AutoComplete("auftrag_zuordnen","auftrag"); $this->app->YUI->AutoComplete("verbindlichkeit_zuordnen","verbindlichkeit"); $this->app->Tpl->Set('HEADING',"Datei (Bearbeiten)"); $this->app->Tpl->Parse('PAGE',"datei.tpl"); } function DateienSend() { $fid = $this->app->Secure->GetGET('fid'); $id = $this->app->Secure->GetGET('id'); $this->app->erp->SendDatei($id,$fid); $this->app->ExitXentral(); } function DateienDelete() { $fid = $this->app->Secure->GetGET("fid"); $id = $this->app->Secure->GetGET("id"); $cmd = urldecode($this->app->Secure->GetGET("cmd")); $this->app->erp->RunHook('LayouttemplateAttachmentItemsDelete', 2, $id, $cmd); // Deletion of files removed, they only get marketd $this->app->DB->Update("UPDATE datei SET geloescht=1 WHERE id='$id'"); $refer = $_SERVER['HTTP_REFERER']; $this->app->Location->execute($refer); } function DateienProtokoll() { $this->app->Tpl->Set('PROTOKOLL',"pro tabelle"); $this->DateienMenu(); $this->app->Tpl->Set('HEADING',"Dateien (Protokoll)"); $this->app->Tpl->Parse('PAGE',"dateien_protokoll.tpl"); } }