/** * Construct */ public function __construct() { $this->ff = ff::get_ff(); $this->ff->needaccess(2); redirect::store("medlemmer?ff_id={$this->ff->id}"); $this->page_handle(); $this->ff->load_page(); }
/** * Construct */ public function __construct() { $this->ff = ff::get_ff(); $this->ff->needaccess(true); ess::$b->page->add_title("Logg"); $this->show(); $this->ff->load_page(); }
/** * Construct */ public function __construct() { $this->ff = ff::get_ff(); $this->ff->needtype("bank"); $this->ff->needaccess(3); redirect::store("bank?ff_id={$this->ff->id}"); ess::$b->page->add_title("Bankkontroll"); $this->page_handle(); $this->ff->load_page(); }
/** * Construct */ public function __construct() { $this->ff = ff::get_ff(); $this->ff->needaccess(2, "Du har ikke tilgang til denne banken."); $this->priority_write = $this->ff->get_bank_write_priority(); if (false && !access::has("admin")) { echo ' <div class="bg1_c xsmall"> <h1 class="bg1">' . ucfirst($this->ff->type['type']) . 'bank stengt<span class="left"></span><span class="right"></span></h1> <div class="bg1"> <p>' . ucfirst($this->ff->type['type']) . 'banken er stengt for å unngå distribusjon av penger. Pengenivået vil bli justert til å være ihht. verdiene ved midnatt.</p> </div> </div>'; $this->ff->load_page(); } redirect::store("banken?ff_id={$this->ff->id}"); ess::$b->page->add_title("Banken"); $this->nostat = access::is_nostat() && login::$user->player->id != 1; // kontroller at vi har bankkonto if (!login::$user->player->user->data['u_bank_auth']) { ess::$b->page->add_message("Banken for {$this->ff->type['refobj']} benytter seg av passordet i din vanlige bank. For å få tilgang til den må du først opprette et passord. Etter du har opprettet et passord kan du gå tilbake til banken til {$this->ff->type['refobj']}."); redirect::handle("banken", redirect::ROOT); } // kontroller at vi er logget inn i banken $this->auth_verify(); // gi/fjerne tilgang for medeier? if ((isset($_POST['pri2_wt']) || isset($_POST['pri2_wf'])) && validate_sid()) { $this->pri2_access(); } // vise statistikk if (isset($_GET['stats'])) { $this->stats(); } // sette inn penger? if (isset($_POST['bank_inn']) && !$this->nostat && $this->ff->access($this->priority_write)) { $this->sett_inn(); } // ta ut penger if (isset($_POST['bank_ut']) && !$this->nostat && $this->ff->access($this->priority_write)) { $this->ta_ut(); } // vis banken $this->show(); $this->ff->load_page(); }
/** * Construct */ public function __construct() { $this->ff = ff::get_ff(); if ($this->ff->type['type'] != "familie" || $this->ff->data['ff_is_crew']) { $this->ff->needtype("bomberom"); } $this->ff->needaccess(true); $this->fam = $this->ff->type['type'] == "familie"; // konkurrerende broderskap har ikke bomberom if ($this->ff->competition) { ess::$b->page->add_message("Broderskapet er i konkurransemodus og har derfor ikke et aktivt bomberom.", "error"); $this->ff->redirect(); } redirect::store("bomberom?ff_id={$this->ff->id}"); ess::$b->page->add_title("Bomberommet"); // sjekk om vi kan kaste ut nå $this->check_kick_hour(); $this->kick_access = $this->ff->access($this->ff->type['type'] == "familie" ? 2 : true); // behandle forespørselen $this->page_handle(); // last inn siden $this->ff->load_page(); }
/** * Flytt artikkel rundt i utgivelsen */ protected function pub_ffna_move(ff_avis_utgivelse $ffn) { $this->ff->needaccess(2); ess::$b->page->add_title("Flytt artikkel"); // publisert? if ($ffn->data['ffn_published'] != 0 && !$this->ff->mod) { ess::$b->page->add_message("Utgivelsen er publisert og kan ikke endres.", "error"); redirect::handle(); } // hent informasjon $ffna_id = intval(getval("move_ffna")); $result = \Kofradia\DB::get()->query("SELECT ffna_id, ffna_created_time, ffna_up_id, ffna_updated_time, ffna_title, LENGTH(ffna_text) AS ffna_text_length, ffna_theme_position, ffna_theme_priority, ffna_published_time, ffna_price FROM ff_newspapers_articles WHERE ffna_id = {$ffna_id} AND ffna_ffn_id = {$ffn->id}"); $ffna = $result->fetch(); if (!$ffna) { ess::$b->page->add_message("Fant ikke artikkelen.", "error"); redirect::handle(); } // hent alle artiklene som er lagt til i utgivelsen $result = \Kofradia\DB::get()->query("SELECT ffna_id, ffna_title, ffna_theme_position, ffna_theme_priority FROM ff_newspapers_articles WHERE ffna_ffn_id = {$ffn->id} ORDER BY ffna_theme_priority"); $articles = array(); while ($row = $result->fetch()) { $articles[$row['ffna_theme_position']][$row['ffna_id']] = $row; } $template = ff_avis::$templates[$ffn->data['ffn_template']]; // valgt plassering? if (isset($_POST['theme_position'])) { $position = postval("theme_position"); if (($pos = mb_strpos($position, ":")) === false) { ess::$b->page->add_message("Du må velge en plassering.", "error"); } else { // kontroller verdier $area = mb_substr($position, 0, $pos); $priority = intval(mb_substr($position, $pos + 1)); $add = $area == $ffna['ffna_theme_position'] ? 0 : 1; if (!isset($template['areas'][$area]) || $priority <= 0) { ess::$b->page->add_message("Ugyldig plassering.", "error"); } else { // sjekk priority if (isset($articles[$area]) && $priority > count($articles[$area]) + $add || !isset($articles[$area]) && $priority != 1) { ess::$b->page->add_message("Ugyldig plassering.", "error"); } elseif ($area == $ffna['ffna_theme_position'] && $priority == $ffna['ffna_theme_priority']) { ess::$b->page->add_message("Ingen endringer ble utført."); redirect::handle(); } else { // flytt artikler (for fjerning) \Kofradia\DB::get()->exec("UPDATE ff_newspapers_articles SET ffna_theme_priority = ffna_theme_priority - 1 WHERE ffna_ffn_id = {$ffn->id} AND ffna_theme_position = " . \Kofradia\DB::quote($ffna['ffna_theme_position']) . " AND ffna_theme_priority > {$ffna['ffna_theme_priority']}"); // flytt artikler (for oppretting/flytting) \Kofradia\DB::get()->exec("UPDATE ff_newspapers_articles SET ffna_theme_priority = ffna_theme_priority + 1 WHERE ffna_ffn_id = {$ffn->id} AND ffna_theme_position = " . \Kofradia\DB::quote($area) . " AND ffna_theme_priority >= {$priority}"); // oppdater artikkelen \Kofradia\DB::get()->exec("UPDATE ff_newspapers_articles SET ffna_theme_position = " . \Kofradia\DB::quote($area) . ", ffna_theme_priority = {$priority} WHERE ffna_id = {$ffna_id}"); ess::$b->page->add_message("Artikkelen ble flyttet."); redirect::handle(); } } } } // vis informasjon echo ' <p class="c">Flytt artikkel | <a href="avis?ff_id=' . $this->ff->id . '&u&ffn=' . $ffn->id . '">Tilbake</a></p> <div class="section center w250"> <h2>Artikkelinformasjon</h2> <dl class="dd_right"> <dt>Tittel</dt> <dd><a href="avis?ff_id=' . $this->ff->id . '&a&ffna=' . $ffna['ffna_id'] . '&to_ffn=' . $ffn->id . '">' . htmlspecialchars($ffna['ffna_title']) . '</a></dd> <dt>Journalist</dt> <dd><user id="' . $ffna['ffna_up_id'] . '" /></dd> <dt>Opprettet</dt> <dd>' . ess::$b->date->get($ffna['ffna_created_time'])->format() . '</dd> <dt>Sist endret</dt> <dd>' . ess::$b->date->get($ffna['ffna_updated_time'])->format() . '</dd> <dt>Publisert</dt> <dd>' . ess::$b->date->get($ffna['ffna_published_time'])->format() . '</dd> <dt>Antall tegn</dt> <dd>' . game::format_number($ffna['ffna_text_length']) . '</dd> <dt>Pris</dt> <dd>' . game::format_cash($ffna['ffna_price']) . '</dd> </dl> </div> <form action="" method="post"> <div class="section center w300"> <h2>Velg plassering</h2> <dl class="dd_right"> <dt>Plassering</dt> <dd> <select name="theme_position"> <option value="">Velg plassering</option>'; $pos = $ffna['ffna_theme_position']; $pri = $ffna['ffna_theme_priority']; // vis plasseringsalterantivene foreach ($template['areas'] as $key => $area) { $here = $key == $pos; $add = 1; echo ' <optgroup label="' . htmlspecialchars($area) . '">'; if (isset($articles[$key])) { echo ' <option value="' . htmlspecialchars($key) . ':1"' . ($here && $pri == 1 ? ' selected="selected"' : '') . '>' . htmlspecialchars($area) . ' (øverst)' . ($here && $pri == 1 ? ' (valgt)' : '') . '</option>'; foreach ($articles[$key] as $row) { if ($ffna['ffna_id'] == $row['ffna_id']) { $add = 0; continue; } echo ' <option value="' . htmlspecialchars($key) . ':' . ($row['ffna_theme_priority'] + $add) . '"' . ($here && $pri == $row['ffna_theme_priority'] + 1 ? ' selected="selected"' : '') . '>Etter «' . htmlspecialchars($row['ffna_title']) . '»' . ($here && $pri == $row['ffna_theme_priority'] + 1 ? ' (valgt)' : '') . '</option>'; } } else { echo ' <option value="' . htmlspecialchars($key) . ':1"' . ($here && $pri == 1 ? ' selected="selected"' : '') . '>' . htmlspecialchars($area) . ($here && $pri == 1 ? ' (Valgt)' : '') . '</option>'; } echo ' </optgroup>'; } echo ' </select> </dd> </dl> <p class="c">' . show_sbutton("Flytt artikkel") . '</p> </div> </form>'; }