app=$app; if($intern) { return; } $this->app->ActionHandlerInit($this); $this->app->ActionHandler("create","Geschaeftsbrief_vorlagenCreate"); $this->app->ActionHandler("edit","Geschaeftsbrief_vorlagenEdit"); $this->app->ActionHandler("delete","Geschaeftsbrief_vorlagenDelete"); $this->app->ActionHandler("list","Geschaeftsbrief_vorlagenList"); $this->app->ActionHandler("dateien","Geschaeftsbrief_vorlagenDateien"); //$this->app->ActionHandler("copy", "Geschaeftsbrief_vorlagenCopy"); $this->app->ActionHandler("copyedit", "Geschaeftsbrief_vorlagenCopyEdit"); $this->app->ActionHandler("copysave", "Geschaeftsbrief_vorlagenCopySave"); $this->app->ActionHandlerListen($app); } function Geschaeftsbrief_vorlagenDelete() { $id = $this->app->Secure->GetGET("id"); if(is_numeric($id)) { $this->app->DB->Delete("DELETE FROM geschaeftsbrief_vorlagen WHERE id='$id'"); } $this->Geschaeftsbrief_vorlagenList(); } function Geschaeftsbrief_vorlagenCreate() { $this->Geschaeftsbrief_vorlagenMenu(); parent::Geschaeftsbrief_vorlagenCreate(); } function Geschaeftsbrief_vorlagenList() { $this->Geschaeftsbrief_vorlagenMenu(); //parent::Geschaeftsbrief_vorlagenList(); $this->app->YUI->TableSearch("TAB1","geschaeftsbrief_vorlagenlist"); $this->app->YUI->AutoComplete("editprojekt", "projektname", 1); //MIT EDITOR PASST FORMATIERUNG VOM TEXT NICHT MEHR $this->app->YUI->CkEditor("edittext","internal"); $sprachenOptions = $this->app->erp->GetSprachenSelect(); foreach($sprachenOptions as $k => $v)$this->app->Tpl->Add('SELSPRACHEN',''); $this->app->YUI->AutoComplete("projekt", "projektname", 1); $this->app->YUI->CkEditor("text", "internal"); $this->app->YUI->DateiPopup('DATEIENPOPUP','geschaeftsbrief_vorlagen','#e_id',array( 'openbuttontarget'=>'DATEIBUTTON' ,'frompopup'=>'editGeschaeftsbriefvorlage','afteropen'=>'AFTERPOPUPOPEN' )); $this->app->Tpl->Parse('PAGE', "geschaeftsbrief_vorlagen_list.tpl"); } function Geschaeftsbrief_vorlagenMenu() { $this->app->erp->Headlines('Dokumenten Vorlagen'); $this->app->erp->MenuEintrag("index.php?module=geschaeftsbrief_vorlagen&action=list","Übersicht"); $this->app->erp->MenuEintrag("Geschaeftsbrief_vorlagenEdit(0)","Neuer Eintrag"); if($this->app->Secure->GetGET("action")==="list"){ $this->app->erp->MenuEintrag("index.php?module=einstellungen&action=list", "Zurück zur Übersicht"); } else{ $this->app->erp->MenuEintrag("index.php?module=geschaeftsbrief_vorlagen&action=list", "Zurück zur Übersicht"); } } function Geschaeftsbrief_vorlagenPopup() { // $this->app->Tpl->Parse("PAGE","geschaeftsbrief_vorlagen_popup.tpl"); } /*function Geschaeftsbrief_vorlagenEdit() { $this->Geschaeftsbrief_vorlageMenu(); parent::Geschaeftsbrief_vorlagenEdit(); }*/ function Geschaeftsbrief_vorlagenEdit() { $this->Geschaeftsbrief_vorlageMenu(); if($this->app->Secure->GetGET('cmd')=='popupedit'){ $eid = (int)$this->app->Secure->GetPOST('id'); $data = $this->app->DB->SelectArr("SELECT id, sprache, betreff, text, subjekt, projekt FROM geschaeftsbrief_vorlagen WHERE id = '$eid' LIMIT 1"); if($data){ $data = reset($data); if($data['projekt'] > 0){ $projektname = $this->app->DB->Select("SELECT abkuerzung FROM projekt WHERE id = '".$data['projekt']."' LIMIT 1"); $data['projekt'] = $projektname; }else{ $data['projekt'] = ''; } }else{ $data['id'] = '0'; $data['sprache'] = 'deutsch'; $data['betreff'] = ''; $data['text'] = ''; $data['subjekt'] = ''; $data['projekt'] = ''; } echo json_encode($data); $this->app->ExitXentral(); } if($this->app->Secure->GetGET('cmd')==='popupsave'){ $eid = $this->app->Secure->GetPOST('eid'); $esprache = trim($this->app->Secure->GetPOST('esprache')); $ebetreff = trim($this->app->Secure->GetPOST('ebetreff')); $etext = trim($this->app->Secure->GetPOST('etext')); $esubjekt = trim($this->app->Secure->GetPOST('esubjekt')); $eprojekt = trim($this->app->Secure->GetPOST('eprojekt')); $error = ""; if($esubjekt == ""){ $error .= "Typf"."\n"; } if($eprojekt != ""){ $projektid = $this->app->DB->Select("SELECT id FROM projekt WHERE abkuerzung = '$eprojekt' LIMIT 1"); if($projektid != ""){ $eprojekt = $projektid; }else{ $error .= "Kein gültiges Projekt"."\n"; } }else{ $eprojekt = 0; } if($error == ''){ if($eid > 0){ $this->app->DB->Update("UPDATE geschaeftsbrief_vorlagen SET sprache = '$esprache', betreff = '$ebetreff', text = '$etext', subjekt = '$esubjekt', projekt = '$eprojekt' WHERE id = '$eid'"); echo json_encode(array('status'=>1)); $this->app->ExitXentral(); } $this->app->DB->Insert("INSERT INTO geschaeftsbrief_vorlagen (sprache, betreff, text, subjekt, projekt, firma) VALUES ('$esprache', '$ebetreff', '$etext', '$esubjekt', '$eprojekt', 1)"); echo json_encode(array('status'=>1)); $this->app->ExitXentral(); } echo json_encode(array('status'=>0,'statusText'=>$error)); $this->app->ExitXentral(); } $this->app->Tpl->Parse('PAGE',"geschaeftsbrief_vorlagen_popup.tpl"); } function Geschaeftsbrief_vorlageMenu() { $id = $this->app->Secure->GetGET("id"); $this->app->erp->MenuEintrag("index.php?module=geschaeftsbrief_vorlagen&action=edit&id=$id","Details"); $anzahldateien = $this->app->erp->AnzahlDateien("geschaeftsbrief_vorlagen",$id); if($anzahldateien > 0) { $anzahldateien = ' ('.$anzahldateien.')'; } else { $anzahldateien=''; } $this->app->erp->MenuEintrag("index.php?module=geschaeftsbrief_vorlagen&action=dateien&id=$id","Dateien".$anzahldateien); $this->app->erp->MenuEintrag("index.php?module=geschaeftsbrief_vorlagen&action=list","Zurück zur Übersicht"); } function Geschaeftsbrief_vorlagenDateien() { $id = $this->app->Secure->GetGET("id"); $subjekt = $this->app->DB->Select("SELECT subjekt FROM geschaeftsbrief_vorlagen WHERE id='$id' LIMIT 1"); $this->Geschaeftsbrief_vorlageMenu(); $this->app->Tpl->Add('UEBERSCHRIFT'," (Dateien)"); $this->app->YUI->DateiUpload('PAGE',"geschaeftsbrief_vorlagen",$id); } function Geschaeftsbrief_vorlagenCopyEdit() { //$id = (int)$this->app->Secure->GetGET('id'); if($this->app->Secure->GetGET('cmd')==='get'){ $id = (int)$this->app->Secure->GetPOST('id'); $data = $this->app->DB->SelectArr("SELECT id, subjekt, sprache, betreff, text, projekt FROM geschaeftsbrief_vorlagen WHERE id = '$id' LIMIT 1"); if($data){ $data = reset($data); if($data['projekt'] > 0){ $projektabkuerzung = $this->app->DB->Select("SELECT abkuerzung FROM projekt WHERE id = '".$data['projekt']."' LIMIT 1"); $data['projekt'] = $projektabkuerzung; }else{ $data['projekt'] = "Standard Vorlage / ohne Projekt"; } } if(!$this->app->erp->isHTML($data['text'])){ $data['text'] = nl2br($data['text']); } echo json_encode($data); $this->app->ExitXentral(); } } function Geschaeftsbrief_vorlagenCopySave(){ $id = (int)$this->app->Secure->GetPOST('id'); $subjekt = $this->app->Secure->GetPOST('subjekt'); $sprache = $this->app->Secure->GetPOST('sprache'); $projekt = $this->app->Secure->GetPOST('projekt'); $betreff = $this->app->Secure->GetPOST('betreff'); $text = $this->app->Secure->GetPOST('text'); $dateien = $this->app->Secure->GetPOST('dateien'); $error = ''; if($id == '' || $id <= 0){ $id = 0; } if($dateien == '' || $dateien <= 0){ $dateien = 0; } if($subjekt == ''){ $error .= "Typf"."\n"; } if($error != ''){ echo json_encode(array('status'=>0,'statusText'=>$error)); $this->app->ExitXentral(); } $data = array($id, $sprache, $projekt, $betreff, $text, $dateien, $subjekt); $this->Geschaeftsbrief_vorlagenCopy($data, true); echo json_encode(array('status'=>1)); $this->app->ExitXentral(); } function Geschaeftsbrief_vorlagenCopy($data = null, $return = false) { $id = $data[0]; $sprache = $data[1]; $projekt = $data[2]; $betreff = $data[3]; $text = $data[4]; $dateien = $data[5]; $subjekt = $data[6]; $this->app->DB->MysqlCopyRow("geschaeftsbrief_vorlagen","id",$id); $idnew = $this->app->DB->GetInsertID(); if($sprache == "DE"){ $sprache = "deutsch"; }elseif($sprache == "EN"){ $sprache = "englisch"; } if($projekt != ""){ $projektid = $this->app->DB->Select("SELECT id FROM projekt WHERE abkuerzung = '$projekt' LIMIT 1"); }else{ $projektid = 0; } $this->app->DB->Update("UPDATE geschaeftsbrief_vorlagen SET sprache = '$sprache', betreff = '$betreff', text = '$text', subjekt = '$subjekt', projekt = '$projektid' WHERE id = '$idnew' LIMIT 1"); if($dateien == 1){ $dateien = $this->app->DB->SelectArr("SELECT DISTINCT datei FROM datei_stichwoerter WHERE parameter = '$id' AND objekt = 'geschaeftsbrief_vorlagen'"); $datei_stichwoerter = $this->app->DB->SelectArr("SELECT id,datei FROM datei_stichwoerter WHERE parameter = '$id' AND objekt = 'geschaeftsbrief_vorlagen'"); if($dateien){ foreach($dateien as $datei){ $titel = $this->app->DB->Select("SELECT titel FROM datei WHERE id='".$datei['datei']."' LIMIT 1"); $beschreibung = $this->app->DB->Select("SELECT beschreibung FROM datei WHERE id='".$datei['datei']."' LIMIT 1"); $nummer = $this->app->DB->Select("SELECT nummer FROM datei WHERE id='".$datei['datei']."' LIMIT 1"); $name = $this->app->DB->Select("SELECT dateiname FROM datei_version WHERE datei='".$this->app->DB->real_escape_string($datei['datei'])."' ORDER by version DESC LIMIT 1"); $ersteller = $this->app->User->GetName(); $tmpnewdateiid = $this->app->erp->CreateDatei($name,$titel,$beschreibung,$nummer,$this->app->erp->GetDateiPfad($datei['datei']),$ersteller); $datei_mapping[$datei['datei']] = $tmpnewdateiid; } } if($datei_stichwoerter){ foreach($datei_stichwoerter as $datei){ $neuesstichwort = $this->app->DB->MysqlCopyRow("datei_stichwoerter", "id", $datei['id']); $newdatei = $datei_mapping[$datei['datei']]; $this->app->DB->Update("UPDATE datei_stichwoerter SET datei='$newdatei', parameter = '$idnew', objekt = 'geschaeftsbrief_vorlagen' WHERE id = '$neuesstichwort' LIMIT 1"); } } } if($return) { return $idnew; } $msg = $this->app->erp->base64_url_encode("
Sie befinden sich in der neuen Kopie der Vorlage.
"); $this->app->Location->execute("index.php?module=geschaeftsbrief_vorlagen&action=edit&msg=$msg&id=".$idnew); } }