/* *** SETTINGS *** */
//=================================================
// pfad zum root
$baseToRoot="..";
// pfad zu newsletter-daten
$baseToNL="../newsletter";
$baseDatenName="Newsletter";
// pfad zu vorlagen
//$basePubl="vorlagen";
$basePublName="Vorlagen";
// temp-verzeichnis
$mdXtempFolder="temp";
// pfad zu email-listen,email-listen-backup, sendeprotokolle
$baseToFI="_data";
// mehrere sprachen?
$changablelanguage=false;
// login zum NLSystem benötigt?
$requirelogin=true;
// NLSystem-Logins protokollieren?
$mdXwriteLogStats=true;
// hilfe seite
$mdXhelpSiteURL="http://www.meedix.de/products/newsletter/";
// dateiendung für newsletter-dateien
$mdXcmsExtension="nl";
// was wird als creator in jede datei eingefügt
$mdXcmsContentFileText="content newsletter-system translake.org / developed by meedix media / www.meedix.net";
// effekte beim überfahren von submit-buttons
$mouseOverElement="onmouseover=\"this.style.cursor='pointer';\"";
$mouseOverMenuElement="onmouseover=\"this.style.cursor='pointer';this.className='onclickbuttonover';\" onmouseout=\"this.className='onclickbutton';\"";
//chmod neue daten
$mdXchmod=0755;
// absolute oder relative pfade im editor?
$editorPfadeAbsolut=true;
// maximale upload-dateigröße (mb, auch als 2.5)
$maxuploadsize="2";
// standard-tabellenaussehen
$tablesettings="class='inhalt' border='0' cellspacing='0' cellpadding='0'";
// werbung am ende des newsletters
$mdXsendPromoHtml="Diese Nachricht wurde mit Hilfe des Newslettersystems von meedix media erstellt.";
$mdXsendPromoText="Diese Nachricht wurde mit Hilfe des Newslettersystems von meedix media erstellt. www.meedix.de";
// ALTE CMS-SETTINGS ======================================================================
// beim starten auf ordnerexistenz prüfen
$check4foldersonstart=true;
// standardwert für bildbreite
$Xbildbreite=200;
// standardwert für bildqualität
$Xbildquality=80;
// dürfen bilder hochgeladen werden
$Ximageupload=true;
// bilder auf dem server verwenden
$Xserverpic=true;
// dürfen dateien hochgeladen werden
$Xfileupload=true;
// vorspann nach x zeichen kürzen (standardwert)?
$Xzeichenkuerzen=200;
// darf alles hochgeladen werden?
$allowAllFiles=false;
// erlaubte bildtypen
$allowedshort=array("jpg","jpeg","gif","png","bmp");
$allowedbild["jpg"] = "image/jpeg";
$allowedbild["jpeg"] = "image/jpeg";
$allowedbild["jpe"] = "image/jpeg";
$allowedbild["gif"] = "image/gif";
$allowedbild["png"] = "image/png";
$allowedbild2["jpg"] = "image/pjpeg";
$allowedbild2["jpeg"]= "image/pjpeg";
$allowedbild2["jpe"] = "image/pjpeg";
$allowedbild2["png"] = "image/x-png";
$allowedbild2["bmp"] = "image/bmp";
// erlaubte dateitypen, zusätzlich zu den bildern
$allowedfile["tif"] = "image/tif";
$allowedfile["tiff"]= "image/tiff";
$allowedfile["html"]= "text/html";
$allowedfile["htm"] = "text/html";
$allowedfile["php"] = "application/octet-stream";
$allowedfile["css"] = "text/css";
$allowedfile["xml"] = "text/xml";
$allowedfile["js"] = "text/javascript";
$allowedfile["gz"] = "application/gzip";
$allowedfile["zip"] = "application/zip";
$allowedfile["tar"] = "application/x-tar";
$allowedfile["txt"] = "text/plain";
$allowedfile["doc"] = "application/msword";
$allowedfile["rtf"] = "application/rtf";
$allowedfile["pdf"] = "application/pdf";
$allowedfile["pot"] = "application/mspowerpoint";
$allowedfile["pps"] = "application/mspowerpoint";
$allowedfile["ppt"] = "application/mspowerpoint";
$allowedfile["ppz"] = "application/mspowerpoint";
$allowedfile["xls"] = "application/x-excel";
$allowedfile["csv"] = "text/comma-separated-values";
$allowedfile["avi"] = "video/x-msvideo";
$allowedfile["qt"] = "video/quicktime";
$allowedfile["mov"] = "video/quicktime";
$allowedfile["mpeg"]= "video/mpeg";
$allowedfile["mpg"] = "video/mpeg";
$allowedfile["flv"] = "video/x-flv";
$allowedfile["swf"] = "application/x-shockwave-flash";
$allowedfile["wav"] = "audio/x-wav";
$allowedfile["mp3"] = "audio/mpeg";
$allowedfile["mp3"] = "audio/x-mp3";
// farben
$mdXstandardVfarbe="#000000"; // inhalt: vordergrund
$mdXstandardHfarbe="#ffffff"; // inhalt: hintergrund
$mdXcolorpalette="Array(
/* standard colors (8 x 5) */
'800000','8b4513','006400','2f4f4f','000080','4b0082','800080','000000',
'ff0000','daa520','6b8e23','708090','0000cd','483d8b','c71585','696969',
'ff4500','ffa500','808000','4682b4','1e90ff','9400d3','ff1493','a9a9a9',
'ff6347','ffd700','32cd32','87ceeb','00bfff','9370db','ff69b4','dcdcdc',
'ffdab9','ffffe0','98fb98','e0ffff','87cefa','e6e6fa','dda0dd','ffffff',
/* custom colors (max 8) */
'e15523','ffe12d','c3b4d7','00a2c2'
)";
//ladebalken
//$mdXladeBalken="style/ladebalken.gif";
$mdXladeBalken="
";
?>
/*** FUNKTIONEN ***/
//************************************************************************
//xml-datei auslesen
function getxmldatafromfile($datei) {
$fp=@fopen($datei, "r");
$data=@fread($fp, filesize($datei));
@fclose($fp);
$data=stripslashes(html_entity_decode($data));
$xml_parser = xml_parser_create ();
xml_parse_into_struct ($xml_parser, $data, $vals, $index);
xml_parser_free ($xml_parser);
$params = array();
$ptrs[0] = & $params;
foreach ($vals as $xml_elem) {
$level = $xml_elem['level'] - 1;
switch ($xml_elem['type']) {
case 'open':
$tag_or_id = (array_key_exists ('attributes', $xml_elem)) ? $xml_elem['attributes']['ID'] : $xml_elem['tag'];
$ptrs[$level][$tag_or_id] = array ();
$ptrs[$level+1] = & $ptrs[$level][$tag_or_id];
break;
case 'complete':
$ptrs[$level][$xml_elem['tag']] = (isset ($xml_elem['value'])) ? $xml_elem['value'] : '';
break;
}
}
return($params);
}
//************************************************************************
// ordnerinhalte auslesen
function ordnerLesen($ziel) {
$filelist=array();
$daten=@opendir($ziel);
if ($daten) {
while (false !== ($file=@readdir($daten))) {
if ($file !=="." and $file !== "..") {
$xname = $ziel."/".$file;
if (is_dir($xname)) {
$filelist[]=$xname;
$unterverz = ordnerLesen($xname);
foreach ($unterverz as $item) { $filelist[] = $item; }
}
}
}
}
@closedir($daten);
asort($filelist);
return $filelist;
}
//************************************************************************
// dateiliste erstellen
function DateiListeErstellen($ziel) {
$filelist=array();
$daten=@opendir($ziel);
if ($daten) {
while (false !== ($file=@readdir($daten))) {
if ($file !=="." and $file !== "..") {
if (is_dir($ziel."/".$file)) {
$filelist[]="$file ";
$unterverz = DateiListeErstellen($ziel."/".$file);
foreach ($unterverz as $item) { $filelist[] = $item; }
}
else { $filelist[]=" ".$file; }
}
}
}
@closedir($daten);
return $filelist;
}
// dateiliste erstellen (ohne unterordner!)
function FileListeErstellen($ziel) {
$filelist=array();
$daten=@opendir($ziel);
if ($daten) {
while (false!==($file=@readdir($daten))) {
if ($file !=="." and $file !== "..") {
if (!is_dir($ziel."/".$file)) { $filelist[]=" ".$file; }
}
}
}
@closedir($daten);
return $filelist;
}
// ECHTE dateiliste erstellen (ohne unterordner!)
function DateiListeArray($ziel) {
$filelist=array();
$daten=@opendir($ziel);
if ($daten) {
while (false!==($file=@readdir($daten))) {
if ($file !=="." and $file !== "..") {
if (!is_dir($ziel."/".$file)) { $filelist[]=$file; }
}
}
}
@closedir($daten);
return $filelist;
}
//************************************************************************
// dateiendung ermitteln
function getExt($input) {
$ext_start=strrpos($input,".");
$ext_length=strlen($input) - $ext_start;
$ext=strtolower(substr($input, ($ext_start + 1), $ext_length));
return $ext;
}
//************************************************************************
// dateinamen aufteilen und in array zurückgeben
function splitfilename($input) {
$xExt_start = strrpos($input,".");
$xExt_length = strlen($input) - $xExt_start;
$namearray=array();
$namearray[0]=substr($input,0,$xExt_start); //dateiname
$namearray[1]=strtolower(substr($input,($xExt_start + 1),$xExt_length)); //dateiendung
return($namearray);
}
//************************************************************************
// ordnernamen prüfen und ggf. neuen gültigen namen zurückgeben
// $floskel = Zwischenerweiterung für neuen Dateinamen, z.B. "_kopie"
function safeFolderName($inputdir,$floskel) {
if(!is_dir($inputdir)) { $outputname=$inputdir; }
else {
if(!is_dir($inputdir.$floskel)) { $outputname=$inputdir.$floskel; }
else {
$scout=1;
$outputname=$inputdir.$floskel.$scout;
while(is_dir($outputname)) { $outputname=$inputdir.$floskel.$scout++; }
}
}
return($outputname);
}
//************************************************************************
// dateinamen prüfen und ggf. neuen gültigen namen zurückgeben
// $floskel = Zwischenerweiterung für neuen Dateinamen, z.B. "_kopie"
function safeFileName($inputdir,$inputname,$floskel) {
if(!file_exists($inputdir."/".$inputname)) { $outputname=$inputname; }
else {
$fname=splitfilename($inputname); // funktion
if(!file_exists($inputdir."/".$fname[0].$floskel.".".$fname[1])) {
$outputname=$fname[0].$floskel.".".$fname[1];
}
else {
$scout=1;
$outputname=$fname[0].$floskel.$scout.".".$fname[1];
while(file_exists($inputdir."/".$outputname)) {
$outputname=$fname[0].$floskel.$scout++.".".$fname[1];
}
}
}
return($outputname);
}
//************************************************************************
// dateityp prüfen
function checkFileType ($type, $ext) {
global $allowedfile, $allowAllFiles;
if ($allowAllFiles == true) { return true; }
else {
$ext=strtolower($ext);
foreach ($allowedfile as $currentext => $currenttype) {
if ($ext == strtolower($currentext) && $type == strtolower($currenttype)) {
return true;
break;
}
}
}
}
//************************************************************************
// bildtyp prüfen
function checkBildType ($type, $ext) { // bildtyp checken
global $allowedbild, $allowedbild2;
$ext=strtolower($ext);
foreach ($allowedbild as $currentext => $currenttype) {
if ($ext == strtolower($currentext) && $type == strtolower($currenttype)) {
return true;
break;
}
}
foreach ($allowedbild2 as $currentext => $currenttype) {
if ($ext == strtolower($currentext) && $type == strtolower($currenttype)) {
return true;
break;
}
}
}
//************************************************************************
// alle dateien eines ordners verschieben
function filesmove($inputFolder, $targetFolder) {
$movemessage=null;
global $movemessage;
global $mdXspecialFiles;
if(!is_dir($targetFolder)) { @mkdir($targetFolder); }
$browse=@opendir($inputFolder);
while ($file=@readdir($browse)) {
if (is_dir($inputFolder."/".$file) && $file!="." && $file!="..") { continue; }
else {
if ($file!="." && $file!="..") {
if(!in_array($inputFolder."/".$file, $mdXspecialFiles)) {
if(file_exists($targetFolder."/".$file)) { $filenamee=safeFileName($targetFolder,$file,""); }
else { $filenamee=$file; }
if (@copy($inputFolder."/".$file, $targetFolder."/".$filenamee)) {
if(file_exists($targetFolder."/".$filenamee)) {
@unlink($inputFolder."/".$file);
$movemessage.="Datei verschoben: $file ";
}
}
else { $movemessage.="Datei konnte nicht verschoben werden: $file "; }
}
else { $movemessage.="Datei konnte nicht verschoben werden, da Sie zum Funktionieren der Homepage benötigt wird: $file "; }
}
}
}
@closedir($browse);
unset($browse,$inputFolder,$file);
return true;
}
//************************************************************************
// alle dateien in einem ordner endgültig löschen
function filesdelete($inputFolder) {
$killmessage=null;
global $killmessage;
$browse=@opendir($inputFolder);
while ($file=@readdir($browse)) {
if (is_dir($inputFolder."/".$file) && $file!="." && $file!="..") { continue; }
else {
if ($file!="." && $file!="..") {
if (@unlink($inputFolder."/".$file)) {
$killmessage.="Datei gelöscht: $file ";
}
else {
$killmessage.="Datei konnte nicht gelöscht werden: $file ";
}
}
}
}
@closedir($browse);
unset($browse,$inputFolder,$file);
return true;
}
//************************************************************************
// daten und ordner verschieben
function foldermove($inputFolder, $targetFolder) {
$movemessage=null;
global $movemessage;
if(!is_dir($targetFolder)) {
@mkdir($targetFolder);
//$movemessage.="Verzeichnis erstellt: $targetFolder ";
}
$browse=@opendir($inputFolder);
while ($file=@readdir($browse)) {
if (is_dir($inputFolder."/".$file) && $file!="." && $file!="..") {
if(@mkdir($targetFolder."/".$file)) {
foldermove($inputFolder."/".$file, $targetFolder."/".$file);
}
}
else {
if ($file!="." && $file!="..") {
if (@copy($inputFolder."/".$file, $targetFolder."/".$file)) {
if(file_exists($targetFolder."/".$file)) {
@unlink($inputFolder."/".$file);
//$movemessage.="Datei verschoben: $file ";
}
}
else { $movemessage.="Datei konnte nicht verschoben werden: $file "; }
}
}
}
if (@rmdir($inputFolder)) { $movemessage.="Verzeichnis verschoben: $inputFolder "; }
else { $movemessage.="Verzeichnis konnte nicht verschoben werden: $inputFolder "; }
@closedir($browse);
unset($browse,$inputFolder,$file);
}
//************************************************************************
// dateien und ordner rekursiv löschen
function folderdelete($inputFolder) {
$killmessage=null;
global $killmessage;
$browse=@opendir($inputFolder);
while ($file=@readdir($browse)) {
if (is_dir($inputFolder."/".$file) && $file!="." && $file!="..") {
folderdelete($inputFolder."/".$file);
}
else {
if ($file!="." && $file!="..") {
if (@unlink($inputFolder."/".$file)) {
$killmessage.="Datei gelöscht: $file ";
}
else {
$killmessage.="Datei konnte nicht gelöscht werden: $file ";
}
}
}
}
if (@rmdir($inputFolder)) {
$killmessage.="Verzeichnis gelöscht: $inputFolder ";
}
else {
$killmessage.="Verzeichnis konnte nicht gelöscht werden: $inputFolder ";
}
@closedir($browse);
unset($browse,$inputFolder,$file);
}
//************************************************************************
// dateinamen und ordner auf (un)gültige zeichen prüfen
function allZeichenCheck($input) {
$output=trim(strtolower($input));
$output=strip_tags($output);
$output=stripslashes($output);
$uml = array("ä","ö","ü","ß");
$ers = array("ae","oe","ue","ss");
$output=str_replace($uml,$ers,$output);
$output=preg_replace('%[^a-z0-9_-]%siU',' ',$output);
$output=preg_replace('%( ){1,}%','_',$output);
return $output;
}
//extrem: nur ziffern und buchstaben
function allZeichenCheckExtreme($input) {
$output=trim(strtolower($input));
$output=strip_tags($output);
$output=stripslashes($output);
$uml = array("ä","ö","ü","ß");
$ers = array("ae","oe","ue","ss");
$output=str_replace($uml,$ers,$output);
$output=preg_replace('%[^a-z0-9]%siU',' ',$output);
$output=preg_replace('%( ){1,}%','',$output);
return $output;
}
//light: erlaubt leerzeichen und grossbuchstaben
function allZeichenCheckLight($input) {
$output=trim($input);
$output=strip_tags($output);
$output=stripslashes($output);
$uml = array("ä","ö","ü","ß");
$ers = array("ae","oe","ue","ss");
$output=str_replace($uml,$ers,$output);
return $output;
}
//************************************************************************
// div-block 2 mit ladebalken
function divladebalken($titel,$text) {
global $tablesettings;
global $mdXladeBalken;
echo "
";
echo "$titel ";
echo "$text ";
echo "$mdXladeBalken ";
echo "
";
}
//************************************************************************
// (fehler)meldungen ausgeben
function meldung($titel,$text) {
global $tablesettings;
echo "";
echo "$titel ";
echo "$text ";
echo "
";
echo "
";
}
//************************************************************************
// farbwerte von hex nach rgb konvertieren
function getrgb($hex) {
$hex_array=array(0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 'A' => 10, 'B' => 11, 'C' => 12, 'D' => 13, 'E' => 14, 'F' => 15);
$hex=str_replace('#','',strtoupper($hex));
if (($length=strlen($hex))== 3) {
$hex=$hex{0}.$hex{0}.$hex{1}.$hex{1}.$hex{2}.$hex{2};
$length=6;
}
if ($length !=6 or strlen(str_replace(array_keys($hex_array),'', $hex)))
return NULL;
$rgb['r'] = $hex_array[$hex{0}] * 16 + $hex_array[$hex{1}];
$rgb['g'] = $hex_array[$hex{2}] * 16 + $hex_array[$hex{3}];
$rgb['b']= $hex_array[$hex{4}] * 16 + $hex_array[$hex{5}];
return $rgb['r'].','.$rgb['g'].','.$rgb['b'];
}
// # aus hex-farben entfernen
function clearhex($input) {
$output=str_replace('#','',strtoupper($input));
return $output;
}
//************************************************************************
// navigationsmenü einlesen
function menustrukturlesen() {
global $mPfadZuMenu;
if (file_exists($mPfadZuMenu)) {
//menü einlesen
$zieldatei=file($mPfadZuMenu);
$read=array();
for ($z=1; $z <= count($zieldatei); $z++) {
$dat=explode("|",$zieldatei[count($zieldatei) - $z]);
if($dat[0]=="MENUITEM") {
$kategorie = split("[.]",$dat[2]);
$read[]=array('moderc'=>"$dat[1]",'idnummer'=>"$dat[2]",'gruppe'=>"$kategorie[0]",'nummer'=>"$kategorie[1]",'titel'=>html_entity_decode($dat[3]),'url'=>"$dat[4]",'artli'=>"$dat[5]",'lora'=>"$dat[6]",'bereich'=>"$dat[7]");
}
}
if(!empty($read)) {
$read = array_values($read);
function checksortmenu($row1,$row2) {
$first = strcmp($row1['gruppe'], $row2['gruppe']);
if ($first) return $first;
else
return strcmp($row1['nummer'], $row2['nummer']);
}
uasort($read,'checksortmenu'); // enhält funktion für sortieren
// menü erstellen
$menuliste=null;
foreach($read as $elem) {
//hauptmenü
if($elem['moderc']=="M" and $elem['nummer']=="00") {
$menuliste.="".$elem['titel'];
if ($elem['lora']=="K") { $menuliste.=" (keine Verknüpfung!)"; }
$menuliste.=" ";
//untermenüs
foreach($read as $subitem) {
if($subitem['moderc']=="C" and $subitem['gruppe']==$elem['gruppe']) {
$menuliste.=" ".$subitem['titel']." ";
}
}
}
}
// ende menü
}
else { $menuliste.="Keine Einträge verfügbar "; }
}
else { $menuliste.="Keine Einträge verfügbar "; }
return $menuliste;
}
?>
// FUNKTIONEN ===============================================================================
//************************************************************************
// regex für email-adressen
$regex="/^([a-z0-9]+([-_.]?[a-z0-9])+)@[a-z0-9äöü]+([-_.]?[a-z0-9äöü])+.[a-z]{2,6}$/i";
//************************************************************************
// email-adresse auf gültigkeit prüfen
function checkMailAdress($string) {
global $regex;
if(preg_match($regex,html_entity_decode(stripslashes(trim(strtolower($string)))))) { return true; }
else { return false; }
}
//************************************************************************
// emails aus datei lesen
function getEmailsFromFile($ziel) {
global $regex;
$userfile=file($ziel);
$mailadressen=array();
for ($z=0;$z<=count($userfile);$z++) {
$dat=explode(";",$userfile[$z]);
if(preg_match($regex,html_entity_decode(stripslashes(trim(strtolower(base64_decode($dat[0]))))))) {
$mailadressen[]=stripslashes(trim(strtolower(base64_decode($dat[0]))));
}
}
sort($mailadressen);
return $mailadressen;
}
//************************************************************************
// emails aus datei lesen (importieren mit trennzeichen)
function importEmailsFromFile_ORIGINAL($ziel,$trennzeichen) {
global $regex;
$userfile=file($ziel);
$mailadressen=array();
for ($z=0;$z<=count($userfile);$z++) {
$dat=explode($trennzeichen,$userfile[$z]);
if(preg_match($regex,html_entity_decode(stripslashes(trim(strtolower($dat[0])))))) {
$mailadressen[]=stripslashes(trim(strtolower($dat[0])));
}
}
return $mailadressen;
}
// emails aus datei lesen (importieren mit trennzeichen)
function importEmailsFromFile($ziel,$trennzeichen) {
global $regex;
$userfile=file($ziel);
$mailadressen=array();
@include_once("editor/progressclass/class.progress.inc");
$progress=new ProgressClass();
$progress->setPosition('center',115);
$progress->setBarColor('#00a2c2');
$progress->make();
for ($z=0;$z<=count($userfile);$z++) {
$dat=explode($trennzeichen,$userfile[$z]);
foreach($dat as $mailad) {
if($mailad!=="" and preg_match($regex,html_entity_decode(stripslashes(trim(strtolower($mailad)))))) {
$mailadressen['ok'][]=stripslashes(trim(strtolower($mailad)));
}
else {
if($mailad!=="") {
//falsche daten erkennen
if(strlen($mailad)>90) { $itemn=substr($mailad,0,90); } else { $itemn=$mailad; }
$mailadressen['falsch'][]=stripslashes(trim(strtolower($itemn)));
}
}
}
$progress->setLabel("Importierte Adressen: ".$z);
$progress->setPerX($z,count($userfile));
}
// }
// if($dat[0]!=="" and preg_match($regex,html_entity_decode(stripslashes(trim(strtolower($dat[0])))))) {
// $mailadressen['ok'][]=stripslashes(trim(strtolower($dat[0])));
// }
// else {
// if($dat[0]!=="") {
// //falsche daten erkennen
// if(strlen($dat[0])>90) { $itemn=substr($dat[0],0,90); } else { $itemn=$dat[0]; }
// $mailadressen['falsch'][]=stripslashes(trim(strtolower($itemn)));
// }
// }
// $progress->setLabel("Importierte Adressen: ".$z);
// $progress->setPerX($z,count($userfile));
//usleep(500);
// }
// }
$progress->setLabel('Importieren beendet.');
sleep(2);
$progress->hide();
sort($mailadressen['ok']);
sort($mailadressen['falsch']);
return $mailadressen;
}
//************************************************************************
// emails aus array einlesen
function getEmailsFromArray($array) {
global $regex;
$adressen=array();
foreach($array as $item) {
if(preg_match($regex,stripslashes(trim(strtolower($item))))) {
$adressen[]=stripslashes(trim(strtolower($item)));
}
}
$adressen=array_unique($adressen);
sort($adressen);
return $adressen;
}
//************************************************************************
// verteilerlisten einlesen
function getBestehendeListen($onchange,$formular,$ordner) {
global $choselist;
global $mPfadZuEmailStore;
if(!isset($ordner) or $ordner=="") { $ordner=$mPfadZuEmailStore; }
// onchange-funktion einfügen?
if(isset($onchange) and $onchange=="onchange" and isset($formular) and $formular!=="") { $onchange="onchange='changeView();document.".$formular.".submit();'"; }
else { $onchange=null; }
$vliste=array();
$daten=@opendir($ordner);
if ($daten) {
while (false!==($file=@readdir($daten))) {
if($file!=="." and $file!== ".." and strstr($file,".info") and !is_dir($ordner."/".$file)) {
$file=splitfilename($file);
$vliste[]=$file[0];
}
}
}
@closedir($daten);
sort($vliste);
$sellist.="";
$sellist.="Bitte wählen... ";
foreach($vliste as $item) {
if(file_exists($ordner."/".$item.".info") and file_exists($ordner."/".$item.".inc")) {
@include($ordner."/".$item.".info");
if(isset($lname) and $lname!=="") { $liname=html_entity_decode($lname); } else { $liname="Unbekannte Liste"; }
$sellist.="".$liname." ";
}
}
$sellist.=" ";
return $sellist;
}
//************************************************************************
// ein-austragen-formular: daten einlesen
function getColorProfiles() {
global $scemelist;
global $mPfadZuGenerator;
$cliste=array();
$daten=@opendir($mPfadZuGenerator);
if ($daten) {
while (false!==($file=@readdir($daten))) {
if($file!=="." and $file!==".." and strstr($file,".inc") and !is_dir($mPfadZuGenerator."/".$file)) {
$file=splitfilename($file);
$cliste[]=$file[0];
}
}
}
@closedir($daten);
sort($cliste);
$sellist.="";
$sellist.="Bitte wählen... ";
foreach($cliste as $item) {
if(file_exists($mPfadZuGenerator."/".$item.".inc")) {
@include($mPfadZuGenerator."/".$item.".inc");
$sellist.="";
$sellist.=html_entity_decode(base64_decode($gname));
$sellist.=" ";
unset($gname,$ghfarbe,$gfont,$gtitel,$gusize,$gufarbe,$gline,$gline2,$gtext,$gtfarbe,$gtsize,$gihfarbe,$girfarbe,$gsubmittd,$galign,$gliste);
}
}
$sellist.=" ";
return $sellist;
}
//************************************************************************
// smtp-server auf gültigkeit prüfen
function checkSMTP($domain) {
if(!checkdnsrr($domain, 'MX')) { return false; }
if(!fsockopen($domain,25,$errno,$errstr,30)) { return false; }
return true;
}
//if(!checkSMTP('smtp.domain.xy')) { fehler } else { richtig }
//************************************************************************
// email-adresse auf existenz prüfen (zumindest den server...)
function checkEMAIL($email) {
list($username,$domain)=split('@',$email);
if(!checkdnsrr($domain, 'MX')) { return false; }
if(!fsockopen($domain,80,$errno,$errstr,30)) { return false; }
return true;
}
//if(!checkEMAIL('x@y.z')) { fehler } else { richtig }
//************************************************************************
// sendeprofil aus datei lesen
function getProfilSettingsFromFile($file) {
$userfile=@file($file);
$users=array();
for ($z=1; $z <= count($userfile); $z++) {
$dat=explode("|",$userfile[count($userfile) - $z]);
if($dat[0]=="ACCOUNT") {
$users[base64_decode($dat[1])]=array(
"profilname"=>base64_decode($dat[1]),
"sendermail"=>base64_decode($dat[2]),
"sendername"=>base64_decode($dat[3]),
"serverad"=>base64_decode($dat[4]),
"serverus"=>base64_decode($dat[5]),
"serverpw"=>base64_decode($dat[6]),
"replyto"=>base64_decode($dat[7])
);
}
}
ksort($users);
return $users;
}
//************************************************************************
// select-liste aus profil-array erstellen
function getProfilSelect($inputarray) {
global $profil;
$select="";
$select.="Bitte wählen... ";
foreach ($inputarray as $uaccount=>$werte) {
$select.="".$uaccount."  (".$werte['sendermail'].", ".$werte['serverad'].") ";
}
$select.=" ";
return $select;
}
//************************************************************************
// zufälligen dateinamen erstellen
function makeRandomDateiName($laenge) {
$filename=null;
if(!isset($laenge)) { $mdxlength=20; } else { $mdxlength=abs($laenge); }
$mdxkeychars="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
$themax=strlen($mdxkeychars)-1;
for ($i=0;$i<$mdxlength;$i++) { $filename.= substr($mdxkeychars,rand(0,$themax),1); }
return $filename;
}
//************************************************************************
// alphabetische plus-minus-adressenliste aus array
function makeAlphabetFromArray($mailadressen) {
$liste=array();
foreach($mailadressen as $item) { $liste[strtolower("'".$item{0}."'")][]=$item; }
unset($item);
ksort($liste);
$counter=makeRandomDateiName(10);
// plus-minus-klappliste erstellen
$kl=null;
// außen
$kl.="";
// /außen
return $kl;
}
//************************************************************************
// alphabetische plus-minus-adressenliste aus array MIT "alle"-checkbox
function makeAlphabetFromArrayToSelect($mailadressen, $angewaehlt) {
if(!isset($angewaehlt) or $angewaehlt=="1") { $marker="checked='checked'"; }
if($angewaehlt=="0") { $marker=null; }
$liste=array();
foreach($mailadressen as $item) { $liste[strtolower("'".$item{0}."'")][]=$item; }
unset($item);
ksort($liste);
$counter=makeRandomDateiName(10);
// plus-minus-klappliste erstellen
$kl=null;
// außen
$kl.="";
foreach($liste as $buchstabe => $adresseninbuchstabe) {
$buchstabe=str_replace("'","",$buchstabe);
$kl.="";
//innen
$kl.=" Adressen beginnend mit ".strtoupper($buchstabe)." ";
$kl.="";
$kl.="
";
$kl.="";
$kl.=" ";
$kl.="
";
// /innen
$kl.=" ";
}
$kl.="
";
// /außen
return $kl;
}
//************************************************************************
// plus-minus-feld mit titel und inhalt generieren
function makeKlappBox($titel, $inhalt, $breite) {
$counter=makeRandomDateiName(10);
if(file_exists($inhalt)) { $str=implode("", @file($inhalt)); }
else { $str=stripslashes($inhalt); }
if(isset($breite) and $breite!=="") { $width=stripslashes($breite); }
else { $width="450"; }
$box=" ".stripslashes($titel)." ";
$box.="";
$box.="
";
$box.="".$str." ";
$box.="
";
$box.="
";
return $box;
}
//************************************************************************
// mime-typ anhand dateiendung erkennen
function mime_erkennen($filename) {
$filetype=strrchr($filename, ".");
switch ($filetype) {
case ".bin": $m="application/octet-stream"; break;
case ".class": $m="application/octet-stream"; break;
case ".cpt": $m="application/mac-compactpro"; break;
case ".dll": $m="application/octet-stream"; break;
case ".dms": $m="application/octet-stream"; break;
case ".doc": $m="application/msword"; break;
case ".exe": $m="application/octet-stream"; break;
case ".ez": $m="application/andrew-inset"; break;
case ".zip": $m="application/zip"; break;
case ".hqx": $m="application/mac-binhex40"; break;
case ".lha": $m="application/octet-stream"; break;
case ".lzh": $m="application/octet-stream"; break;
case ".so": $m="application/octet-stream"; break;
case ".oda": $m="application/oda"; break;
case ".pdf": $m="application/pdf"; break;
case ".ai": $m="application/postscript"; break;
case ".eps": $m="application/postscript"; break;
case ".ps": $m="application/postscript"; break;
case ".smi": $m="application/smil"; break;
case ".smil": $m="application/smil"; break;
case ".xls": $m="application/vnd.ms-excel"; break;
case ".ppt": $m="application/vnd.ms-powerpoint"; break;
case ".wbxml": $m="application/vnd.wap.wbxml"; break;
case ".wmlc": $m="application/vnd.wap.wmlc"; break;
case ".wmlsc": $m="application/vnd.wap.wmlscriptc"; break;
case ".bcpio": $m="application/x-bcpio"; break;
case ".vcd": $m="application/x-cdlink"; break;
case ".pgn": $m="application/x-chess-pgn"; break;
case ".cpio": $m="application/x-cpio"; break;
case ".csh": $m="application/x-csh"; break;
case ".dcr": $m="application/x-director"; break;
case ".dir": $m="application/x-director"; break;
case ".dxr": $m="application/x-director"; break;
case ".dvi": $m="application/x-dvi"; break;
case ".spl": $m="application/x-futuresplash"; break;
case ".gtar": $m="application/x-gtar"; break;
case ".hdf": $m="application/x-hdf"; break;
case ".js": $m="application/x-javascript"; break;
case ".skp": $m="application/x-koan"; break;
case ".skd": $m="application/x-koan"; break;
case ".skt": $m="application/x-koan"; break;
case ".skm": $m="application/x-koan"; break;
case ".latex": $m="application/x-latex"; break;
case ".nc": $m="application/x-netcdf"; break;
case ".cdf": $m="application/x-netcdf"; break;
case ".sh": $m="application/x-sh"; break;
case ".shar": $m="application/x-shar"; break;
case ".swf": $m="application/x-shockwave-flash"; break;
case ".sit": $m="application/x-stuffit"; break;
case ".sv4cpio": $m="application/x-sv4cpio"; break;
case ".sv4crc": $m="application/x-sv4crc"; break;
case ".tar": $m="application/x-tar"; break;
case ".tcl": $m="application/x-tcl"; break;
case ".tex": $m="application/x-tex"; break;
case ".texinfo": $m="application/x-texinfo"; break;
case ".texi": $m="application/x-texinfo"; break;
case ".t": $m="application/x-troff"; break;
case ".tr": $m="application/x-troff"; break;
case ".roff": $m="application/x-troff"; break;
case ".man": $m="application/x-troff-man"; break;
case ".me": $m="application/x-troff-me"; break;
case ".ms": $m="application/x-troff-ms"; break;
case ".ustar": $m="application/x-ustar"; break;
case ".src": $m="application/x-wais-source"; break;
case ".xhtml": $m="application/xhtml+xml"; break;
case ".xht": $m="application/xhtml+xml"; break;
case ".au": $m="audio/basic"; break;
case ".snd": $m="audio/basic"; break;
case ".mid": $m="audio/midi"; break;
case ".midi": $m="audio/midi"; break;
case ".kar": $m="audio/midi"; break;
case ".mpga": $m="audio/mpeg"; break;
case ".mp2": $m="audio/mpeg"; break;
case ".mp3": $m="audio/mpeg"; break;
case ".aif": $m="audio/x-aiff"; break;
case ".aiff": $m="audio/x-aiff"; break;
case ".aifc": $m="audio/x-aiff"; break;
case ".m3u": $m="audio/x-mpegurl"; break;
case ".ram": $m="audio/x-pn-realaudio"; break;
case ".rm": $m="audio/x-pn-realaudio"; break;
case ".rpm": $m="audio/x-pn-realaudio-plugin"; break;
case ".ra": $m="audio/x-realaudio"; break;
case ".wav": $m="audio/x-wav"; break;
case ".pdb": $m="chemical/x-pdb"; break;
case ".xyz": $m="chemical/x-xyz"; break;
case ".bmp": $m="image/bmp"; break;
case ".gif": $m="image/gif"; break;
case ".ief": $m="image/ief"; break;
case ".jpeg": $m="image/jpeg"; break;
case ".jpg": $m="image/jpeg"; break;
case ".jpe": $m="image/jpeg"; break;
case ".png": $m="image/png"; break;
case ".tiff": $m="image/tiff"; break;
case ".tif": $m="image/tiff"; break;
case ".djvu": $m="image/vnd.djvu"; break;
case ".djv": $m="image/vnd.djvu"; break;
case ".wbmp": $m="image/vnd.wap.wbmp"; break;
case ".ras": $m="image/x-cmu-raster"; break;
case ".pnm": $m="image/x-portable-anymap"; break;
case ".pbm": $m="image/x-portable-bitmap"; break;
case ".pgm": $m="image/x-portable-graymap"; break;
case ".ppm": $m="image/x-portable-pixmap"; break;
case ".rgb": $m="image/x-rgb"; break;
case ".xbm": $m="image/x-xbitmap"; break;
case ".xpm": $m="image/x-xpixmap"; break;
case ".xwd": $m="image/x-xwindowdump"; break;
case ".igs": $m="model/iges"; break;
case ".iges": $m="model/iges"; break;
case ".msh": $m="model/mesh"; break;
case ".mesh": $m="model/mesh"; break;
case ".silo": $m="model/mesh"; break;
case ".wrl": $m="model/vrml"; break;
case ".vrml": $m="model/vrml"; break;
case ".css": $m="text/css"; break;
case ".html": $m="text/html"; break;
case ".htm": $m="text/html"; break;
case ".asc": $m="text/plain"; break;
case ".txt": $m="text/plain"; break;
case ".rtx": $m="text/richtext"; break;
case ".rtf": $m="text/rtf"; break;
case ".sgml": $m="text/sgml"; break;
case ".sgm": $m="text/sgml"; break;
case ".tsv": $m="text/tab-separated-values"; break;
case ".wml": $m="text/vnd.wap.wml"; break;
case ".wmls": $m="text/vnd.wap.wmlscript"; break;
case ".etx": $m="text/x-setext"; break;
case ".xml": $m="text/xml"; break;
case ".xsl": $m="text/xml"; break;
case ".mpeg": $m="video/mpeg"; break;
case ".mpg": $m="video/mpeg"; break;
case ".mpe": $m="video/mpeg"; break;
case ".qt": $m="video/quicktime"; break;
case ".mov": $m="video/quicktime"; break;
case ".mxu": $m="video/vnd.mpegurl"; break;
case ".avi": $m="video/x-msvideo"; break;
case ".movie": $m="video/x-sgi-movie"; break;
case ".asf": $m="video/x-ms-asf"; break;
case ".asx": $m="video/x-ms-asf"; break;
case ".wm": $m="video/x-ms-wm"; break;
case ".wmv": $m="video/x-ms-wmv"; break;
case ".wvx": $m="video/x-ms-wvx"; break;
case ".ice": $m="x-conference/x-cooltalk"; break;
default: $m="application/octet-stream";
}
return $m;
}
//************************************************************************
// tooltips einblenden
function tooltips($text, $cursor, $alttitel) {
$altundtitel=null;
$setcursor="pointer";
if(strlen($text) > 50) { $width=",WIDTH, 200"; }
if($alttitel=="1") { $altundtitel="alt='' title=''"; }
if($cursor=="1") { $setcursor="pointer"; }
if($cursor=="2") { $setcursor="help"; }
if($cursor=="3") { $setcursor="default"; }
$tooltipcode=$altundtitel." onmouseover=\"Tip('".stripslashes($text)."'".$width.");this.style.cursor='".$setcursor."';\"";
return $tooltipcode;
}
//************************************************************************
// tooltips einblenden
function hilfetips($zeigetext, $hilfetext) {
if($hilfetext=="") { $hilfetext="Zu diesem Eintrag steht noch keine Hilfe zur Verfügung."; }
if(strlen($hilfetext) > 50) { $width=",WIDTH, 250"; }
$tooltipcode="$zeigetext ";
return $tooltipcode;
}
//************************************************************************
// ein verzeichnis hoch...
function one_folder_up($input) {
// letzten slash entfernen
if ($input{strlen($input)-1}=="/") { $input=substr($input, 0, strlen($input)-1); }
$xExt_start = strrpos($input,"/");
$xExt_length = strlen($input) - $xExt_start;
//$zielfolder=strtolower(substr($input, ($xExt_start + 1), $xExt_length));
$zielfolder=substr($input, 0, $xExt_start);
return strtolower($zielfolder);
}
// ==========================================================================================
?>Sie können die Seite nicht starten.