function Attack_add() { $data = $_SESSION['steps']; if ($data['addattack']) { unset($_SESSION['steps']['addattack']); $attid = param_num("id"); if (!$attid) { $this->_header(); } $this->forms['information']['action'] = ""; $this->forms['information']['url'] = "attplan.php?action=view&id={$attid}"; $this->forms['information']['title'] = "Angriffsplan erstellen"; $this->forms['information']['message'] = "Angriffsplan wurde hinzugefügt"; $this->forms['information']['style'] = "green"; $this->show('message_information', "Angriffsplan erstellen"); } $form = new formContainer(); $form->add(new formInput("title", "Titel", "string", true, 255)); $form->add(new formInput("descr", "Beschreibung", "string", true, null, true)); $form->add(new formInput("reserve_date", "Datum für die Reservierung", "date", false, 40, true, "'(\\d{1,2})\\.(\\d{1,2})\\.(\\d{2,4})'is")); $form->add(new formInput("reserve_time", "Startzeit für die Reservierung", "time", false, 40, true, "'(\\d{1,2}):(\\d{2})'is")); $form->add(new formRadio("hidden", "Plan verstecken", "numeric", array(1, 0))); if ($_POST['send']) { $form->submit(); if ($form->get("reserve_date") && !$form->get("reserve_time") || !$form->get("reserve_date") && $form->get("reserve_time")) { $form->setError("reserve_date"); $form->setError("reserve_time"); $form->addError("Datum und Uhrzeit für den Start der Reservierung müssen beide ausgefüllt sein"); } if (!$form->hasErrors()) { if ($form->get("reserve_date")) { $date = $form->getregex("reserve_date"); $time = $form->getregex("reserve_time"); $reserve = mktime($time[1], $time[2], 0, $date[2], $date[1], $date[3]); } $id = attack_add($form->get("title"), $this->userdata['uid'], $form->get("descr"), $reserve, $form->get("hidden")); $_SESSION['steps']['addattack'] = 1; $this->_header("attplan.php?action=add&id={$id}&send"); } } else { $form->select("hidden", 0); $form->set("reserve_date", date("d.m.Y")); $form->set("reserve_time", date("H:i")); } $form->registerVars(&$this->template); $this->show("attplan_add", "Attplaner"); }
function Incoming_addatter() { $checkfleet = array("jaeger" => "Jäger", "bomber" => "Bomber", "fregatten" => "Fregatten", "zerstoerer" => "Zerstörer", "kreuzer" => "Kreuzer", "schlachter" => "Schlachter", "traeger" => "Träger", "kleptoren" => "Kleptoren", "cancris" => "Cancris", "prec" => "Scangenauigkeit", "svs" => "Scanverstärker"); if ($_SESSION['steps']['addatter']) { unset($_SESSION['steps']['addatter']); $this->forms['information']['url'] = $this->backtracking->backlink(); $this->forms['information']['action'] = ""; $this->forms['information']['title'] = "Incoming melden"; $this->forms['information']['message'] = "Inc eingetragen"; $this->forms['information']['style'] = "green"; $this->show('message_information', "Incoming melden"); } $form = new formContainer(); foreach ($checkfleet as $key => $value) { $form->add(new formInput($key, $value, "numeric", true, 20, true)); } $form->add(new formInput("gala", "Zielgalaxie", "numeric", true, 20)); $form->add(new formInput("pos", "Zielposition", "numeric", true, 20)); $form->add(new formInput("agala", "Angreifergalaxie", "numeric", true, 20)); $form->add(new formInput("apos", "Angreiferposition", "numeric", true, 20)); $form->add(new formInput("time", "ETA bis zur Ankunft", "string", true, 255)); $form->add(new formSelectBox("fleet", "Flottennummer", "numeric", array(array("title" => "Flotte 1", "value" => "1"), array("title" => "Flotte 2", "value" => "2")), false)); if ($_POST['send']) { $form->submit(); if (!$form->hasErrors() && strlen($form->get("time"))) { $time = $form->get("time"); if (preg_match("/^(\\d+?):(\\d+?)\$/i", $time, $result)) { $eta = $result[1] * 60 + $result[2]; } elseif (is_numeric($time)) { $eta = $time; } else { $form->setError("time"); $form->addError("ETA: Ungültige Zeit"); } } $tgala = $form->get("gala"); $tpos = $form->get("pos"); $gala = $form->get("agala"); $pos = $form->get("apos"); $fleetnum = $form->get("fleet"); #user existiert nicht if (!$form->hasErrors() && !($user = user_get_bypos($tgala, $tpos))) { $form->setError(array("gala", "pos")); $form->adderror("User existiert nicht"); } if (!$form->hasErrors() && ($user = user_get_bypos($gala, $pos))) { $form->setError(array("agala", "apos")); $form->adderror("Angreifer ist Metamitglied!"); } foreach ($checkfleet as $key => $item) { if (strlen($form->get($key)) > 0) { if (isset($fleetdata)) { $fleetdata = array(); } $fleetdata[$key] = $form->get($key); } } if (!$form->hasErrors() && (!$form->get("fleet") && $fleetdata)) { $form->adderror("Flottendaten ohne Flottennummer ist nicht zulässig!"); $form->setError("fleet"); } if (!$form->hasErrors() && count(fleetstatus_get_bykoords($gala, $pos)) == 2) { $form->adderror("Es sind bereits 2 Flotten von {$gala}:{$pos} eingetragen"); $form->setError("fleet"); } if (!$form->hasErrors() && $fleetnum && ($info = fleetstatus_get_bykoords($gala, $pos, $fleetnum))) { $form->adderror("Angreifer bereits eingetragen: attet (" . $info['tgala'] . ":" . $info['tpos'] . ")"); $form->setError("fleet"); $form->setError("agala"); $form->setError("apos"); } if (!$form->hasErrors()) { atter_add($form->get("agala"), $form->get("apos"), $form->get("gala"), $form->get("pos"), $form->get("fleet"), $eta, $fleetdata); $_SESSION['steps']['addatter'] = 1; $this->_header("takscreen.php?action=addatter&send"); } } $form->registerVars($this->template); $this->show('takscreen_atter_add', "Incoming melden"); }
function User_fleet_parser() { $id = param_num("id"); if ($id) { $user = getUserByID($id); if (!$user) { $this->_header(); } $this->template->assign("id", $id); } else { $id = $this->userdata['uid']; } $data = $_SESSION['steps']; #information message, step 2 if ($data['fleetparser']) { #unset step unset($data['fleetparser']); $_SESSION['steps'] = $data; $this->forms['information']['url'] = $this->backtracking->backlink(); $this->forms['information']['title'] = "Flotte/Deff updaten"; $this->forms['information']['message'] = "Flotte/Deff aktualisiert"; $this->forms['information']['style'] = "green"; $this->show('message_information', "Flotte/Deff updaten"); } $form = new formContainer(); $form->add(new formInput("fleet", "Text", "string")); if ($_POST['send'] && $_POST['next_x']) { $form->submit(); if (!$form->hasErrors()) { $text = $form->get("fleet"); if (!($taktik = parse_taktikansicht($text))) { $fleets = parse_user_flottenbewegung($text, $this->userdata["gala"], $this->userdata["pos"]); //echo "<pre>".print_r($fleets,1)."</pre>"; $deff = parse_user_verteidigung($text); if ($fleets === false && $deff === false) { $form->setError("fleet"); $form->addError("es konnte nichts erkannt werden"); } } else { $fleets = $taktik[0]['fleets']; $deff = $taktik[0]['deff']; } if (!$form->hasErrors()) { $_SESSION['steps']['fleetparser'] = 1; if (!($fleets === false)) { user_fleets_update($id, $fleets); } if (!($deff === false)) { user_deff_update($id, $deff); } $this->_header("user.php?action=fleetparser&send"); } } } $form->registerVars($this->template); $this->show("user_fleetupdate_parser", "Flottenupdate"); }