예제 #1
0
 /**
  * Opprett auksjon for FF
  */
 public static function create_auksjon_ff(ff $ff, $start = null, $end = null)
 {
     $time = time();
     if (!$start) {
         $start = $time;
     } else {
         $start = (int) $start;
     }
     if (!$end) {
         // varighet er til 21:00 med minimum 12 timer
         $date = ess::$b->date->get();
         $date->setTime(21, 0, 0);
         $min_time = 3600 * 12;
         if ($date->format("U") < $time + $min_time) {
             $date->modify("+1 day");
         }
         $expire = $date->format("U");
     } else {
         $expire = (int) $end;
     }
     // sett opp params for ff_id
     $params = new params();
     $params->update("ff_id", $ff->id);
     // opprett auksjonen
     \Kofradia\DB::get()->exec("INSERT INTO auksjoner SET a_type = " . self::TYPE_FIRMA . ", a_title = " . \Kofradia\DB::quote($ff->data['ff_name']) . ", a_start = {$start}, a_end = {$expire}, a_bid_start = 1000000, a_bid_jump = 500000, a_active = 1, a_params = " . \Kofradia\DB::quote($params->build()));
     $a_id = \Kofradia\DB::get()->lastInsertId();
     // logg
     putlog("INFO", "%bAUKSJON:%b Auksjon for %u" . $ff->data['ff_name'] . "%u ble opprettet " . ess::$s['spath'] . "/auksjoner?a_id={$a_id}");
     // live-feed
     livefeed::add_row('<a href="' . ess::$s['rpath'] . '/auksjoner?a_id=' . $a_id . '">Auksjon</a> for <a href="' . ess::$s['rpath'] . '/ff/?ff_id=' . $ff->id . '">' . htmlspecialchars($ff->data['ff_name']) . '</a> ble opprettet.');
     self::update_cache();
 }
예제 #2
0
 /**
  * Sett oppdrag som aktivt
  * 
  * @param integer $o_id
  * @return boolean active
  */
 public function active_set($o_id)
 {
     // allerede satt som aktivt?
     if ($this->active && $this->active['o_id'] == $o_id) {
         return false;
     }
     // finnes ikke oppdraget? (må være hentet først for at vi kan fortsette)
     if (!isset($this->oppdrag[$o_id])) {
         return false;
     }
     $oppdrag =& $this->oppdrag[$o_id];
     // ikke aktivt allerede?
     if ($oppdrag['uo_active'] == 0) {
         // sjekk om noen andre oppdrag er aktive
         $result = \Kofradia\DB::get()->query("SELECT uo_o_id, uo_active_time FROM users_oppdrag WHERE uo_up_id = {$this->up->id} AND uo_active != 0 LIMIT 1");
         if ($result->rowCount() > 0) {
             $uo = $result->fetch();
             // et annet oppdrag?
             if ($uo['uo_o_id'] != $oppdrag['o_id']) {
                 // sett riktig aktivt oppdrag
                 if (!isset($this->oppdrag[$uo['uo_o_id']]) && !$this->oppdrag_loaded) {
                     $this->user_load_all();
                 }
                 $this->active_set($uo['uo_o_id']);
                 // må sette alle andre oppdrag som innaktive før vi kan begynne på et nytt oppdrag
                 return false;
             }
             $oppdrag['uo_active'] = 1;
             $oppdrag['uo_active_time'] = $uo['uo_active_time'];
         } else {
             $oppdrag['uo_active'] = 1;
             $oppdrag['uo_active_time'] = time();
             \Kofradia\DB::get()->exec("UPDATE users_oppdrag SET uo_active = 1, uo_active_time = {$oppdrag['uo_active_time']} WHERE uo_up_id = {$this->up->id} AND uo_o_id = {$oppdrag['o_id']}");
         }
     }
     // sett aktivt oppdrag
     if ($this->up->params->get("oppdrag_id") != $oppdrag['o_id']) {
         $params = new params();
         $params->params = $oppdrag;
         $this->up->params->lock();
         $this->up->params->update("oppdrag", $params->build());
         $this->up->params->update("oppdrag_id", $oppdrag['o_id'], true);
     }
     $this->active =& $oppdrag;
     // sett nye triggere
     $this->link_triggers();
     // sjekk om oppdraget er over tiden sin
     $params = $this->params[$oppdrag['o_id']]['o_params'];
     $time_start = $oppdrag['uo_active_time'];
     $time_limit = $params->get("time_limit", oppdrag::DEFAULT_TIME_LIMIT_ACTIVE);
     if ($time_start + $time_limit < time()) {
         // kontroller trigger
         if (isset($this->triggers_id[$o_id])) {
             $trigger = $this->triggers_id[$o_id];
             switch ($params->get("name")) {
                 case "single_poker":
                     // nådde vi beløpet?
                     if ($trigger['status']->get("chips") >= $trigger['trigger']->get("chips")) {
                         $this->success($o_id, 'Du klarte å spille deg opp til ' . game::format_number($trigger['status']->get("chips")) . ' chips i løpet av ' . game::timespan($time_limit, game::TIME_FULL) . ', noe som var mer enn ' . game::format_number($trigger['trigger']->get("chips")) . ' chips. Oppdraget &laquo;$name&raquo; ble vellykket!');
                     } else {
                         $this->failed($o_id, 'Du spilte deg opp til ' . game::format_number($trigger['status']->get("chips")) . ' chips i løpet av ' . game::timespan($time_limit, game::TIME_FULL) . '. Det var mindre enn ' . game::format_cash($trigger['trigger']->get("chips")) . ' chips. Oppdraget &laquo;$name&raquo; ble mislykket.');
                     }
                     break;
             }
         }
         // hvis oppdraget fortsatt er aktivt, sett det som feilet pga. tid
         if (isset($this->oppdrag[$o_id]) && $this->oppdrag[$o_id]['uo_active'] != 0) {
             $this->failed($o_id, 'Du brukte for lang tid på oppdraget &laquo;$name&raquo; og mislykket.');
         }
         return false;
     }
     return true;
 }
예제 #3
0
파일: index.php 프로젝트: Kuzat/kofradia
            $show_form = true;
        } elseif ($data == "Unknow UserID given!") {
            $_base->page->add_message("Ingen bruker er opprettet med den ID-en.", "error");
            $show_form = true;
        } else {
            // forsøk å lese data (XML)
            if (!$wp->update($data, false)) {
                $_base->page->add_message("Ukjent feil oppsto.<br /><br />" . htmlspecialchars($data));
                $show_form = true;
            } else {
                $info = array($wp->stat_info("UserID"), $wp->stat_info("AccountName"), $wp->stat_info("DateJoined"));
                // godkjent?
                if (isset($_POST['confirm'])) {
                    $params = new params();
                    $params->update("fields", "UserID,AccountName,GeneratedTime,DateJoined,Keys,AvKPS,Clicks,AvCPS");
                    $params_text = $params->build();
                    \Kofradia\DB::get()->exec("INSERT INTO stats_whatpulse SET sw_userid = {$id}, sw_up_id = " . $player->id . ", sw_time_add = " . time() . ", sw_params = " . \Kofradia\DB::quote($params_text));
                    putlog("NOTICE", "%c12%bWHATPULSE-OPPRETTELSE:%b%c (" . $player->data['up_name'] . ") la til WhatPulse til sin profil (WPID: %u{$id}%u).");
                    $_base->page->add_message("Du har nå koblet din WhatPulse konto til din konto her på Kofradia.<br />Du kan nå velge hvilke felt du ønsker å vise på profilen din.");
                    redirect::handle();
                }
                echo '
			<input type="hidden" name="hentWP" value="' . $id . '" />
			<input type="hidden" name="confirm" />
			<h3>Legg til WhatPulse informasjon (trinn 2)</h3>
			<p class="h_right"><a href="./">Avbryt</a></p>
			<p>
				Her er litt informasjon fra WhatPulse profilen du anga. Hvis dette er din WhatPulse profil som du ønsker å legge til trykk på legg til knappen nederst, eller trykk avbryt over.
			</p>
			<dl class="dl_30">';
                $i = 0;
예제 #4
0
 /**
  * Juster kapasiteten i bomberommene
  */
 public static function adjust_capacity()
 {
     // finn antall pålogget siste 48 timer
     $expire = time() - 86400 * 2;
     $result = \Kofradia\DB::get()->query("SELECT COUNT(*) FROM users_players WHERE up_access_level != 0 AND up_last_online > {$expire}");
     $ant_online = $result->fetchColumn(0);
     // for julaften og nyttår
     $d = array("12-24", "12-30", "12-31");
     $f = 1;
     if (in_array(ess::$b->date->get()->format("m-d"), $d)) {
         $f = 3;
         // 3 ganger så mange plasser
     }
     // antall som skal fordeles (minimum 5 stk)
     $ant_fordeles = max(5, ceil($ant_online * self::CAPACITY_FACTOR * $f));
     \Kofradia\DB::get()->beginTransaction();
     // hent ut alle bomberommene
     $result = \Kofradia\DB::get()->query("SELECT ff_id, ff_params FROM ff WHERE ff_type = 4 AND ff_inactive = 0 FOR UPDATE");
     $bomberom = array();
     while ($row = $result->fetch()) {
         $row['rest'] = 0;
         // antall ekstra plasser det skal settes av (de som blir fordelt tilfeldig)
         $bomberom[] = $row;
     }
     // ingen bomberom?
     $ant_bomberom = count($bomberom);
     if ($ant_bomberom == 0) {
         putlog("LOG", "BOMBEROM KAPASITET: Ingen bomberom eksisterer.");
         \Kofradia\DB::get()->commit();
         return;
     }
     // fordel plasser på bomberommene
     $per_bomberom = floor($ant_fordeles / $ant_bomberom);
     $rest = $ant_fordeles % $ant_bomberom;
     // eksta å fordele tilfeldig?
     if ($rest > 0) {
         // plukk ut tilfeldige bomberom
         $tilfeldige = (array) array_rand($bomberom, $rest);
         foreach ($tilfeldige as $key) {
             $bomberom[$key]['rest']++;
         }
     }
     // oppdater bomberommene
     foreach ($bomberom as $row) {
         // antall bomberommet skal ha plass til
         $ant = $row['rest'] + $per_bomberom;
         // frihavnen får dobbelt så mange plasser
         if ($row['ff_id'] == 44) {
             $ant += $per_bomberom;
         }
         // oppdater
         $params = new params($row['ff_params']);
         $params->update("bomberom_kapasitet", $ant);
         // lagre
         \Kofradia\DB::get()->exec("UPDATE ff SET ff_params = " . \Kofradia\DB::quote($params->build()) . " WHERE ff_id = {$row['ff_id']}");
     }
     // lagre
     \Kofradia\DB::get()->commit();
 }
예제 #5
0
파일: class.ff.php 프로젝트: Kuzat/kofradia
 /**
  * Marker en endring utført i forumet slik at den blir synlig i menyen
  */
 public function forum_changed()
 {
     \Kofradia\DB::get()->beginTransaction();
     // hent og lås params for alle medlemmer
     $result = \Kofradia\DB::get()->query("\n\t\t\tSELECT u_id, u_params\n\t\t\tFROM ff_members\n\t\t\t\tJOIN users_players ON ffm_up_id = up_id\n\t\t\t\tJOIN users ON u_id = up_u_id\n\t\t\tWHERE ffm_ff_id = {$this->id} AND ffm_status = 1\n\t\t\tFOR UPDATE");
     while ($u = $result->fetch()) {
         // hopp over den aktive brukeren
         if (login::$logged_in && $u['u_id'] == login::$user->id) {
             continue;
         }
         $params = new params($u['u_params']);
         if (!$params->exists("forums")) {
             continue;
         }
         $container = new container($params->get("forums"));
         foreach ($container->items as $key => $row) {
             if ($row[0] != "ff") {
                 continue;
             }
             if ($row[1] != $this->id) {
                 continue;
             }
             // oppdater
             if (!isset($row[4])) {
                 $row[4] = 0;
             }
             $row[4]++;
             // lagre
             $container->items[$key] = $row;
             $params->update("forums", $container->build());
             \Kofradia\DB::get()->exec("UPDATE users SET u_params = " . \Kofradia\DB::quote($params->build()) . " WHERE u_id = {$u['u_id']}");
             continue;
         }
     }
     // fullfør transaksjon
     \Kofradia\DB::get()->commit();
 }
예제 #6
0
파일: node.php 프로젝트: Kuzat/kofradia
    public static function main()
    {
        // har vi ikke tilgang?
        if (!access::has("crewet", null, null, "login")) {
            redirect::handle("/node", redirect::ROOT);
        }
        ess::$b->page->add_title("Innholdsredigering");
        nodes::add_node(0, "Innholdsredigering", ess::$s['relative_path'] . "/node/a");
        if (isset($_POST['abort']) && !isset($_GET['node_id'])) {
            ess::$b->page->add_message("Handlingen ble avbrutt.");
            redirect::handle();
        }
        // opprette ny node?
        if (isset($_GET['new_node'])) {
            $parent_node = getval("parent_node", 0);
            $previous_node = getval("previous_node", 0);
            // kontroller parent node
            if ($parent_node != 0 && !isset(nodes::$nodes[$parent_node])) {
                ess::$b->page->add_message("Fant ikke forelder til elementet. Prøv på nytt.", "error");
                redirect::handle();
            }
            // kontroller previous node
            $siblings = isset(nodes::$nodes_sub[$parent_node]) ? nodes::$nodes_sub[$parent_node] : array();
            if ($previous_node != 0 && !in_array($previous_node, $siblings)) {
                ess::$b->page->add_message("Fant ikke forrige side. Prøv på nytt.", "error");
                redirect::handle();
            }
            // finn priority
            if ($previous_node == 0) {
                $priority = 1;
                $priority_num = 1;
            } else {
                // hent priority til previous node
                $result = \Kofradia\DB::get()->query("SELECT node_priority FROM nodes WHERE node_parent_node_id = {$parent_node} AND node_id = {$previous_node} AND node_deleted = 0");
                if ($result->rowCount() == 0) {
                    ess::$b->page->add_message("Noe gikk galt. Prøv igjen.", "error");
                    redirect::handle();
                }
                $priority = $result->fetchColumn(0);
                // hent priority til den vi skal "erstatte"
                $result = \Kofradia\DB::get()->query("SELECT node_priority FROM nodes WHERE node_parent_node_id = {$parent_node} AND node_priority > {$priority} AND node_deleted = 0 ORDER BY node_priority LIMIT 1");
                if ($result->rowCount() > 0) {
                    $priority = $result->fetchColumn(0);
                } else {
                    $priority++;
                }
                // hent nummer
                $result = \Kofradia\DB::get()->query("SELECT COUNT(node_id) FROM nodes WHERE node_parent_node_id = {$parent_node} AND node_priority < {$priority} AND node_deleted = 0");
                $priority_num = $result->fetchColumn(0) + 1;
            }
            // legge til?
            if (isset($_POST['title']) && isset($_POST['type'])) {
                // ok tittel?
                $title = trim(postval("title"));
                $type = postval("type");
                if (empty($title)) {
                    ess::$b->page->add_message("Du må fylle ut en tittel.", "error");
                } elseif (!isset(nodes::$types[$type])) {
                    ess::$b->page->add_message("Ugyldig type. Prøv på nytt.", "error");
                } else {
                    // sett opp prioritys
                    \Kofradia\DB::get()->exec("UPDATE nodes SET node_priority = node_priority + 1 WHERE node_parent_node_id = {$parent_node} AND node_priority >= {$priority}");
                    // legg til side
                    \Kofradia\DB::get()->exec("INSERT INTO nodes SET node_parent_node_id = {$parent_node}, node_title = " . \Kofradia\DB::quote($title) . ", node_type = " . \Kofradia\DB::quote(mb_strtolower($type)) . ", node_priority = {$priority}, node_change = " . time());
                    $iid = \Kofradia\DB::get()->lastInsertId();
                    ess::$b->page->add_message("Siden ble lagt til.");
                    redirect::handle("node/a?node_id={$iid}", redirect::ROOT);
                }
            }
            $parent_title = isset(nodes::$nodes[$parent_node]) ? nodes::$nodes[$parent_node]['node_title'] : 'Toppnivå';
            echo '
<h1>Ny side</h1>
<form action="" method="post">
	<dl class="dd_right dl_2x">
		<dt>Forelder</dt>
		<dd>' . htmlspecialchars($parent_title) . '</dd>
		<dt>Plassering</dt>
		<dd>' . $priority_num . '</dd>
		<dt>Tittel</dt>
		<dd><input type="text" name="title" class="styled w100" value="' . htmlspecialchars(postval("title")) . '" /></dd>
		<dt>Type</dt>
		<dd>
			<select name="type">';
            $selected = postval("type");
            if (!isset(nodes::$types[$selected])) {
                $selected = false;
            }
            foreach (nodes::$types as $key => $value) {
                echo '
				<option value="' . htmlspecialchars($key) . '"' . ($selected == $key ? ' selected="selected"' : '') . '>' . htmlspecialchars($value) . '</option>';
            }
            echo '
			</select>
		</dd>
	</dl>
	<p>' . show_sbutton("Opprett side") . ' ' . show_sbutton("Avbryt", 'name="abort"') . '</p>
</form>';
            page_node::load_page();
        }
        $node = false;
        if (isset($_GET['node_id'])) {
            $result = nodes::load_node($_GET['node_id'], false);
            if (!$result) {
                ess::$b->page->add_message("Fant ikke enheten.");
                redirect::handle();
            }
            $node = true;
            #ess::$b->page->add_title(nodes::$node_info['node_title']);
            redirect::store("node/a?node_id=" . nodes::$node_id, redirect::ROOT);
            if (isset($_POST['abort'])) {
                ess::$b->page->add_message("Handlingen ble avbrutt.");
                redirect::handle();
            }
            // flytt
            if (isset($_GET['move'])) {
                // hent tree
                $root = array(0 => array("number" => 0, "prefix" => "", "prefix_node" => "", "data" => array("node_id" => 0, "node_parent_node_id" => 0, "node_title" => "Innhold (toppnivå)", "node_type" => NULL, "node_params" => NULL, "node_show_menu" => NULL, "node_expand_menu" => NULL, "node_enabled" => true, "node_priority" => 0)));
                $tree = new tree(nodes::$nodes_sub);
                $data = $tree->generate(0, $root, nodes::$nodes);
                // sett opp data og finn ut hvor ting kan plasseres
                $number_last = 1;
                $disabled = 0;
                $list = array(0 => 0);
                foreach ($data as &$row) {
                    if ($disabled != 0 && $row['number'] <= $disabled) {
                        $disabled = 0;
                    }
                    $number_last = $row['number'];
                    $row['inside'] = $disabled == 0 && nodes::$node_id != $row['data']['node_id'];
                    $row['under'] = $disabled == 0 && nodes::$node_id != $row['data']['node_id'];
                    if (nodes::$node_id == $row['data']['node_id']) {
                        if (isset($list[$row['number']])) {
                            $active = array("under", $list[$row['number']]);
                        } else {
                            $active = array("inside", $list[$row['number'] - 1]);
                        }
                        $disabled = $row['number'];
                    }
                    $list[$row['number']] = $row['data']['node_id'];
                }
                unset($row);
                $data[0]['under'] = false;
                // lagre endringer?
                if (isset($_POST['destination_node_id'])) {
                    $match = preg_match("/^(under_)?(\\d+)\$/u", postval("destination_node_id"), $matches);
                    $type = $match && $matches[1] == "under_" ? "under" : "inside";
                    $dest_node_id = $match ? $matches[2] : -1;
                    $parent_node_id = $type == "inside" ? $dest_node_id : nodes::$nodes[$dest_node_id]['node_parent_node_id'];
                    // finnes?
                    if (!isset($data[$dest_node_id])) {
                        ess::$b->page->add_message("Fant ikke målsiden.", "error");
                    } elseif (!$data[$dest_node_id][$type]) {
                        ess::$b->page->add_message("Du kan ikke plassere siden her.", "error");
                    } elseif ($type == $active[0] && $dest_node_id == $active[1]) {
                        ess::$b->page->add_message("Du må velge en ny plassering.", "error");
                    } else {
                        \Kofradia\DB::get()->beginTransaction();
                        // flytt de andre kategoriene
                        \Kofradia\DB::get()->exec("UPDATE nodes SET node_priority = node_priority - 1 WHERE node_parent_node_id = " . nodes::$node_info['node_parent_node_id'] . " AND node_priority > " . nodes::$node_info['node_priority']);
                        \Kofradia\DB::get()->exec("UPDATE nodes SET node_priority = node_priority + 1 WHERE node_parent_node_id = {$parent_node_id}" . ($type == "under" ? " AND node_priority > " . nodes::$nodes[$dest_node_id]['node_priority'] : ""));
                        // flytt den valgte siden
                        \Kofradia\DB::get()->exec("UPDATE nodes SET node_parent_node_id = {$parent_node_id}, node_priority = " . ($type == "inside" ? 0 : nodes::$nodes[$dest_node_id]['node_priority'] + 1) . " WHERE node_id = " . nodes::$node_id);
                        \Kofradia\DB::get()->commit();
                        ess::$b->page->add_message("Siden ble flyttet.");
                        redirect::handle();
                    }
                }
                // sett opp plasseringen
                $items = array();
                $parent_node = nodes::$node_info['node_parent_node_id'];
                while (isset(nodes::$nodes[$parent_node]) && ($item = nodes::$nodes[$parent_node])) {
                    $items[] = $item['node_title'];
                    $parent_node = $item['node_parent_node_id'];
                }
                $items[] = "Toppnivå";
                // tittel
                ess::$b->page->add_title("Flytt side");
                nodes::add_node(0, "Flytt side", ess::$s['relative_path'] . "/node/a?node_id=" . nodes::$node_id . "&amp;move");
                echo '
<h1>' . htmlspecialchars(nodes::$node_info['node_title']) . '</h1>
<p><a href="' . ess::$s['relative_path'] . '/node/a?node_id=' . nodes::$node_id . '">Tilbake</a></p>

<h2>Flytt side</h2>
<form action="" method="post">
	<dl class="dl_2x dd_right">
		<dt>Nåværende plassering</dt>
		<dd>' . implode("\\", array_reverse($items)) . '</dd>
		
		<dt>Ny plassering</dt>
		<dd>
			<table class="table" style="margin-left: auto">
				<thead>
					<tr>
						<th>Side</th>
						<th>Inni</th>
						<th>Nedenfor</th>
					</tr>
				</thead>
				<tbody class="c">';
                $i = 0;
                foreach ($data as $row) {
                    $i++;
                    $class = nodes::$node_id == $row['data']['node_id'] ? ' class="highlight"' : ($i % 2 == 0 ? ' class="color"' : '');
                    $link = $row['data']['node_id'] == 0 ? $row['data']['node_title'] : '<a href="' . ess::$s['relative_path'] . '/node/a?node_id=' . $row['data']['node_id'] . '">' . htmlspecialchars($row['data']['node_title']) . '</a>';
                    echo '
					<tr' . $class . '>
						<td class="l"><span class="plain">' . $row['prefix'] . $row['prefix_node'] . '</span> ' . $link . '</td>
						<td>' . ($row['inside'] ? '<input type="radio" name="destination_node_id" value="' . $row['data']['node_id'] . '"' . ($active[0] == "inside" && $active[1] == $row['data']['node_id'] ? ' checked="checked"' : '') : ' x') . '</td>
						<td>' . ($row['under'] ? '<input type="radio" name="destination_node_id" value="under_' . $row['data']['node_id'] . '"' . ($active[0] == "under" && $active[1] == $row['data']['node_id'] ? ' checked="checked"' : '') : ' x') . '</td>
					</tr>';
                }
                echo '
				</tbody>
			</table>
		</dd>
		
		<dt>&nbsp;</dt>
		<dd>' . show_sbutton("Lagre endringer") . '</dd>
	</dl>
</form>';
                page_node::load_page();
            }
            // rediger tittel
            if (isset($_GET['edit_title'])) {
                // lagre?
                if (isset($_POST['title'])) {
                    $title = postval('title');
                    if (empty($title)) {
                        ess::$b->page->add_message("Du må skrive inn en tittel.", "error");
                    } else {
                        // oppdater
                        \Kofradia\DB::get()->exec("UPDATE nodes SET node_title = " . \Kofradia\DB::quote($title) . " WHERE node_id = " . nodes::$node_id);
                        ess::$b->page->add_message("Tittelen ble endret fra &laquo;" . htmlspecialchars(nodes::$node_info['node_title']) . "&raquo; til &laquo;" . htmlspecialchars($title) . "&raquo;.");
                        redirect::handle();
                    }
                }
                echo '
<h1>Rediger tittel</h1>
<form action="" method="post">
	<dl class="dd_right dl_2x">
		<dt>Nåværende tittel</dt>
		<dd>' . htmlspecialchars(nodes::$node_info['node_title']) . '</dd>
		<dt>Ny tittel</dt>
		<dd><input type="text" name="title" class="styled w100" value="' . htmlspecialchars(postval("title", nodes::$node_info['node_title'])) . '" /></dd>
	</dl>
	<p>' . show_sbutton("Lagre") . ' ' . show_sbutton("Avbryt", 'name="abort"') . '</p>
</form>';
                page_node::load_page();
            }
            // aktiver/deaktiver
            if (isset($_GET['enabled'])) {
                $update = false;
                if ($_GET['enabled'] == "false") {
                    // deaktiver
                    if (nodes::$node_info['node_enabled'] > 0) {
                        $update = 0;
                        ess::$b->page->add_message("Siden er nå deaktivert. Alle undersider vil også være utilgjengelige.");
                    }
                } else {
                    // aktiver
                    if (nodes::$node_info['node_enabled'] == 0) {
                        $update = 1;
                        ess::$b->page->add_message("Siden er nå aktivert. Alle undersider som ikke er deaktivert vil også være tilgjengelige.");
                    }
                }
                // oppdater?
                if ($update !== false) {
                    \Kofradia\DB::get()->exec("UPDATE nodes SET node_enabled = {$update} WHERE node_id = " . nodes::$node_id);
                }
                redirect::handle();
            }
            // skjul fra/vis i menyen
            if (isset($_GET['show_menu'])) {
                $update = false;
                if ($_GET['show_menu'] == "false") {
                    // deaktiver
                    if (nodes::$node_info['node_show_menu'] > 0) {
                        $update = 0;
                        ess::$b->page->add_message("Siden blir ikke lengre vist i menyen. Alle undersider vil også bli skjult fra menyen.");
                    }
                } else {
                    // aktiver
                    if (nodes::$node_info['node_show_menu'] == 0) {
                        $update = 1;
                        ess::$b->page->add_message("Siden blir nå vist i menyen. Alle undersider som ikke er skjult vil også bli vist i menyen.");
                    }
                }
                // oppdater?
                if ($update !== false) {
                    \Kofradia\DB::get()->exec("UPDATE nodes SET node_show_menu = {$update} WHERE node_id = " . nodes::$node_id);
                }
                redirect::handle();
            }
            // vis/skjul undersider
            if (isset($_GET['expand_menu'])) {
                $update = false;
                if ($_GET['expand_menu'] == "false") {
                    // deaktiver
                    if (nodes::$node_info['node_expand_menu'] > 0) {
                        $update = 0;
                        ess::$b->page->add_message("Undersidene blir ikke lengre vist i menyen.");
                    }
                } else {
                    // aktiver
                    if (nodes::$node_info['node_expand_menu'] == 0) {
                        $update = 1;
                        ess::$b->page->add_message("Undersidene blir nå vist i menyen.");
                    }
                }
                // oppdater?
                if ($update !== false) {
                    \Kofradia\DB::get()->exec("UPDATE nodes SET node_expand_menu = {$update} WHERE node_id = " . nodes::$node_id);
                }
                redirect::handle();
            }
            // slett side
            if (isset($_GET['delete'])) {
                $table_check = "";
                $where_check = "";
                // sjekk om det er noen elementer under denne
                $result = \Kofradia\DB::get()->query("SELECT COUNT(node_id) FROM nodes WHERE node_parent_node_id = " . nodes::$node_id . " AND node_deleted = 0");
                $ant = $result->fetchColumn(0);
                if ($ant > 0) {
                    ess::$b->page->add_message("Du kan ikke slette en side som inneholder undersider. Flytt eller fjern undersidene og prøv på nytt.", "error");
                    redirect::handle();
                }
                $table_check .= ", (SELECT COUNT(node_id) AS ant FROM nodes WHERE node_parent_node_id = " . nodes::$node_id . " AND node_deleted = 0) AS ref_subnodes";
                $where_check .= " AND ref_subnodes.ant = 0";
                // sjekk type og spesiell info
                switch (nodes::$node_info['node_type']) {
                    case "container":
                        // sjekk antall enheter
                        $result = \Kofradia\DB::get()->query("SELECT COUNT(ni_id) FROM nodes_items WHERE ni_node_id = " . nodes::$node_id . " AND ni_deleted = 0");
                        $ant = $result->fetchColumn(0);
                        if ($ant > 0) {
                            ess::$b->page->add_message("Du kan ikke slette en side som inneholder noen enheter. Fjern enhetene og prøv på nytt.", "error");
                            redirect::handle();
                        }
                        $table_check .= ", (SELECT COUNT(ni_id) AS ant FROM nodes_items WHERE ni_node_id = " . nodes::$node_id . " AND ni_deleted = 0) AS ref_items";
                        $where_check .= " AND ref_items.ant = 0";
                        break;
                }
                // godkjenn?
                if (isset($_POST['delete'])) {
                    // marker som slettet
                    $a = \Kofradia\DB::get()->exec("UPDATE nodes{$table_check} SET node_deleted = " . time() . " WHERE node_id = " . nodes::$node_id . $where_check);
                    if ($a == 0) {
                        ess::$b->page->add_message("Noe gikk galt. Prøv på nytt.", "error");
                        redirect::handle();
                    }
                    ess::$b->page->add_message("Siden ble markert som slettet og er ikke lenger tilgjengelig.");
                    redirect::handle("node/a", redirect::ROOT);
                }
                echo '
<h1>Slett side</h1>
<form action="" method="post">
	<dl class="dd_right dl_2x">
		<dt>Side</dt>
		<dd>' . htmlspecialchars(nodes::$node_info['node_title']) . '</dd>
	</dl>
	<p>' . show_sbutton("Slett", 'name="delete"') . ' ' . show_sbutton("Avbryt", 'name="abort"') . '</p>
</form>';
                page_node::load_page();
            }
            // vanlig side
            if (nodes::$node_info['node_type'] == "container") {
                // vis/skjul tittel
                if (isset($_GET['hide_title'])) {
                    $hide = NULL;
                    if ($_GET['hide_title'] == "false") {
                        // vis tittel
                        if (nodes::$node_params->get("hide_title")) {
                            $hide = false;
                            ess::$b->page->add_message("Tittelen blir nå vist øverst på siden.");
                        }
                    } else {
                        // skjul tittel
                        if (!nodes::$node_params->get("hide_title")) {
                            $hide = true;
                            ess::$b->page->add_message("Tittelen blir ikke lengre vist øverst på siden.");
                        }
                    }
                    // oppdater?
                    if (!is_null($hide)) {
                        // hent friske params
                        $result = \Kofradia\DB::get()->query("SELECT node_params FROM nodes WHERE node_id = " . nodes::$node_id . " FOR UPDATE");
                        $params = new params($result->fetchColumn(0));
                        if ($hide) {
                            $params->update("hide_title", "1");
                        } else {
                            $params->remove("hide_title");
                        }
                        // oppdater
                        \Kofradia\DB::get()->exec("UPDATE nodes SET node_params = " . \Kofradia\DB::quote($params->build()) . " WHERE node_id = " . nodes::$node_id);
                    }
                    redirect::handle();
                }
                // vis/skjul sist endret dato
                if (isset($_GET['hide_time_change'])) {
                    $hide = NULL;
                    if ($_GET['hide_time_change'] == "false") {
                        // vis tittel
                        if (nodes::$node_params->get("hide_time_change")) {
                            $hide = false;
                            ess::$b->page->add_message("Dato for sist endret blir nå vist nederst på siden.");
                        }
                    } else {
                        // skjul tittel
                        if (!nodes::$node_params->get("hide_time_change")) {
                            $hide = true;
                            ess::$b->page->add_message("Dato for sist endret blir ikke lengre vist nederst på siden.");
                        }
                    }
                    // oppdater?
                    if (!is_null($hide)) {
                        // hent friske params
                        $result = \Kofradia\DB::get()->query("SELECT node_params FROM nodes WHERE node_id = " . nodes::$node_id . " FOR UPDATE");
                        $params = new params($result->fetchColumn(0));
                        if ($hide) {
                            $params->update("hide_time_change", "1");
                        } else {
                            $params->remove("hide_time_change");
                        }
                        // oppdater
                        \Kofradia\DB::get()->exec("UPDATE nodes SET node_params = " . \Kofradia\DB::quote($params->build()) . " WHERE node_id = " . nodes::$node_id);
                    }
                    redirect::handle();
                }
                // aktiver/deaktiver enhet
                if (isset($_GET['unit_enable']) || isset($_GET['unit_disable'])) {
                    if (isset($_GET['unit_enable'])) {
                        $value = 1;
                        $msg = "Enheten er nå aktivert og blir vist.";
                        $unit_id = intval($_GET['unit_enable']);
                    } else {
                        $value = 0;
                        $msg = "Enheten er nå deaktivert og blir ikke vist.";
                        $unit_id = intval($_GET['unit_disable']);
                    }
                    // oppdater
                    $affected = \Kofradia\DB::get()->exec("UPDATE nodes_items SET ni_enabled = {$value} WHERE ni_node_id = " . nodes::$node_id . " AND ni_id = {$unit_id} AND ni_deleted = 0");
                    if ($affected > 0) {
                        \Kofradia\DB::get()->exec("UPDATE nodes SET node_change = " . time() . " WHERE node_id = " . nodes::$node_id);
                        ess::$b->page->add_message($msg);
                    }
                    redirect::handle("node/a?node_id=" . nodes::$node_id . "&unit_highlight={$unit_id}", redirect::ROOT);
                }
                // slett enhet
                if (isset($_GET['unit_delete'])) {
                    // hent enheten
                    $unit_id = \Kofradia\DB::quote($_GET['unit_delete']);
                    $result = \Kofradia\DB::get()->query("SELECT ni_id, ni_type, nir_content, nir_params, nir_description, ni_priority, ni_enabled, nir_time FROM nodes_items LEFT JOIN nodes_items_rev ON nir_id = ni_nir_id WHERE ni_node_id = " . nodes::$node_id . " AND ni_id = {$unit_id} AND ni_deleted = 0");
                    // fant ikke?
                    if ($result->rowCount() == 0) {
                        ess::$b->page->add_message("Fant ikke enheten. Prøv på nytt.", "error");
                        redirect::handle();
                    }
                    $unit = $result->fetch();
                    // slette?
                    if (isset($_POST['delete'])) {
                        // marker som slettet
                        \Kofradia\DB::get()->exec("UPDATE nodes_items SET ni_deleted = " . time() . " WHERE ni_node_id = " . nodes::$node_id . " AND ni_id = {$unit_id} AND ni_deleted = 0");
                        ess::$b->page->add_message("Enheten ble markert som slettet og er ikke lenger tilgjengelig.");
                        redirect::handle();
                    }
                    echo '
<h1>Slett enhet</h1>
<form action="" method="post">
	<dl class="dd_right dl_2x">
		<dt>Side</dt>
		<dd>' . htmlspecialchars(nodes::$node_info['node_title']) . '</dd>
	</dl>
	<p>' . show_sbutton("Slett enhet", 'name="delete"') . ' ' . show_sbutton("Avbryt", 'name="abort"') . '</p>
</form>
<h2>Innhold av enhet</h2>' . nodes::content_build($unit);
                    page_node::load_page();
                }
                // rediger enhet
                if (isset($_GET['unit_edit'])) {
                    // hent enheten
                    $unit_id = \Kofradia\DB::quote($_GET['unit_edit']);
                    $result = \Kofradia\DB::get()->query("SELECT ni_id, ni_type, nir_content, nir_params, nir_description, ni_priority, ni_enabled, nir_time FROM nodes_items LEFT JOIN nodes_items_rev ON nir_id = ni_nir_id WHERE ni_node_id = " . nodes::$node_id . " AND ni_id = {$unit_id} AND ni_deleted = 0");
                    // fant ikke?
                    if ($result->rowCount() == 0) {
                        ess::$b->page->add_message("Fant ikke enheten. Prøv på nytt.", "error");
                        redirect::handle();
                    }
                    $unit = $result->fetch();
                    // kan endres?
                    if (!isset(nodes::$item_types[$unit['ni_type']]) || !nodes::$item_types[$unit['ni_type']][1]) {
                        ess::$b->page->add_message("Denne enheten kan ikke redigeres.", "error");
                        redirect::handle();
                    }
                    $params = new params($unit['nir_params']);
                    // lagre endringer?
                    if (isset($_POST['description']) && isset($_POST['content'])) {
                        // ingenting endret?
                        if (trim($_POST['description']) == $unit['nir_description'] && trim($_POST['content']) == $unit['nir_content']) {
                            ess::$b->page->add_message("Ingen endringer ble utført.", "error");
                        } else {
                            \Kofradia\DB::get()->exec("INSERT INTO nodes_items_rev SET nir_ni_id = {$unit['ni_id']}, nir_params = " . \Kofradia\DB::quote($params->build()) . ", nir_content = " . \Kofradia\DB::quote($_POST['content']) . ", nir_description = " . \Kofradia\DB::quote($_POST['description']) . ", nir_time = " . time());
                            $nir_id = \Kofradia\DB::get()->lastInsertId();
                            \Kofradia\DB::get()->exec("UPDATE nodes_items SET ni_nir_id = {$nir_id}, ni_nir_count = ni_nir_count + 1 WHERE ni_id = {$unit['ni_id']}");
                            \Kofradia\DB::get()->exec("UPDATE nodes SET node_change = " . time() . " WHERE node_id = " . nodes::$node_id);
                            putlog("CREWCHAN", "NODE REDIGERT: " . login::$user->player->data['up_name'] . " redigerte %u" . nodes::$node_info['node_title'] . "%u " . ess::$s['spath'] . "/node/" . nodes::$node_id);
                            ess::$b->page->add_message("Enheten ble oppdatert.");
                            redirect::handle("node/a?node_id=" . nodes::$node_id . "&unit_highlight={$unit['ni_id']}", redirect::ROOT);
                        }
                    }
                    // vis form osv
                    echo '
<h1>Rediger enhet</h1>
<form action="" method="post">
	<dl class="dd_right dl_2x">
		<dt>Forelder</dt>
		<dd>' . htmlspecialchars(nodes::$node_info['node_title']) . '</dd>
		<dt>Type</dt>
		<dd>' . nodes::content_type($unit) . '</dd>
		<dt>Beskrivelse</dt>
		<dd>
			<textarea name="description" cols="30" rows="2">' . htmlspecialchars(postval("description", $unit['nir_description'])) . '</textarea>
		</dd>';
                    switch ($unit['ni_type']) {
                        case 1:
                            echo '
		<dt>Innhold (BB-kode)</dt>
		<dd>&nbsp;</dd>
	</dl>
	<p>
		<textarea name="content" cols="30" rows="2" style="width: 530px; height: 300px">' . htmlspecialchars(postval("content", $unit['nir_content'])) . '</textarea>
	</p>';
                            break;
                        case 2:
                            echo '
		<dt>Innhold (ren HTML)</dt>
		<dd>&nbsp;</dd>
	</dl>
	<p class="clear">
		<textarea name="content" cols="30" rows="2" style="width: 530px; height: 300px">' . htmlspecialchars(postval("content", $unit['nir_content'])) . '</textarea>
	</p>';
                            break;
                        case 3:
                            tinymce::add_element("ni_content", true);
                            echo '
		<dt>Innhold (HTML editor)</dt>
		<dd>&nbsp;</dd>
	</dl>
	<p class="clear">
		<textarea name="content" cols="30" rows="2" id="ni_content" style="width: 530px; height: 400px">' . htmlspecialchars(postval("content", $unit['nir_content'])) . '</textarea>
	</p>';
                            tinymce::load();
                            break;
                        case 4:
                            echo '
		<dt>Ren tekst</dt>
		<dd>&nbsp;</dd>
	</dl>
	<p class="clear">
		<textarea name="content" cols="30" rows="2" style="width: 530px; height: 300px">' . htmlspecialchars(postval("content", $unit['nir_content'])) . '</textarea>
	</p';
                            break;
                        default:
                            redirect::handle("node/a?node_id=" . nodes::$node_id . "&unit_highlight={$unit['ni_id']}", redirect::ROOT);
                    }
                    echo '
	<p>' . show_sbutton("Oppdater") . ' <a href="' . ess::$s['relative_path'] . '/node/a?node_id=' . nodes::$node_id . '&amp;unit_highlight=' . $unit['ni_id'] . '" class="button">Avbryt</a></p>
</form>';
                    page_node::load_page();
                }
                // opprette ny enhet?
                if (isset($_GET['unit_new'])) {
                    $previous_unit = getval("previous_unit", 0);
                    // hent info om previous unit
                    if ($previous_unit == 0) {
                        $priority = 1;
                        $priority_num = 1;
                    } else {
                        // hent priority til forrige
                        $result = \Kofradia\DB::get()->query("SELECT ni_priority FROM nodes_items WHERE ni_node_id = " . nodes::$node_id . " AND ni_id = {$previous_unit} AND ni_deleted = 0");
                        if ($result->rowCount() == 0) {
                            ess::$b->page->add_message("Noe gikk galt. Prøv igjen.", "error");
                            redirect::handle();
                        }
                        $priority = $result->fetchColumn(0);
                        // hent priority til den vi skal "erstatte"
                        $result = \Kofradia\DB::get()->query("SELECT ni_priority FROM nodes_items WHERE ni_node_id = " . nodes::$node_id . " AND ni_priority > {$priority} AND ni_deleted = 0 ORDER BY ni_priority LIMIT 1");
                        if ($result->rowCount() > 0) {
                            $priority = $result->fetchColumn(0);
                        } else {
                            $priority++;
                        }
                        // hent nummer
                        $result = \Kofradia\DB::get()->query("SELECT COUNT(ni_id) FROM nodes_items WHERE ni_node_id = " . nodes::$node_id . " AND ni_priority < {$priority} AND ni_deleted = 0");
                        $priority_num = $result->fetchColumn(0) + 1;
                    }
                    // legge til?
                    if (isset($_POST['type'])) {
                        // kontroller type
                        $type = postval("type");
                        if (!isset(nodes::$item_types[$type]) || !nodes::$item_types[$type][1]) {
                            ess::$b->page->add_message("Ugyldig type. Prøv på nytt.", "error");
                        } else {
                            $description = postval("description", NULL);
                            // sett opp prioritys
                            \Kofradia\DB::get()->exec("UPDATE nodes_items SET ni_priority = ni_priority + 1 WHERE ni_node_id = " . nodes::$node_id . " AND ni_priority >= {$priority} AND ni_deleted = 0");
                            // legg til enhet
                            \Kofradia\DB::get()->exec("INSERT INTO nodes_items SET ni_node_id = " . nodes::$node_id . ", ni_type = " . \Kofradia\DB::quote($type) . ", ni_priority = {$priority}");
                            $ni_id = \Kofradia\DB::get()->lastInsertId();
                            \Kofradia\DB::get()->exec("INSERT INTO nodes_items_rev SET nir_ni_id = {$ni_id}, nir_time = " . time() . ", nir_description = " . \Kofradia\DB::quote($description));
                            $nir_id = \Kofradia\DB::get()->lastInsertId();
                            \Kofradia\DB::get()->exec("UPDATE nodes_items SET ni_nir_id = {$nir_id} WHERE ni_id = {$ni_id}");
                            ess::$b->page->add_message("Enheten ble lagt til.");
                            redirect::handle("node/a?node_id=" . nodes::$node_id . "&unit_edit={$ni_id}", redirect::ROOT);
                        }
                    }
                    echo '
<h1>Ny enhet</h1>
<form action="" method="post">
	<dl class="dd_right dl_2x">
		<dt>Under side</dt>
		<dd>' . htmlspecialchars(nodes::$node_info['node_title']) . '</dd>
		<dt>Plassering</dt>
		<dd>' . $priority_num . '</dd>
		<dt>Type</dt>
		<dd>
			<select name="type">';
                    $selected = postval("type", 3);
                    if (!isset(nodes::$item_types[$selected]) || !nodes::$item_types[$selected][1]) {
                        $selected = false;
                    }
                    foreach (nodes::$item_types as $key => $info) {
                        // ikke i bruk?
                        if (!$info[1]) {
                            continue;
                        }
                        echo '
				<option value="' . htmlspecialchars($key) . '"' . ($selected == $key ? ' selected="selected"' : '') . '>' . htmlspecialchars($info[0]) . '</option>';
                    }
                    echo '
			</select>
		</dd>
		<dt>Beskrivelse</dt>
		<dd>
			<textarea name="description" cols="30" rows="2">' . htmlspecialchars(postval("description")) . '</textarea>
		</dd>
	</dl>
	<p>' . show_sbutton("Opprett enhet") . ' ' . show_sbutton("Avbryt", 'name="abort"') . '</p>
</form>';
                    page_node::load_page();
                }
            } elseif (nodes::$node_info['node_type'] == "url_relative" || nodes::$node_info['node_type'] == "url_relative") {
                // endre adresse
                if (isset($_GET['edit_url'])) {
                    // lagre?
                    if (isset($_POST['url'])) {
                        // hent friske params
                        $result = \Kofradia\DB::get()->query("SELECT node_params FROM nodes WHERE node_id = " . nodes::$node_id . " FOR UPDATE");
                        $params = new params($result->fetchColumn(0));
                        $params->update("url", $_POST['url']);
                        if (isset($_POST['new_window'])) {
                            $params->update("new_window", 1);
                        } else {
                            $params->remove("new_window");
                        }
                        // oppdater
                        \Kofradia\DB::get()->exec("UPDATE nodes SET node_params = " . \Kofradia\DB::quote($params->build()) . " WHERE node_id = " . nodes::$node_id);
                        ess::$b->page->add_message("Adressen ble oppdatert.");
                        redirect::handle();
                    }
                    if (nodes::$node_info['node_type'] == "url_relative") {
                        echo '
<h1>Rediger adresse</h1>
<form action="" method="post">
	<dl class="dd_right dl_2x">
		<dt>Nåværende adresse</dt>
		<dd>' . htmlspecialchars(ess::$s['path']) . htmlspecialchars(nodes::$node_params->get("url", " ???")) . '</dd>
		<dt>Ny adresse</dt>
		<dd>' . htmlspecialchars(ess::$s['path']) . ' <input type="text" name="url" class="styled w150" value="' . htmlspecialchars(nodes::$node_params->get("url", "")) . '" /></dd>
		<dt>Åpne i nytt vindu</dt>
		<dd><input type="checkbox" name="new_window"' . (nodes::$node_params->get("new_window") ? ' checked="checked"' : '') . ' /></dd>
	</dl>
	<p>' . show_sbutton("Lagre") . ' ' . show_sbutton("Avbryt", 'name="abort"') . '</p>
</form>';
                    } else {
                        echo '
<h1>Rediger adresse</h1>
<form action="" method="post">
	<dl class="dd_right dl_2x">
		<dt>Nåværende adresse</dt>
		<dd>' . htmlspecialchars(nodes::$node_params->get("url", "???")) . '</dd>
		<dt>Ny adresse</dt>
		<dd><input type="text" name="url" class="styled w250" value="' . htmlspecialchars(nodes::$node_params->get("url", "")) . '" /></Dd>
		<dt>Åpne i nytt vindu</dt>
		<dd><input type="checkbox" name="new_window"' . (nodes::$node_params->get("new_window") ? ' checked="checked"' : '') . ' /></dd>
	</dl>
	<p>' . show_sbutton("Lagre") . ' ' . show_sbutton("Avbryt", 'name="abort"') . '</p>
</form>';
                    }
                    page_node::load_page();
                }
            }
        }
        if ($node) {
            self::show_node_info($node);
        }
        self::show_nodes_list();
        page_node::load_page();
    }
예제 #7
0
    $params->add_text(postval("empty"));
    foreach ($_POST['name'] as $key => $row) {
        if (empty($row)) {
            continue;
        }
        $params->update($row, $_POST['value'][$key]);
    }
    $count = count($params->params);
}
echo '
<div class="bg1_c small">
	<h1 class="bg1">Generer params<span class="left"></span><span class="right"></span></h1>
	<div class="bg1">
		<p>Her kan du generere params for å bruke i databasen osv.</p>' . ($params ? '
		<p>Resultat:</p>
		<p><input type="text" value="' . htmlspecialchars($params->build()) . '" class="styled w300" /></p>' : '') . '
		<form action="" method="post">
			<dl class="dd_right">
				<dt>Base:</dt>
				<dd><input type=text" name="empty" class="styled w200" /></dd>';
$list = array();
foreach ($params->params as $name => $value) {
    $list[] = array($name, $value);
}
for ($i = 0; $i < max(5, $count + 2); $i++) {
    echo '
				<dt><input type="text" name="name[' . $i . ']" class="styled w100" value="' . (isset($list[$i]) ? htmlspecialchars($list[$i][0]) : '') . '" /></dt>
				<dd><input type="text" name="value[' . $i . ']" class="styled w200" value="' . (isset($list[$i]) ? htmlspecialchars($list[$i][1]) : '') . '" /></dt>';
}
echo '
			</dl>
예제 #8
0
파일: oppdrag.php 프로젝트: Kuzat/kofradia
.oppdrag_list_img {
	position: absolute;
	right: -10px;
	top: 0;
	margin: 0;
	padding: 0;
	opacity: 0.5;
}
');
// for å generere nødvendige params til nye oppdrag
if (false) {
    $p = new params("20=4:name11:rank_points13=6:points3:01519=10:time_limit4:180048=5:prize38:13=4:cash5:1000019=11:rank_points3:500");
    #$p->update("chips", 250000);
    #$p->update("chips_start", 5000);
    $p->update("list_img", "http://i38.tinypic.com/mj3d76.png");
    dump($p->build());
}
// sjekk for nye oppdrag
login::$user->player->oppdrag->check_new();
/*echo '
<form action="" method="post">
	<p class="c">'.show_sbutton("Fjern alle mine oppdrag (testing)", 'name="delete_oppdrag"').' <a href="oppdrag?fiks" class="button">GI TILGANG TIL OPPDRAGENE</a></p>
</form>';
*/
echo '
<div class="bg1_c medium">
	<h1 class="bg1">Oppdrag<span class="left"></span><span class="right"></span></h1>
	<p class="h_right"><a href="' . ess::$s['rpath'] . '/node/26">Hjelp</a></p>
	<div class="bg1 r2b">';
// noen nye oppdrag?
if (count(login::$user->player->oppdrag->new) > 0) {