Beispiel #1
0
 function deleteMe()
 {
     if ($this->A("phimFromUserID") != Session::currentUser()->getID()) {
         Red::errorD("Sie können nur eigene Nachrichten löschen!");
     }
     parent::deleteMe();
 }
Beispiel #2
0
 function saveMe($checkUserData = true, $output = false)
 {
     $AC = anyC::get("poolSteuerung", "poolSteuerungTyp", $this->A("poolSteuerungTyp"));
     $AC->addAssocV3("poolSteuerungID", "!=", $this->getID());
     $S = $AC->n();
     if ($S !== null) {
         Red::errorD("Jeder Steuerungstyp darf maximal einmal angelegt werden.");
     }
     return parent::saveMe($checkUserData, $output);
 }
Beispiel #3
0
 function saveMe($checkUserData = true, $output = false)
 {
     parent::saveMe($checkUserData, false);
     $_SESSION["DBData"] = $_SESSION["S"]->getDBData();
     if (PHYNX_MAIN_STORAGE == "MySQL") {
         $DB = new DBStorage();
     } else {
         $DB = new DBStorageU();
     }
     Red::messageSaved();
 }
Beispiel #4
0
 function newMe($checkUserData = true, $output = false)
 {
     $allowedUsers = Environment::getS("allowedUsers", null);
     if ($allowedUsers !== null and $this->A("isAdmin") == "0") {
         $AC = anyC::get("User", "isAdmin", "0");
         $AC->lCV3();
         if ($AC->numLoaded() >= $allowedUsers) {
             Red::errorD("Sie können keine weiteren Benutzer ohne Admin-Rechte anlegen. Bitte wenden Sie sich an den Support.");
         }
     }
     if (mUserdata::getGlobalSettingValue("encryptionKey") == null and Session::isUserAdminS()) {
         mUserdata::setUserdataS("encryptionKey", Util::getEncryptionKey(), "eK", -1);
     }
     $this->A->SHApassword = sha1($this->A->SHApassword);
     return parent::newMe($checkUserData, $output);
 }
Beispiel #5
0
 function calc($land, $kontonummer, $bankleitzahl, $ibanField, $bicField)
 {
     if ($kontonummer == "" or $bankleitzahl == "") {
         Red::alertD("Bitte tragen Sie Bankleitzahl und Kontonummer ein");
     }
     $url = "http://www.iban.de/iban-berechnen.html";
     $ch = curl_init();
     curl_setopt($ch, CURLOPT_HTTPHEADER, array('User-Agent: Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:26.0) Gecko/20100101 Firefox/26.0', 'Referer: http://www.iban.de/iban-berechnen.html', 'Content-Type: application/x-www-form-urlencoded; charset=UTF-8', 'X-Requested-With: XMLHttpRequest'));
     curl_setopt($ch, CURLOPT_URL, $url);
     curl_setopt($ch, CURLOPT_POST, 1);
     curl_setopt($ch, CURLOPT_POSTFIELDS, "ibanrechnerCountry={$land}&ibanrechnerBlz={$bankleitzahl}&ibanrechnerKonto={$kontonummer}&ibanToolkit=ibanrechner");
     curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
     $result = curl_exec($ch);
     curl_close($ch);
     $I = new IBAN(trim(str_replace("Die IBAN lautet: ", "", strip_tags($result))));
     $iban = $I->MachineFormat();
     $url = "https://www.s-bausparkasse.at/portal/if_ajax.asp";
     $ch = curl_init();
     curl_setopt($ch, CURLOPT_URL, $url);
     curl_setopt($ch, CURLOPT_POST, 1);
     curl_setopt($ch, CURLOPT_POSTFIELDS, "mode=calc.ibanbic.listofbic&cuid=&alt_iban=&iban={$iban}&rechnername=IBAN%2FBIC-Rechner&currentpageid=87&berechnungsdaten=&autocalc=&getresult=&country={$land}&bank={$bankleitzahl}&account=" . str_pad($kontonummer, 10, "0", STR_PAD_LEFT));
     curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
     $result = curl_exec($ch);
     curl_close($ch);
     $ex = explode("&&&", $result);
     $ex[0] = str_replace("listofbic==", "", strip_tags(trim($ex[0])));
     $ex[1] = str_replace("iban==", "", trim($ex[1]));
     $T = new HTMLTable(3, "Gefundene Ergebnisse");
     $T->weight("light");
     $T->maxHeight(400);
     $T->useForSelection(false);
     $T->setColWidth(1, 20);
     $T->addHeaderRow(array("", "BIC", "IBAN"));
     foreach (explode("\n", $ex[0]) as $bic) {
         $B = new Button("Diese Kombination verwenden", "arrow_right", "iconic");
         $T->addRow(array($B, trim($bic), $ex[1]));
         $T->addRowEvent("click", "\$j('[name={$ibanField}]').val('{$ex['1']}'); \$j('[name={$bicField}]').val('" . trim($bic) . "'); " . OnEvent::closePopup("IBANCalc"));
     }
     echo $T;
     #echo "<pre>";
     #echo htmlentities(print_r($ex, true));
     #echo($result);
     #echo "</pre>";
 }
 function saveMe($checkUserData = true, $output = false)
 {
     if ($this->A("ContentImage") != "") {
         $path = Util::getRootPath() . "specifics/" . $this->A("ContentImage");
         $image = new Imagick($path);
         $imageSmall = Util::getRootPath() . "specifics/" . str_replace(basename($this->A("ContentImage")), "small/" . basename($this->A("ContentImage")), $this->A("ContentImage"));
         $imageBig = Util::getRootPath() . "specifics/" . str_replace(basename($this->A("ContentImage")), "big/" . basename($this->A("ContentImage")), $this->A("ContentImage"));
         $image->resizeImage(0, 550, Imagick::FILTER_LANCZOS, 1);
         if (!$image->writeImage($imageBig)) {
             Red::alertD("Das große Vorschaubild kann nicht erstellt werden!");
         }
         $image->resizeImage(150, 0, Imagick::FILTER_LANCZOS, 1);
         if (!$image->writeImage($imageSmall)) {
             Red::alertD("Das kleine Vorschaubild kann nicht erstellt werden!");
         }
         $image->destroy();
     }
     parent::saveMe($checkUserData, $output);
 }
 public function categorize($KategorieID)
 {
     $bps = $this->getMyBPSData();
     $_SESSION["BPS"]->unregisterClass("CategorizerGUI");
     if ($KategorieID == 0) {
         Red::errorD($this->E033);
     }
     $c = "m" . $bps["VonClass"];
     $c = new $c();
     $id = str_replace("GUI", "", $bps["VonClass"]);
     $c->addAssocV3($id . "ID", ">=", $bps["VonID"]);
     $c->addAssocV3($id . "ID", "<=", $bps["BisID"]);
     $k = $bps["VonClass"];
     $k = new $k(-1);
     $k = $k->getCategorizerFieldName();
     $c->lCV3();
     while ($t = $c->getNextEntry()) {
         $t->changeA($k, $KategorieID);
         $t->saveMe();
     }
     #echo "error:'test: ".$c->numLoaded()."'";
 }
Beispiel #8
0
        $fi = $data["emptyAttribute"];
        $A->{$fi} = "";
    }
    $C = new $className($data["id"]);
    $C->setA($A);
    foreach ($unusedData as $k => $v) {
        $C->AA($k, $v);
    }
    if ($className == "FileGUI") {
        $C->makeUpload($A);
    }
    if ($className == "TempFileGUI") {
        $C->makeUpload($A);
    }
    if ($data["id"] != -1) {
        $C->saveMe(true, true);
    } else {
        $C->newMe(true, true);
    }
} catch (TableDoesNotExistException $e) {
} catch (DatabaseNotSelectedException $e) {
    #echo "Database does not exist<br />";
} catch (NoDBUserDataException $e) {
    #echo "Database authentication failed.<br />";
} catch (DatabaseNotFoundException $e) {
    #echo "Specified database not found.<br />";
} catch (DuplicateEntryException $e) {
    Red::errorDuplicate($e->getDuplicateFieldValue());
} catch (ClassNotFoundException $e) {
    Red::errorClass($e->getClassName());
}
 function saveMe($checkUserData = true, $output = false)
 {
     Aspect::joinPoint("before", $this, get_class($this) . "::saveMe", $this->A);
     if ($checkUserData) {
         mUserdata::checkRestrictionOrDie("cantEdit" . str_replace("GUI", "", get_class($this)));
     }
     $this->loadAdapter();
     $this->Adapter->saveSingle2($this->getClearClass(get_class($this)), clone $this->A);
     if ($output) {
         Red::messageSaved();
     }
 }
 function handleForm($valuesAssocArray)
 {
     $this->classes();
     switch ($valuesAssocArray["action"]) {
         case "register":
             $F = new Factory("Adresse");
             $F->sA("firma", $valuesAssocArray["firma"]);
             $F->sA("strasse", $valuesAssocArray["strasse"]);
             $F->sA("nr", $valuesAssocArray["nr"]);
             $F->sA("plz", $valuesAssocArray["plz"]);
             $F->sA("ort", $valuesAssocArray["ort"]);
             $F->sA("email", $valuesAssocArray["userEmail"]);
             //from email
             $F->sA("tel", $valuesAssocArray["tel"]);
             $AdresseID = $F->store(false, false);
             $K = new Kunden();
             $Kappendix = $K->createKundeToAdresse($AdresseID, false, true);
             $Kappendix->changeA("KappendixKontonummer", $valuesAssocArray["kontonummer"]);
             $Kappendix->changeA("KappendixBLZ", $valuesAssocArray["blz"]);
             $Kappendix->changeA("KappendixSameKontoinhaber", "1");
             $KappendixID = $Kappendix->newMe(false);
             $token = sha1($AdresseID . $KappendixID . microtime());
             $F = new Factory("PDFixUser");
             $F->sA("PDFixUserAdresseID", $AdresseID);
             $F->sA("PDFixUserKappendixID", $KappendixID);
             $F->sA("PDFixUserPDFixUserDBID", "0");
             $F->sA("PDFixUserIsActive", "0");
             $F->sA("PDFixUserVorNachname", $valuesAssocArray["userVorNachname"]);
             $F->sA("PDFixUserUsername", $valuesAssocArray["userUsername"]);
             $F->sA("PDFixUserPassword", $valuesAssocArray["userPassword"]);
             $F->sA("PDFixUserEmail", $valuesAssocArray["userEmail"]);
             $F->sA("PDFixUserRate", $valuesAssocArray["zahlungsweise"]);
             $F->sA("PDFixUserRegisteredDate", time());
             $F->sA("PDFixUserToken", $token);
             $F->store(false, false);
             $mail = new htmlMimeMail5();
             $mail->setFrom("*****@*****.**");
             $mail->setSubject(utf8_decode("PDFix Registrierung ihres Mitarbeiters " . $valuesAssocArray["userVorNachname"]));
             $mail->setText(utf8_decode("Sehr geehrte Damen und Herren,\n \nSie selbst oder Ihr Mitarbeiter/Ihre Mitarbeiterin \n" . $valuesAssocArray["userVorNachname"] . " hat sich soeben bei www.pdfix.de angemeldet. \n \nDer Account wurde angelegt.\n \nIm Anhang finden Sie unsere AGB und den Softwarelizenzvertrag.\nMit der Aktivierung des Accounts werden die AGB und Nutzungsbedingungen\nannerkannt.\n\nSobald die Abbuchungserklärung bei uns eingegangen ist,\nwird der Account innerhalb 24 Std. freigeschalten und\n\"pdfix\" kann dann genutzt werden.\n \nWenn Sie die Kosten übernehmen, dann klicken Sie auf\n\n\nnachstehenden Aktivierungslink.\n\nhttp://" . $_SERVER["HTTP_HOST"] . "" . str_replace("/ubiquitous/CustomerPage/index.php", "/ubiquitous/CustomerPage/?CC=RegistrationPDFix&activate={$token}", $_SERVER["SCRIPT_NAME"]) . "\n \n\nAnsonsten klären Sie bitte die Kostenübernahme mit Ihrem Mitarbeiter ab.\n\n \nMit freundlichen Grüßen\n \nM. Tischler\nGeschäftsführer\nETS-SÜD UG (haftungsbeschränkt)\nDR. Michael Samer Ring 2a\n86609 Donauwörth\nAG Augsburg\nHRB 26204\ninfo@pdfix.de"));
             /*
             Zum Download von pdfix besuchen Sie bitte
             http://www.meine-smn.de und klicken auf \"Login\"
             
             melden Sie sich an mit:
             
             Benutzername: ".$valuesAssocArray["userUsername"]."
             Passwort: ".$valuesAssocArray["userPassword"]."
             
             Bestätigen Sie jeweils am Ende der Seiten die AGB´s und Lizenzbedingungen und
             laden \"pdfix\" down.
             
             Sobald die Abbuchungserklärung bei uns eingegangen ist,
             wird der Account innerhalb 24 Std. freigeschalten,und
             \"pdfix\" kann dann genutzt werden.
             */
             #$mail->setTextCharset("UTF-8");
             #$mail->addAttachment(new fileAttachment(Util::getRootPath()."open3A/PDFix/abbuchungserkl.pdf", "application/pdf"));
             $mail->addAttachment(new fileAttachment(Util::getRootPath() . "../download/Agbs.pdf", "application/pdf"));
             $mail->addAttachment(new fileAttachment(Util::getRootPath() . "../download/Softwarelizenzvertrag.pdf", "application/pdf"));
             if (!$mail->send(array($valuesAssocArray["userEmail"]))) {
                 //from email
                 Red::errorD("Die E-Mail konnte nicht verschickt werden, bitte versuchen Sie es erneut!");
             }
             break;
         case "activate":
             $PU = anyC::getFirst("PDFixUser", "PDFixUserToken", $valuesAssocArray["token"]);
             $PU->changeA("PDFixUserActivatedDate", time());
             $PU->changeA("PDFixUserIsActive", "1");
             $PU->changeA("PDFixUserRate", $valuesAssocArray["zahlungsweise"]);
             $PU->saveMe();
             $mail = new htmlMimeMail5();
             $mail->setFrom("*****@*****.**");
             $mail->setSubject(utf8_decode("PDFix Registrierung ihres Mitarbeiters " . $valuesAssocArray["userVorNachname"]));
             $mail->setText(utf8_decode("Sehr geehrte Damen und Herren,\n \nIhr Account wurde soeben angelegt.\n \nBenutzername: " . $PU->A("PDFixUserUsername") . "\nPasswort: " . $PU->A("PDFixUserPassword") . "\n \nSobald die Abbuchungserklärung bei uns eingegangen ist,\nwird der Account innerhalb 24 Std. freigeschalten und\n\"pdfix\" kann dann genutzt werden.\n\t\n\nMit freundlichen Grüßen\n \nM. Tischler\nGeschäftsführer\nETS-SÜD UG (haftungsbeschränkt)\nDR. Michael Samer Ring 2a\n86609 Donauwörth\nAG Augsburg\nHRB 26204\ninfo@pdfix.de"));
             /*
             Zum Download von pdfix besuchen Sie bitte
             http://www.meine-smn.de und klicken auf \"Login\"
             
             melden Sie sich an mit:
             
             Bestätigen Sie jeweils am Ende der Seiten die AGB´s und Lizenzbedingungen und
             laden \"pdfix\" down.
             */
             #$mail->setTextCharset("UTF-8");
             if (!$mail->send(array($PU->A("PDFixUserEmail")))) {
                 Red::errorD("Die E-Mail konnte nicht verschickt werden, bitte versuchen Sie es erneut!");
             }
             $Adresse = new Adresse($PU->A("PDFixUserAdresseID"));
             $mail = new htmlMimeMail5();
             $mail->setFrom("*****@*****.**");
             $mail->setSubject("PDFix Aktivierung");
             $mail->setText(utf8_decode("\nFirma: " . $Adresse->A("firma") . "\nBenutzername: " . $PU->A("PDFixUserUsername") . ""));
             #$mail->setTextCharset("UTF-8");
             if (!$mail->send(array("*****@*****.**"))) {
                 Red::errorD("Die E-Mail konnte nicht verschickt werden, bitte versuchen Sie es erneut!");
             }
             break;
     }
 }
Beispiel #11
0
/*
$_GET["class"];  		//Class of method $_GET["method"]
$_GET["constructor"];	//Parameters to forward to constructor of $_GET["class"]
$_GET["method"];		//Method to call in $_GET["class"]
$_GET["parameters"]		//Parameters to call method $_GET["method"] with
*/
$c = $cla . "GUI";
$d = new $c($con);
$par = get_magic_quotes_gpc() ? stripslashes($par) : $par;
#$phpversion = str_replace(".","",phpversion())*1;
if (Util::phpVersionGEThen("5.1.0")) {
    $pars = explode("','", $par);
    $pars[0] = substr($pars[0], 1);
    $pars[count($pars) - 1] = substr($pars[count($pars) - 1], 0, strlen($pars[count($pars) - 1]) - 1);
    if (!method_exists($d, $met)) {
        if (!method_exists($d, "__call")) {
            Red::errorD("Die Methode {$c}::{$met} existiert nicht");
        } else {
            array_unshift($pars, $met);
            $met = "__call";
        }
    }
    $method = new ReflectionMethod($c, $met);
    try {
        $method->invokeArgs($d, $pars);
    } catch (FieldDoesNotExistException $e) {
        Red::errorUpdate($e);
    }
} else {
    eval("\$d->" . $met . "({$par});");
}
 public function download(Serie $S, $echo = false)
 {
     $tab = new HTMLTable(1);
     $mirrorPath = $this->getMirror();
     $tab->addRow("Retrieving mirror list... using {$mirrorPath}");
     $serverTime = $this->getServerTime();
     $tab->addRow("Retrieving server time... {$serverTime}");
     $S->changeA("lastupdate", $serverTime);
     if ($S->A("siteID") == 0) {
         $tab->addRow("Retrieving series information...");
         $data = file_get_contents("{$mirrorPath}/api/GetSeries.php?seriesname=" . urlencode($S->A("name")) . "&language=" . $S->A("sprache"));
         if ($data === false) {
             throw new Exception("No data from {$mirrorPath}/api/GetSeries.php?seriesname=" . urlencode($S->A("name")) . "&language=" . $S->A("sprache"));
         }
         #die("DATA: $data");
         $seriesInfo = new SimpleXMLElement($data, null, false);
         $seriesID = $seriesInfo->Series->seriesid;
         $S->changeA("siteID", $seriesID);
         #$S->changeA("description", $seriesInfo->Series->Overview);
     } else {
         $seriesID = $S->A("siteID");
     }
     $tempFile = Util::getTempFilename("SerieID" . $S->getID(), "zip");
     $tab->addRow("Downloading episodes information...");
     $SZip = "{$mirrorPath}/api/{$this->apiKey}/series/{$seriesID}/all/" . $S->A("sprache") . ".zip";
     if (!copy($SZip, $tempFile)) {
         Red::errorD("The download of {$SZip} failed!");
     }
     try {
         $zip = new ZipArchive();
         if ($zip->open($tempFile) === TRUE) {
             $zip->extractTo(dirname($tempFile) . "/SerieID" . $S->getID());
             $zip->close();
             $tab->addRow("Extracting data...");
         } else {
             throw new ClassNotFoundException("");
         }
     } catch (ClassNotFoundException $e) {
         if (!Util::isWindowsHost()) {
             $commandUnzip = "unzip -o {$tempFile} -d SerieID" . $S->getID();
         } else {
             $commandUnzip = Util::getRootPath() . "trinityDB/Serien/unzip.exe -o {$tempFile} -d SerieID" . $S->getID();
         }
         $tab->addRow("Extracting data...<br />{$commandUnzip}");
         $sc = new SystemCommand();
         $sc->setCommand("cd " . dirname($tempFile) . " && {$commandUnzip}");
         $sc->execute();
     }
     $e = 0;
     $u = 0;
     $file = dirname($tempFile) . "/SerieID" . $S->getID() . "/" . $S->A("sprache") . ".xml";
     if (!file_exists($file)) {
         Red::errorD("Could not find the expected file {$file}. Please check if it was properly extracted from {$tempFile}.");
     }
     $episodesList = new SimpleXMLElement(file_get_contents($file));
     $status = $episodesList->Series->Status;
     $S->changeA("description", $episodesList->Series->Overview);
     $S->changeA("status", $status);
     $S->changeA("genre", $episodesList->Series->Genre);
     foreach ($episodesList->Episode as $k => $v) {
         $AC = anyC::get("Folge", "SerieID", $S->getID());
         $AC->addAssocV3("season", "=", $v->SeasonNumber);
         $AC->addAssocV3("episode", "=", $v->EpisodeNumber);
         $AC->lCV3();
         if ($AC->numLoaded() > 1) {
             while ($F = $AC->getNextEntry()) {
                 $F->deleteMe();
             }
         }
         $F = new Factory("Folge");
         $F->sA("SerieID", $S->getID());
         $F->sA("season", $v->SeasonNumber);
         $F->sA("episode", $v->EpisodeNumber);
         if ($E = $F->exists(true)) {
             if ($v->lastupdated == $E->A("lastupdate")) {
                 continue;
             }
             $E->changeA("name", $v->EpisodeName);
             $E->changeA("airDate", $v->FirstAired);
             $E->changeA("lastupdate", $v->lastupdated);
             $E->changeA("description", $v->Overview);
             $E->saveMe(true, false);
             $u++;
             continue;
         }
         $F->sA("episodeID", $v->id);
         $F->sA("name", $v->EpisodeName);
         $F->sA("airDate", $v->FirstAired);
         $F->sA("lastupdate", $v->lastupdated);
         $F->sA("description", $v->Overview);
         $F->sA("wanted", "1");
         $F->store(true, false);
         $e++;
     }
     $tab->addRow("Loaded {$e} episodes");
     $tab->addRow("Updated {$u} episodes");
     if (mUserdata::getGlobalSettingValue("trinityDBdlCover", "0") == "1") {
         $bannerList = new SimpleXMLElement(dirname($tempFile) . "/SerieID" . $S->getID() . "/banners.xml", null, true);
         foreach ($bannerList as $banner) {
             if ($banner->BannerType . "" == "poster") {
                 #echo $banner->BannerPath."";
                 $cover = file_get_contents("http://www.thetvdb.com/banners/" . $banner->BannerPath);
                 $temp = Util::getTempFilename("cover", "jpg");
                 file_put_contents($temp, $cover);
                 if ($S->A("dir") != "" and file_exists($S->A("dir"))) {
                     file_put_contents($S->A("dir") . "/Folder.jpg", $cover);
                 }
                 $S->changeA("cover", DBImageGUI::stringifyS("image/jpg", $temp));
                 $S->changeA("coverThumb", DBImageGUI::stringifyS("image/png", $temp, 150, 220));
                 #$S->saveMe();
                 unlink($temp);
                 $tab->addRow("Downloaded cover");
                 break;
             }
         }
     }
     $S->saveMe(true, false);
     if ($echo) {
         echo $tab;
     }
 }
Beispiel #13
0
 function saveSingle2($table, $id, $A)
 {
     #if(PHYNX_MYSQL_STRICT)
     #	$this->fixTypes($table, $A);
     $fields = PMReflector::getAttributesArray($A);
     $sql = "UPDATE {$table} SET";
     for ($i = 0; $i < count($fields); $i++) {
         $f = $fields[$i];
         #print_r($A->$f);
         #if(!is_numeric($A->$fields[$i]))
         $sql .= ($i > 0 ? "," : "") . " " . $fields[$i] . " = '" . $this->cWrite->real_escape_string($A->{$f}) . "'";
         #else $sql .= ($i > 0 ? "," : "")." ".$fields[$i]." = ".$A->$fields[$i]."";
     }
     $sql .= " WHERE " . $table . "ID = '{$id}'";
     $_SESSION["messages"]->addMessage("executing MySQL: {$sql}");
     $this->cWrite->query($sql);
     DBStorage::$queryCounter++;
     if ($this->cWrite->error and $this->cWrite->errno == 1062) {
         throw new DuplicateEntryException($this->cWrite->error);
     }
     if ($this->cWrite->error) {
         Red::errorD($this->cWrite->error);
     }
     if ($this->cWrite->error and PHYNX_USE_SYSLOG) {
         syslog(LOG_ERR, "MySQL: " . $this->cWrite->error . "(" . $this->cWrite->errno . ") in {$sql}");
     }
 }
Beispiel #14
0
 function handleForm($valuesAssocArray)
 {
     $this->classes();
     switch ($valuesAssocArray["action"]) {
         case "handleTickets":
             $_SESSION["ticketDataTickets"] = $valuesAssocArray;
             $_SESSION["ticketStep"] = 3;
             break;
         case "handleAddress":
             $_SESSION["ticketDataAddress"] = $valuesAssocArray;
             $_SESSION["ticketStep"] = 4;
             break;
         case "handlePayment":
             $_SESSION["ticketDataPayment"] = $valuesAssocArray;
             $_SESSION["ticketStep"] = 5;
             break;
         case "handleSelection":
             $allZero = true;
             foreach ($valuesAssocArray as $k => $v) {
                 if ($v > 0) {
                     $allZero = false;
                 }
             }
             if ($allZero) {
                 Red::alertD("Bitte wählen Sie bei mindestens einer Veranstaltung Karten aus.");
             }
             $SeminarData = array();
             foreach ($valuesAssocArray as $k => $v) {
                 if (stripos($k, "AnzahlKarten") === false) {
                     continue;
                 }
                 $SeminarData[str_replace("AnzahlKarten", "", $k)] = $v;
             }
             if (count($SeminarData)) {
                 $_SESSION["ticketDataSelection"] = $SeminarData;
                 $_SESSION["ticketStep"] = 2;
             }
             break;
     }
 }
 public function testMail($mailfrom, $mailto)
 {
     #parse_str($data, $out);
     #print_r($out);
     if ($mailfrom == "") {
         Red::errorD("Bitte geben Sie einen Absender ein!");
     }
     if ($mailto == "") {
         Red::errorD("Bitte geben Sie einen Empfänger ein!");
     }
     try {
         $mail = new htmlMimeMail5(substr($mailfrom, stripos($mailfrom, "@") + 1));
     } catch (Exception $e) {
         die("<p style=\"padding:5px;color:red;\">Fehler beim Übergeben der E-Mail. " . $e->getMessage() . "</p>");
     }
     $mail->setFrom("phynx Mailtest <" . $mailfrom . ">");
     if (!ini_get('safe_mode')) {
         $mail->setReturnPath($mailfrom);
     }
     $mail->setSubject("phynx Mailtest");
     $mail->setText(wordwrap("Diese Nachricht wurde vom phynx Mailtester erzeugt. Ihre E-Mail-Einstellungen sind korrekt.", 80));
     $adressen = array();
     $adressen[] = $mailto;
     if ($mail->send($adressen)) {
         echo "<p style=\"padding:5px;color:green;\">E-Mail erfolgreich übergeben.</p>";
     } else {
         echo "<p style=\"padding:5px;color:red;\">Fehler beim Übergeben der E-Mail. Bitte überprüfen Sie Ihre Server-Einstellungen.<br />Fehler: " . nl2br(print_r($mail->errors, true)) . "</p>";
     }
     /*$mimeMail2 = new PHPMailer(false, substr($mailfrom, stripos($mailfrom, "@") + 1));
     		$mimeMail2->CharSet = "UTF-8";
     		$mimeMail2->Subject = "phynx Mailtest V2";
     		
     		$mimeMail2->From = $mailfrom;
     		$mimeMail2->Sender = $mailfrom;
     		$mimeMail2->FromName = "phynx Mailtest";
     		
     		$mimeMail2->Body = wordwrap("Diese Nachricht wurde vom phynx Mailtester erzeugt. Ihre E-Mail-Einstellungen sind korrekt.", 80);
     		$mimeMail2->AddAddress($mailto);
     		
     		if($mimeMail2->Send())
     			echo "<p style=\"padding:5px;color:green;\">E-Mail 2 erfolgreich übergeben.</p>";
     		else
     			echo "<p style=\"padding:5px;color:red;\">Fehler beim Übergeben der E-Mail 2. Bitte überprüfen Sie Ihre Server-Einstellungen.<br />Fehler: ".nl2br(print_r($mimeMail2->ErrorInfo, true))."</p>";*/
 }
 public function testMail($mailfrom, $mailto)
 {
     #parse_str($data, $out);
     #print_r($out);
     if ($mailfrom == "") {
         Red::errorD("Bitte geben Sie einen Absender ein!");
     }
     if ($mailto == "") {
         Red::errorD("Bitte geben Sie einen Empfänger ein!");
     }
     $mail = new htmlMimeMail5();
     $mail->setFrom("phynx Mailtest <" . $mailfrom . ">");
     if (!ini_get('safe_mode')) {
         $mail->setReturnPath($mailfrom);
     }
     $mail->setSubject("phynx Mailtest");
     $mail->setText(wordwrap("Diese Nachricht wurde vom phynx Mailtester erzeugt. Ihre E-Mail-Einstellungen sind korrekt.", 80));
     $adressen = array();
     $adressen[] = $mailto;
     if ($mail->send($adressen)) {
         echo "<p style=\"padding:5px;color:green;\">E-Mail erfolgreich übergeben.</p>";
     } else {
         echo "<p style=\"padding:5px;color:red;\">Fehler beim Übergeben der E-Mail. Bitte überprüfen Sie Ihre Server-Einstellungen.<br />Fehler: " . nl2br(print_r($mail->errors, true)) . "</p>";
     }
 }
Beispiel #17
0
 public function processUpload($fileName)
 {
     $ex = explode(".", strtolower($fileName));
     $mime = null;
     if ($ex[count($ex) - 1] == "ogg") {
         $mime = "ogg";
     }
     if ($ex[count($ex) - 1] == "mp3") {
         $mime = "mp3";
     }
     if ($mime == null) {
         Red::alertD("Datei unbekannt. Bitte verwenden Sie ogg oder mp3-Dateien.");
     }
     $tempDir = Util::getTempFilename();
     unlink($tempDir);
     $tempDir = dirname($tempDir);
     $filePath = $tempDir . "/" . $fileName . ".tmp";
     echo FileStorage::getFilesDir() . $fileName;
     if (!copy($filePath, FileStorage::getFilesDir() . $fileName)) {
         Red::errorD("Der Upload ist fehlgeschlagen!");
     }
     unlink($filePath);
 }
 public function setUserdata($name, $wert, $typ = "", $UserID = 0, $echoSaved = false)
 {
     if ($UserID != 0 and $_SESSION["S"]->isUserAdmin() == "0") {
         echo "Only an admin-user can change Userdata of other users!";
         exit;
     }
     if ($typ == "uRest" and $_SESSION["S"]->isUserAdmin() == "0") {
         echo "Only an admin-user can change restrictions!";
         exit;
     }
     if ($UserID == 0) {
         $UserID = $_SESSION["S"]->getCurrentUser()->getID();
     }
     $UD = $this->getUserdata($name, $UserID);
     if ($UD == null) {
         $nUD = new Userdata(-1);
         $nUDA = $nUD->newAttributes();
         $nUDA->UserID = $UserID;
         $nUDA->name = $name;
         $nUDA->wert = $wert;
         $nUDA->typ = $typ;
         $nUD->setA($nUDA);
         $nUD->newMe();
         $this->collector[] = $nUD;
     } else {
         $UD->saveNewValue($wert);
     }
     if ($echoSaved) {
         Red::messageSaved();
     }
 }
Beispiel #19
0
 public static function checkRestrictionOrDie($restriction)
 {
     if ($_SESSION["S"]->getCurrentUser() == null) {
         return;
     }
     #throw new Exception("No user authenticated with the system!");
     if ($_SESSION["S"]->isUserAdmin()) {
         return;
     }
     $UD = new mUserdata();
     $UD->addAssocV3("wert", "=", $restriction);
     $UD->addAssocV3("UserID", "=", $_SESSION["S"]->getCurrentUser()->getID());
     $sUD = $UD->getNextEntry();
     if ($sUD != null) {
         Red::errorD("Diese Aktion ist nicht erlaubt!");
     }
 }
Beispiel #20
0
 public function saveAppServer($value)
 {
     mUserdata::setUserdataS("AppServer", $value, "", -1);
     Red::messageSaved();
 }
Beispiel #21
0
 public static function checkRestrictionOrDie($restriction)
 {
     if ($_SESSION["S"]->getCurrentUser() == null) {
         return;
     }
     #throw new Exception("No user authenticated with the system!");
     if ($_SESSION["S"]->isUserAdmin()) {
         return;
     }
     if (SpeedCache::inStaticCache("checkRestrictionOrDie{$restriction}")) {
         $sUD = SpeedCache::getStaticCache("checkRestrictionOrDie{$restriction}", true);
     } else {
         $UD = new mUserdata();
         $UD->addAssocV3("wert", "=", $restriction);
         $UD->addAssocV3("UserID", "=", Session::currentUser()->getID());
         $sUD = $UD->getNextEntry();
         SpeedCache::setStaticCache("checkRestrictionOrDie{$restriction}", $sUD);
     }
     if ($sUD != null) {
         Red::errorD("Diese Aktion ist nicht erlaubt!");
     }
 }
Beispiel #22
0
 public function rename($newName)
 {
     try {
         $result = parent::rename($newName);
     } catch (Exception $e) {
         Red::errorD($e->getMessage());
     }
     if ($result === false) {
         $r = basename($this->getID());
     } else {
         $r = basename($result);
     }
     $ext = Util::ext($r);
     echo str_replace(".{$ext}", "<span style=\"color:grey;\">.{$ext}</span>", $r);
 }
 function deleteSingle($table, $keyName, $id)
 {
     if (strpos($id, FileStorage::getFilesDir()) === false) {
         Red::errorD("Die Datei kann wegen fehlender Berechtigung nicht gelöscht werden!");
     }
     if (is_dir($id)) {
         $fp = opendir($id);
         $i = 0;
         while (($file = readdir($fp)) !== false) {
             if ($file == ".") {
                 continue;
             }
             if ($file == "..") {
                 continue;
             }
             $i++;
         }
         closedir($fp);
         if ($i > 0) {
             Red::errorD("Das Verzeichnis kann nicht gelöscht werden, es ist nicht leer!");
         }
         rmdir($id);
     } else {
         if (!is_writable($id)) {
             Red::errorD("Die Datei kann wegen fehlender Berechtigung nicht gelöscht werden!");
         }
         unlink($id);
     }
 }
Beispiel #24
0
 public function processPoolUpload($dir, $fileName)
 {
     $uloadedFile = Util::getTempDir() . $fileName . ".tmp";
     if (!file_exists(FileStorage::getFilesDir() . "{$dir}")) {
         mkdir(FileStorage::getFilesDir() . "{$dir}");
     }
     if (copy($uloadedFile, FileStorage::getFilesDir() . "{$dir}/{$fileName}")) {
         unlink($uloadedFile);
     } else {
         Red::errorD("Fehler beim Upload der Datei!");
     }
 }
Beispiel #25
0
 public function lostPassword($username)
 {
     // <editor-fold defaultstate="collapsed" desc="Aspect:jP">
     try {
         $MArgs = func_get_args();
         return Aspect::joinPoint("around", $this, __METHOD__, $MArgs);
     } catch (AOPNoAdviceException $e) {
     }
     Aspect::joinPoint("before", $this, __METHOD__, $MArgs);
     // </editor-fold>
     if ($username == "") {
         Red::errorC("User", "lostPasswordErrorUser");
     }
     $Lang = $this->loadLanguageClass("User")->getText();
     $ac = new anyC();
     $ac->setCollectionOf("User");
     $ac->addAssocV3("username", "=", $username);
     $ac->lCV3();
     $U = $ac->getNextEntry();
     if ($U == null) {
         try {
             $AL = new mphynxAltLogin();
             $AL->addAssocV3("username", "=", $username);
             $U = $AL->getNextEntry();
         } catch (Exception $e) {
             Red::errorC("User", "lostPasswordErrorUser");
         }
     }
     if ($U == null) {
         Red::errorC("User", "lostPasswordErrorUser");
     }
     $Admin = new anyC();
     $Admin->setCollectionOf("User");
     $Admin->addAssocV3("isAdmin", "=", "1");
     $Admin = $Admin->getNextEntry();
     if ($Admin == null) {
         Red::errorC("User", "lostPasswordErrorAdmin");
     }
     if ($Admin->A("UserEmail") == "") {
         Red::errorC("User", "lostPasswordErrorAdmin");
     }
     $mail = new htmlMimeMail5();
     $mail->setFrom("phynx@" . $_SERVER["HTTP_HOST"]);
     $mail->setSubject("[phynx] Password recovery for user {$username}");
     $mail->setText(wordwrap("Dear " . $Admin->A("name") . ",\n\nyou received this email because the user '{$username}' of the phynx framework at {$_SERVER['HTTP_HOST']} has lost his password and is requesting a new one.\n\nBest regards\n\tphynx", 80));
     if (!$mail->send(array($Admin->A("UserEmail")))) {
         Red::errorC("User", "lostPasswordErrorAdmin");
     }
     Red::alertC("User", "lostPasswordOK");
 }
Beispiel #26
0
    $userHiddenPlugins = mUserdata::getHiddenPlugins();
}
if (isset($userHiddenPlugins[$_GET["p"]])) {
    Red::errorD("Sie haben keine Berechtigung, diese Seite zu betrachten!");
}
if (isset($_GET["bps"])) {
    $_SESSION["BPS"]->setByString($_GET["bps"]);
}
$_GET["p"] = str_replace("GUI", "", $_GET["p"]);
$n = $_GET["p"] . "GUI";
try {
    $b = new $n(isset($_GET["id"]) ? $_GET["id"] : "-1");
} catch (ClassNotFoundException $e) {
    Red::errorClass($n);
}
if (!PMReflector::implementsInterface($n, "iGUIHTMLMP2") and !PMReflector::implementsInterface($n, "iGUIHTML2")) {
    Red::errorD("Class {$_GET['p']}GUI needs to implement the interface iGUIHTML2 or iGUIHTMLMP2!");
}
try {
    echo $b->getHTML(isset($_GET["id"]) ? $_GET["id"] : "-1", isset($_GET["page"]) ? $_GET["page"] : 0);
} catch (TableDoesNotExistException $e) {
    Red::errorD("Die Datenbank-Tabelle (" . $e->getTable() . ") dieses Plugins wurde noch nicht angelegt. Bitte verwenden Sie das Installations-Plugin im Administrationsbereich.");
} catch (DatabaseNotSelectedException $e) {
    Red::errorD("Keine Datenbank ausgewählt. Bitte verwenden Sie das Installations-Plugin im Administrationsbereich.");
} catch (NoDBUserDataException $e) {
    Red::errorD("Die Datenbank-Zugangsdaten sind falsch. Bitte verwenden Sie das Installations-Plugin im Administrationsbereich.");
} catch (FieldDoesNotExistException $e) {
    Red::errorUpdate();
} catch (DatabaseNotFoundException $e) {
    Red::errorD("Keine Datenbank ausgewählt. Bitte verwenden Sie das Installations-Plugin im Administrationsbereich.");
}
Beispiel #27
0
 public function saveContextMenu($identifier, $key)
 {
     switch ($identifier) {
         case "multiPageSettings":
             $s = explode(":", $key);
             $z = Util::parseFloat("de_DE", $s[1]);
             if ($z == null) {
                 Red::alertD("Bitte geben Sie eine Zahl ein");
             }
             if ($z > 50) {
                 $z = 50;
             }
             $mU = new mUserdata();
             $mU->setUserdata("entriesPerPage{$s['0']}", floor($z));
             break;
         case "filterCategories":
             $c = explode("--", $key);
             $keys = explode(";", $c[1]);
             $ausgeblendet = array();
             foreach ($keys as $k => $v) {
                 if (strpos($v, ":1") !== false) {
                     $ausgeblendet[] = str_replace(":1", "", $v);
                 }
             }
             $mU = new mUserdata();
             $mU->setUserdata("filteredCategoriesInHTMLGUI{$c['0']}", implode(";", $ausgeblendet));
             echo implode(";", $ausgeblendet);
             break;
         case "searchFilter":
             $v = explode(";:;", $key);
             $mU = new mUserdata();
             if ($v[1] == "") {
                 $mU->delUserdata("searchFilterInHTMLGUI{$v['0']}");
             } else {
                 $mU->setUserdata("searchFilterInHTMLGUI{$v['0']}", $v[1]);
             }
             break;
         case "setOrderByField":
             $v = split(";:;", $key);
             $mU = new mUserdata();
             if ($v[1] != "default") {
                 $mU->setUserdata("OrderByFieldInHTMLGUI{$v['0']}", $v[1]);
             } else {
                 $mU->delUserdata("OrderByFieldInHTMLGUI{$v['0']}");
             }
             break;
         case "deleteFilters":
             $mU = new mUserdata();
             $mU->delUserdata("filteredCategoriesInHTMLGUI{$key}");
             $mU = new mUserdata();
             $mU->delUserdata("searchFilterInHTMLGUI{$key}");
             #echo "message:'$key'";
             break;
     }
 }
Beispiel #28
0
 public function switchApplication($application)
 {
     $allowedApplications = Environment::getS("allowedApplications", null);
     if ($allowedApplications != null and !in_array($application, $allowedApplications)) {
         Red::errorD("Bitte wenden Sie sich an den Support, wenn Sie {$application} verwenden möchten");
     }
     ob_start();
     $U = new UsersGUI();
     $c = $this->getCurrentUser();
     $d = array();
     $d["loginUsername"] = $c->getA()->username;
     $d["loginSHAPassword"] = $c->getA()->SHApassword;
     $d["loginSprache"] = $c->getA()->language;
     $d["anwendung"] = $application;
     $U->doLogin($d);
     ob_end_clean();
 }
Beispiel #29
0
 function handleForm($valuesAssocArray)
 {
     switch ($valuesAssocArray["action"]) {
         case "login":
             if (!Users::login($valuesAssocArray["benutzer"], sha1($valuesAssocArray["password"]), "open3A", "default", true)) {
                 Red::errorD("Benutzer/Passwort unbekannt");
             }
             break;
     }
 }
Beispiel #30
0
 public function processAttachmentUpload($filesDir, $fileName)
 {
     $uloadedFile = Util::getTempDir() . $fileName . ".tmp";
     if (copy($uloadedFile, FileStorage::getFilesDir() . "{$filesDir}/{$fileName}")) {
         unlink($uloadedFile);
     } else {
         Red::errorD("Fehler beim Upload der Datei!");
     }
 }