Exemple #1
0
        echo '
					<input type="radio" id="d_' . $key . '" name="d" value="' . $key . '"' . ($search_deleted_id == $key ? ' checked="checked"' : '') . ' /><label for="d_' . $key . '"> ' . $item[0] . '</label><br />';
    }
    echo '
				</div><div class="clear"></div></dd>';
}
echo '
			</dl>
			<p class="c">' . show_sbutton("Utfør søk") . '</p>
		</div>
	</form>
</div>';
// søke?
if (isset($_GET['qs'])) {
    $title_search = requestval("qs");
    $text_search = requestval("qt");
    // finn ut delene av spørringen
    $title_parts = search_query($title_search);
    $text_parts = search_query($text_search);
    // sett opp søkespørringen
    $search_title = false;
    $search_text_topic = false;
    $search_text_reply = false;
    if (count($title_parts[0]) > 0) {
        $search_title = " AND ft_title" . implode(" AND ft_title", $title_parts[0]);
    }
    if (count($text_parts[0]) > 0) {
        $search_text_topic = " AND ft_text" . implode(" AND ft_text", $text_parts[0]);
        $search_text_reply = " AND fr.fr_text" . implode(" AND fr.fr_text", $text_parts[0]);
    }
    if ($search_title === false && $search_text_topic === false && $search_text_reply === false) {
Exemple #2
0
    function step1_2()
    {
        global $__server;
        // er skjemaet sendt inn?
        if ($_SERVER['REQUEST_METHOD'] == "POST") {
            // sjekk for gyldig trinn
            if (!isset($_POST['step']) || $_POST['step'] != 1 && $_POST['step'] != 2) {
                redirect::handle();
            }
            $step = $_POST['step'];
            // trin 1
            if ($step == 1) {
                // epost1, epost2, b_dag, b_maaned, b_aar, forste_bruker
                $epost1 = trim(postval("epost1"));
                $epost2 = trim(postval("epost2"));
                $b_dag = intval(postval("b_dag"));
                $b_maaned = intval(postval("b_maaned"));
                $b_aar = intval(postval("b_aar"));
                $forste_bruker = isset($_POST['forste_bruker']);
                $date = ess::$b->date->get();
                $n_day = $date->format("j");
                $n_month = $date->format("n");
                $n_year = $date->format("Y");
                $age = $n_year - $b_aar - ($n_month < $b_maaned || $b_maaned == $n_month && $n_day < $b_dag ? 1 : 0);
                $birth = $b_aar . "-" . str_pad($b_maaned, 2, "0", STR_PAD_LEFT) . "-" . str_pad($b_dag, 2, "0", STR_PAD_LEFT);
                // sjekk om fødselsdatoen er gyldig
                $birth_date = ess::$b->date->get();
                $birth_date->setDate($b_aar, $b_maaned, $b_dag);
                $birth_valid = $birth_date->format("Y-m-d") == $birth;
                // sjekk e-post
                $email_valid = game::validemail($epost1);
                // kontroller om e-postadressen eller domenet er blokkert
                if ($email_valid) {
                    $pos = mb_strpos($epost1, "@");
                    $domain = mb_strtolower(mb_substr($epost1, $pos + 1));
                    $result = \Kofradia\DB::get()->query("SELECT eb_id, eb_type FROM email_blacklist WHERE (eb_type = 'address' AND eb_value = " . \Kofradia\DB::quote($epost1) . ") OR (eb_type = 'domain' AND eb_value = " . \Kofradia\DB::quote($domain) . ") ORDER BY eb_type = 'address' LIMIT 1");
                    $error_email = $result->fetch();
                }
                // sjekk e-post (1)
                if (!$email_valid) {
                    ess::$b->page->add_message("Ugyldig e-postadresse.", "error");
                } elseif ($error_email) {
                    if ($error_email['eb_type'] == "address") {
                        ess::$b->page->add_message("E-postadressen <b>" . htmlspecialchars($epost1) . "</b> er blokkert for registrering.", "error");
                    } else {
                        ess::$b->page->add_message("Domenet <b>" . htmlspecialchars($domain) . "</b> er blokkert for registrering og kan ikke benyttes.", "error");
                    }
                } elseif ($epost1 != $epost2) {
                    ess::$b->page->add_message("Den gjentatte e-postadressen var ikke lik den første.", "error");
                } elseif ($b_dag < 1 || $b_dag > 31) {
                    ess::$b->page->add_message("Du må velge en gyldig dag.", "error");
                } elseif ($b_maaned < 1 || $b_maaned > 12) {
                    ess::$b->page->add_message("Du må velge en gyldig måned.", "error");
                } elseif ($b_aar < 1900 || $b_aar > ess::$b->date->get()->format("Y")) {
                    ess::$b->page->add_message("Du må velge et gyldig år.", "error");
                } elseif (!$birth_valid) {
                    ess::$b->page->add_message("Datoen du fylte inn for fødselsdatoen din eksisterer ikke.");
                } elseif ($age < 13) {
                    putlog("ABUSE", "%c9%bUNDER ALDERSGRENSEN:%b%c %u{$_SERVER['REMOTE_ADDR']}%u prøvde å registrere seg med fødselsdato %u{$birth}%u (%u{$age}%u år) og e-posten %u{$epost1}%u!");
                    ess::$b->page->add_message("Du må ha fylt 13 år for å registrere deg og spille Kofradia!", "error");
                    redirect::handle("", redirect::ROOT);
                } elseif (!$forste_bruker) {
                    ess::$b->page->add_message("I følge betingelsene kan du kun ha en bruker. Bruk den!", "error");
                    redirect::handle("", redirect::ROOT);
                } else {
                    // hent DB info
                    $result1 = \Kofradia\DB::get()->query("SELECT id, time, expire FROM registration WHERE email = " . \Kofradia\DB::quote($epost1));
                    $result2 = \Kofradia\DB::get()->query("SELECT u_id FROM users WHERE u_email = " . \Kofradia\DB::quote($epost1) . " AND u_access_level != 0");
                    // e-post allerede i registreringssystemet?
                    if ($row = $result1->fetch()) {
                        $time = game::timespan($row['expire'], game::TIME_ABS | game::TIME_FULL);
                        ess::$b->page->add_message("E-postadressen er allerede aktivt i registeringssystemet. Sjekk e-posten for e-postkode eller vent {$time}, for så å prøve igjen.", "error");
                    } elseif ($row = $result2->fetch()) {
                        putlog("ABUSE", "%c9%bREGISTRER KONTO:%b%c %u{$_SERVER['REMOTE_ADDR']}%u prøvde å registrere seg en e-post som allerede finnes: %u{$epost1}%u!");
                        ess::$b->page->add_message("Denne e-posten er allerede i bruk.", "error");
                        redirect::handle("", redirect::ROOT);
                    } else {
                        // sett opp kode
                        $code = mb_substr(md5(uniqid("kofradia_")), 0, 16);
                        // legg til i databasen
                        \Kofradia\DB::get()->exec("INSERT INTO registration SET time = " . time() . ", birth = '{$birth}', email = " . \Kofradia\DB::quote($epost1) . ", code = '{$code}', ip = '{$_SERVER['REMOTE_ADDR']}', expire = " . (time() + 7200));
                        // send e-post
                        $email = new email();
                        $email->text = 'Hei,

Du har begynt registrering av bruker på Kofradia.
Dersom du ikke har bedt om denne e-posten kan du se bort ifra den.

For å bekrefte e-postadressen din må du følge denne lenken:
' . $__server['path'] . '/registrer?e=' . $code . '

Din verifiseringskode er: ' . $code . '

Forespørselen ble utført fra ' . $_SERVER['REMOTE_ADDR'] . '.

Du må fortsette innen ' . game::timespan(7200, game::TIME_FULL | game::TIME_NOBOLD) . ' (' . ess::$b->date->get(time() + 7200)->format(date::FORMAT_SEC) . '). Etter den tid må du be om ny e-post.

--
www.kofradia.no';
                        $email->headers['X-SMafia-IP'] = $_SERVER['REMOTE_ADDR'];
                        $email->headers['Reply-To'] = "*****@*****.**";
                        $email->send($epost1, "Starte registrering på Kofradia");
                        ess::$b->page->add_message("En e-post med verifiseringskode har blitt sendt til <b>" . htmlspecialchars($epost1) . "</b>. Sjekk e-posten snarest!");
                        redirect::handle("?e");
                    }
                }
            } else {
                // e
                $ecode = trim(postval("e"));
                // sjekk e-postkode
                if (empty($ecode)) {
                    ess::$b->page->add_message("Du må fylle ut e-postkoden du har fått på epost.", "error");
                } else {
                    // sjekk om den finnes
                    $result = \Kofradia\DB::get()->query("SELECT id, time, email, code, ip, expire, user FROM registration WHERE code = " . \Kofradia\DB::quote($ecode));
                    if (!($row = $result->fetch())) {
                        putlog("ABUSE", "%c9%bE-POST KODE:%b%c %u{$_SERVER['REMOTE_ADDR']}%u prøvde å fortsette registreringen med ugyldig e-postkode (%u{$ecode}%u)!");
                        ess::$b->page->add_message("Fant ikke e-postkoden i databasen! Kontroller at den er riktig og evt. be om ny e-postkode.", "error");
                    } else {
                        // oppdater oppføringen
                        \Kofradia\DB::get()->exec("UPDATE registration SET verified = 1 WHERE id = {$row['id']}");
                        $_SESSION[$GLOBALS['__server']['session_prefix'] . 'reg'] = array("id" => $row['id'], "step" => 3);
                        redirect::handle();
                    }
                }
            }
        }
        echo '
<p><b>Velkommen</b> til Kofradia sine nettsider! Kofradia er et tekstbassert nettspill som handler om å utføre forskjellige funksjoner for å stige i gradene. I tillegg finnes det både forum og diverse annen informasjon på siden!</p>
<p>På denne siden oppretter du din bruker og spiller. Merk! Det er kun lov å ha én bruker. Har du allerede en bruker fra før har du ikke lov til å registrere ny bruker.</p>';
        if (!isset($_REQUEST['e'])) {
            ess::$b->page->add_js_domready('$("epost1").focus();');
            echo '
<form action="registrer" method="post">
	<input type="hidden" name="step" value="1" />
	<div class="registrer_felt">
		<boxes />
		<dl class="dd_right dl_2x">
			<dt>E-postadresse</dt>
			<dd><input type="text" id="epost1" name="epost1" value="' . htmlspecialchars(postval("epost1")) . '" class="styled w150" /></dd>
			
			<dt>Gjenta e-postadresse</dt>
			<dd><input type="text" name="epost2" value="' . htmlspecialchars(postval("epost2")) . '" class="styled w150" /></dd>
			
			<dt>Fødselsdato</dt>
			<dd>
				<select name="b_dag">
					<option value="">Dag</option>';
            $active = postval("b_dag");
            for ($i = 1; $i <= 31; $i++) {
                echo '
					<option value="' . $i . '"' . ($i == $active ? ' selected="selected"' : '') . '>' . $i . '</option>';
            }
            echo '
				</select>
				<select name="b_maaned">
					<option value="">Måned</option>';
            global $_lang;
            $active = postval("b_maaned");
            for ($i = 1; $i <= 12; $i++) {
                echo '
					<option value="' . $i . '"' . ($i == $active ? ' selected="selected"' : '') . '>' . ucfirst($_lang['months'][$i]) . '</option>';
            }
            echo '
				</select>
				<select name="b_aar">
					<option value="">År</option>';
            $active = postval("b_aar");
            for ($i = ess::$b->date->get()->format("Y"); $i >= 1900; $i--) {
                echo '
					<option value="' . $i . '"' . ($i == $active ? ' selected="selected"' : '') . '>' . $i . '</option>';
            }
            echo '
				</select>
			</dd>
			
			<dd><input type="checkbox" name="forste_bruker" id="c1" /><label for="c1"> Jeg har ingen aktiv bruker fra før</label></dd>
		</dl>
		<p class="c">' . show_sbutton("Gå til neste trinn") . '</p>
	</div>
</form>';
        } else {
            ess::$b->page->add_js_domready('$("verife").focus();');
            echo '
<p><b>Verifiseringskode</b></p>
<p>Når du har mottatt e-post etter å ha fylt inn e-postadresse og fødelsdato, mottar du en verifiseringskode som fylles inn her. Du kan deretter fortsette din registrering.</p>
<form action="registrer" method="post">
	<input type="hidden" name="step" value="2" />
	<div class="registrer_felt">
		<boxes />
		<dl class="dd_right">
			<dt>Verifiseringskode</dt>
			<dd><input type="text" id="verife" name="e" value="' . htmlspecialchars(requestval("e")) . '" maxlength="32" class="styled w120" /></dd>
		</dl>
		<p class="c">' . show_sbutton("Valider", 'class="indent"') . '</p>
	</div>
	<p><a href="registrer">Tilbake</a></p>
</form>';
        }
    }
Exemple #3
0
 public function action_index()
 {
     // vis feilmelding hvis noen
     if ($err = $this->show_errors()) {
         return $err;
     }
     #ess::$b->page->add_title("Logg inn");
     #ess::$b->page->theme_file = "logginn";
     // tillate logginn uten passord
     $devlogin = !MAIN_SERVER;
     if ($_SERVER['REQUEST_METHOD'] == "POST" && isset($_POST['id'])) {
         // skjekk logg inn formen
         $err = false;
         $id = postval("id");
         $pass = postval("passord");
         if (empty($id) && empty($pass) && !$devlogin) {
             \ess::$b->page->add_message("Mangler ID og passord.", "error", 'login');
             $err = true;
         } elseif (empty($id)) {
             // mangler id
             \ess::$b->page->add_message("Mangler ID.", "error", 'login');
             $err = true;
         } elseif (empty($pass) && !$devlogin) {
             // mangler passord
             \ess::$b->page->add_message("Mangler passord.", "error", 'login');
             $err = true;
         }
         $type = intval(postval('expire_type'));
         if ($type < 0 || $type > 2) {
             // ugyldig expire type
             \ess::$b->page->add_message("Ugyldig expire type!", "error", 'login');
             $err = true;
         }
         // sikker tilkobling?
         $secure_only = isset($_POST['secure_only']);
         if (!$err) {
             // prøv å logg inn
             switch (\login::do_login($id, $pass, $type, true, $secure_only, $devlogin)) {
                 case LOGIN_ERROR_USER_OR_PASS:
                     \ess::$b->page->add_message("Feil ID" . (!$devlogin ? ' eller passord' : '') . ".", "error", 'login');
                     // logg
                     putlog("ABUSE", "%c4%bUGYLDIG BRUKERNAVN/PASSORD:%b%c {$_SERVER['REMOTE_ADDR']} forsøkte å logge inn med ID %u{$id}%u!");
                     break;
                     // utestengt
                 // utestengt
                 case LOGIN_ERROR_ACTIVATE:
                     global $uid;
                     // hent begrunnelse og info
                     $result = \Kofradia\DB::get()->query("SELECT u_id, u_email, u_deactivated_reason, u_deactivated_time, up_name FROM users LEFT JOIN users_players ON up_id = u_active_up_id WHERE u_id = {$uid}");
                     $info = $result->fetch();
                     $_SESSION[$GLOBALS['__server']['session_prefix'] . 'login_error'] = array("deactivated", $info);
                     putlog("ABUSE", "%c8%bLOGG INN - DEAKTIVERT%b%c: %u{$_SERVER['REMOTE_ADDR']}%u forsøkte å logge inn på %u{$info['u_email']}%u som er en deaktivert bruker!");
                     // send til feilside
                     \redirect::handle("", \redirect::ROOT);
                     break;
                 default:
                     if (!\login::$logged_in) {
                         \ess::$b->page->add_message("Ukjent innloggingsfeil!", "error");
                     } else {
                         // logget inn
                         putlog("NOTICE", "%c7%bLOGG INN%b%c: (%u{$_SERVER['REMOTE_ADDR']}%u) %u" . \login::$user->player->data['up_name'] . "%u (" . \login::$user->data['u_email'] . ") ({$_SERVER['HTTP_USER_AGENT']}) " . \ess::$s['path'] . "/min_side?up_id=" . \login::$user->player->id);
                         if (isset($_GET['orign'])) {
                             \redirect::handle($_GET['orign'], \redirect::SERVER, \login::$info['ses_secure']);
                         }
                         \redirect::handle("", NULL, \login::$info['ses_secure']);
                     }
             }
         }
     }
     // spør brukeren etter en spesifikk side?
     if (isset($_GET['orign']) && $_GET['orign'] != "/") {
         \ess::$b->page->add_message("Du må logge inn for å se denne siden.", "error", 'login');
     }
     // sett opp e-posten vi ber om
     $id = '';
     if (isset($_SESSION[$GLOBALS['__server']['session_prefix'] . 'logginn_id'])) {
         $id = $_SESSION[$GLOBALS['__server']['session_prefix'] . 'logginn_id'];
         unset($_SESSION[$GLOBALS['__server']['session_prefix'] . 'logginn_id']);
     }
     $id = requestval("id", $id);
     // expire type
     $expire = 0;
     if (isset($_REQUEST['expire_type'])) {
         $val = intval($_POST['expire_type']);
         if ($val >= 0 && $val <= 2) {
             $expire = $val;
         }
     }
     $r = new \Kofradia\Response();
     $r->data = \Kofradia\View::forgeTwig("users/login/login", array("norobots" => isset($_GET['orign']), "userid" => $id, "expire" => $expire, "secure_only" => isset($_POST['secure_only'])));
     return $r;
 }
Exemple #4
0
    redirect::handle();
}
// logge inn?
if (isset($_REQUEST['id'])) {
    // allerede logget inn?
    /*if ($user)
    	{
    		$_base->page->add_message("Allerede logget inn.", "error");
    		redirect::handle();
    	}*/
    if (!isset($_REQUEST['email']) && !$user) {
        $_base->page->add_message("Mangler e-post.", "error");
        redirect::handle();
    }
    $id = intval($_REQUEST['id']);
    $email = $user ? $user : requestval('email');
    // finn oppføringen
    $result = \Kofradia\DB::get()->query("SELECT h_id, h_email FROM henvendelser WHERE h_random = {$id} AND h_email = " . \Kofradia\DB::quote($email) . " AND h_status != 4 ORDER BY h_hm_time DESC LIMIT 1");
    $row = $result->fetch();
    if (!$row) {
        $_base->page->add_message("Fant ikke oppføringen.", "error");
        redirect::handle();
    } else {
        if (!$user) {
            $_SESSION[$GLOBALS['__server']['session_prefix'] . 'henvendelser_email'] = $row['h_email'];
            $_SESSION[$GLOBALS['__server']['session_prefix'] . 'henvendelser_last_hit'] = time();
        }
        #$_base->page->add_message("Du er nå logget inn som ".htmlspecialchars($row['h_email']).".");
        redirect::handle("henvendelser?h_id={$row['h_id']}");
    }
}
Exemple #5
0
    /**
     * Vis fengsel
     */
    protected function show()
    {
        // er vi i fengsel nå?
        if ($wait = $this->up->fengsel_wait()) {
            ess::$b->page->add_js_domready('$("fengsel_dusor").focus();');
            echo '
<div class="bg1_c xsmall">
	<h1 class="bg1">Du er i fengsel<span class="left"></span><span class="right"></span></h1>
	<p class="h_right"><a href="node/16">Hjelp</a></p>
	<div class="bg1">
		<p>Du befinner deg for øyeblikket i fengsel og slipper ut om ' . game::counter($wait, true) . '.</p>' . (!$this->up->is_nostat() ? '
		<form action="" method="post">
			<input type="hidden" name="sid" value="' . login::$info['ses_id'] . '" />
			<input type="hidden" name="expire" value="' . $this->up->data['up_fengsel_time'] . '" />
			<dl class="dd_right">
				<dt>Dusør for å bryte deg ut</dt>
				<dd><input type="text" class="styled w80" name="amount" id="fengsel_dusor" value="' . game::format_cash($this->up->data['up_fengsel_dusor']) . '" /></dd>
			</dl>
			<p class="c">' . show_sbutton($this->up->data['up_fengsel_dusor'] > 0 ? "Endre dusør" : "Sett dusør", 'name="dusor"') . '</p>
			<p class="c">Spilleren som bryter ut mottar kun ' . self::DUSOR_PROFIT * 100 . ' % av dusøren.</p>
		</form>' : '') . '
	</div>
</div>';
        }
        // sortering
        $sort = new sorts("sort");
        $sort->append("asc", "Spiller", "up_name");
        $sort->append("desc", "Spiller", "up_name DESC");
        $sort->append("asc", "Wanted nivå", "up_wanted_level, up_fengsel_time DESC");
        $sort->append("desc", "Wanted nivå", "up_wanted_level DESC, up_fengsel_time DESC");
        $sort->append("asc", "Tid igjen", "up_fengsel_time");
        $sort->append("desc", "Tid igjen", "up_fengsel_time DESC");
        $sort->set_active(requestval("sort"), 5);
        // hent folk i fengsel
        $sort_info = $sort->active();
        $pagei = new pagei(pagei::ACTIVE_GET, "side", pagei::PER_PAGE, 15);
        $result = $pagei->query("\n\t\t\tSELECT up_id, up_name, up_access_level, up_fengsel_time, up_fengsel_num, up_fengsel_dusor, ROUND(up_fengsel_dusor * " . self::DUSOR_PROFIT . ") up_fengsel_dusor_get, up_wanted_level\n\t\t\tFROM users_players\n\t\t\tWHERE up_fengsel_time > " . time() . " AND up_access_level != 0\n\t\t\tORDER BY {$sort_info['params']}");
        $num = $result->rowCount();
        echo '
<div class="bg1_c ' . ($num == 0 ? 'xsmall' : 'xlarge') . '">
	<h1 class="bg1">Fengsel<span class="left"></span><span class="right"></span></h1>
	<p class="h_right"><a href="node/16">Hjelp</a></p>
	<div class="bg1">
		<form action="" method="post">
			<p class="c dark">Ditt wanted nivå er på ' . game::format_number($this->up->data['up_wanted_level'] / 10, 1) . ' %.</p>';
        if ($num == 0) {
            echo '
			<p class="c dark">Ingen er i fengselet for øyeblikket.</p>
			<p class="c"><a href="' . htmlspecialchars(game::address("fengsel", $_GET)) . '" class="button">Oppdater</a></p>';
        } else {
            echo '
			<table class="table center" width="100%">
				<thead>
					<tr>
						<th>Spiller ' . $sort->show_link(0, 1) . '</th>
						<th>Wanted<br />nivå ' . $sort->show_link(2, 3) . '</th>
						<th>Utbrytning<br />sannsynlighet</th>
						<th>Ca. poeng</th>
						<th>Dusør</th>
						<th>Tid igjen ' . $sort->show_link(4, 5) . '</th>
					</tr>
				</thead>
				<tbody>';
            $i = 0;
            while ($row = $result->fetch()) {
                $prefix = "";
                $attr = new attr("class");
                if (++$i % 2 == 0) {
                    $attr->add("color");
                }
                if (!$this->up->fengsel_check()) {
                    $attr->add("box_handle");
                    $prefix = '<input type="radio" name="up_id" value="' . $row['up_id'] . '_' . $row['up_fengsel_time'] . '_' . $row['up_fengsel_dusor'] . '" /> ';
                }
                $time = $row['up_fengsel_time'] - time();
                $prob = self::calc_prob($time, $row['up_wanted_level'] / 10);
                $points = self::calc_points($prob);
                echo '
					<tr' . $attr->build() . '>
						<td>' . $prefix . game::profile_link($row['up_id'], $row['up_name'], $row['up_access_level']) . '</td>
						<td class="c">' . game::format_number($row['up_wanted_level'] / 10, 1) . ' %</td>
						<td class="c">' . game::format_number($prob, 1) . ' %</td>
						<td class="c">' . game::format_num($points) . '</td>
						<td class="r nowrap">' . game::format_cash($row['up_fengsel_dusor_get']) . '</td>
						<td class="r">' . game::counter($time) . '</td>
					</tr>';
            }
            echo '
				</tbody>
			</table>
			<p class="c">' . (($wait = $this->up->fengsel_wait()) == 0 ? '
				' . show_sbutton("Bryt ut", 'name="brytut"') : '
				Du er i fengsel og slipper ut om ' . game::counter($wait, true) . '.
			</p>
			<p class="c">') . '
				<a href="' . htmlspecialchars(game::address("fengsel", $_GET)) . '" class="button">Oppdater</a>
			</p>';
            // flere sider?
            if ($pagei->pages > 1) {
                echo '
			<div class="hr"></div>
			<p class="c">
				' . $pagei->pagenumbers() . '
			</p>';
            }
        }
        echo '
		</form>
	</div>
</div>';
        // testing
        if (!MAIN_SERVER || access::is_nostat() && access::has("mod")) {
            echo '
<div class="bg1_c xxsmall bg1_padding">
	<h1 class="bg1">' . (MAIN_SERVER ? 'No-stat' : 'Testing') . '<span class="left"></span><span class="right"></span></h1>
	<div class="bg1">
		<form action="" method="post">' . ($this->up->fengsel_check() ? '
			<p class="c">' . show_sbutton("Gå ut av fengsel", 'name="remove"') . '</p>' : '
			<dl class="dd_right dl_2x">
				<dt>Tid</dt>
				<dd><input type="text" name="time" value="' . htmlspecialchars(postval("time", 20)) . '" class="styled w40" /> sekunder</dd>
			</dl>
			<p class="c">' . show_sbutton("Gå inn i fensgel") . '</p>') . '
		</form>
	</div>
</div>';
        }
    }
Exemple #6
0
        echo '
<h1>Meldinger</h1>
<p>Fant ingen bruker med ID <b>' . $u_id . '</b>.</p>';
        $_base->page->load();
    }
    $show_deleted = true;
    echo '
<h1 class="scroll_here">Meldinger Admin</h1>
<p>Du viser meldingene som tilhører ' . game::profile_link($user->player->data['up_id'], $user->player->data['up_name'], $user->player->data['up_access_level']) . '</p>';
    redirect::store("innboks_sok?u_id={$u_id}");
}
// logg visning av innboks
putlog("PROFILVIS", "%c5%bVIS-MELDINGER-SOK:%b%c %u" . login::$user->player->data['up_name'] . "%u ({$_SERVER['REQUEST_URI']})");
// hvem som skal ha kunnet skrevet det man søker på
$search_from = array(1 => array("Alle", ""), array("Meg selv", " AND im_up_id = up_ref.up_id"), array("Andre", " AND im_up_id != up_ref.up_id"), array('Spesifiser', NULL, array()));
$id = requestval("f");
$search_from_id = isset($search_from[$id]) ? $id : 1;
// fant ikke brukeren?
if ($search_from_id == 4) {
    $name = trim(postval("u"));
    // sett opp brukernavnene
    $names = explode(",", $name);
    foreach ($names as $name) {
        $name = trim($name);
        if (empty($name)) {
            continue;
        }
        if (preg_match('/^[0-9a-zA-Z\\-_ ]+$/Du', $name)) {
            $search_from[4][2][] = $name;
        } else {
            $_base->page->add_message('Ugyldig spillernavn: <b>' . htmlspecialchars($name) . '</b>.', "error");
Exemple #7
0
    /**
     * Vervede spillere
     */
    protected static function page_vervede()
    {
        global $__server;
        ess::$b->page->add_title("Vervede spillere");
        // sortering
        $sort = new sorts("sort");
        $sort->append("asc", "Spillernavn", "rec.up_name");
        $sort->append("desc", "Spillernavn", "rec.up_name DESC");
        $sort->append("asc", "Sist pålogget", "rec.up_last_online");
        $sort->append("desc", "Sist pålogget", "rec.up_last_online DESC");
        $sort->append("asc", "Registrert", "rec.up_created_time");
        $sort->append("desc", "Registrert", "rec.up_created_time DESC");
        $sort->append("asc", "Rankbonus", "u2.u_recruiter_points_bonus");
        $sort->append("desc", "Rankbonus", "u2.u_recruiter_points_bonus DESC");
        $sort->set_active(requestval("sort"), 5);
        // hent spillerene vi har vervet
        $sort_info = $sort->active();
        $pagei = new pagei(pagei::ACTIVE_GET, "side", pagei::PER_PAGE, 50);
        $result = $pagei->query("\n\t\t\tSELECT rec.up_id, rec.up_name, rec.up_access_level, rec.up_last_online, rec.up_created_time, u2.u_recruiter_points_bonus\n\t\t\tFROM\n\t\t\t\tusers_players rec,\n\t\t\t\tusers_players self,\n\t\t\t\tusers u1,\n\t\t\t\tusers u2\n\t\t\tWHERE u1.u_id = " . page_min_side::$active_user->id . " AND self.up_u_id = u1.u_id AND self.up_id = rec.up_recruiter_up_id AND u2.u_id = rec.up_u_id\n\t\t\tORDER BY {$sort_info['params']}");
        echo '
	<div class="bg1_c xmedium">
		<h1 class="bg1">Vervede spillere<span class="left2"></span><span class="right2"></span></h1>
		<div class="bg1">
			<ol>
				<li>Du gir ut denne linken til en du ønsker å verve: <a href="' . $__server['path'] . '/' . page_min_side::$active_player->id . '" target="_blank">' . $__server['path'] . '/' . page_min_side::$active_player->id . '</a></li>
				<li>Personen åpner linken</li>
				<li>Når personen registrerer seg vil brukeren være vervet av deg</li>
			</ol>
			<p class="c"><a href="' . ess::$s['relative_path'] . '/node/60">Mer informasjon om verving &raquo;</a></p>';
        if ($pagei->total == 0) {
            echo '
			<p class="c">Du har ikke vervet noen spillere.</p>';
        } else {
            echo '
			<p>Du har vervet ' . $pagei->total . ' spiller' . ($pagei->total == 1 ? '' : 'e') . ':</p>
			<table class="table spacerfix center' . ($pagei->pages == 1 ? ' tablemb' : '') . '">
				<thead>
					<tr>
						<td>Spiller <nobr>' . $sort->show_link(0, 1) . '</nobr></td>
						<td>Sist pålogget <nobr>' . $sort->show_link(2, 3) . '</nobr></td>
						<td>Tid vervet <nobr>' . $sort->show_link(4, 5) . '</nobr></td>
						<td>Rankbonus <nobr>' . $sort->show_link(6, 7) . '</nobr></td>
					</tr>
				</thead>
				<tbody>';
            $color = true;
            while ($row = $result->fetch()) {
                echo '
					<tr' . ($color = !$color ? ' class="color"' : '') . '>
						<td>' . game::profile_link($row['up_id'], $row['up_name'], $row['up_access_level']) . '</td>
						<td class="r">' . game::timespan($row['up_last_online'], game::TIME_ABS) . '</td>
						<td class="r">' . ess::$b->date->get($row['up_created_time'])->format() . '</td>
						<td class="r">' . game::format_number($row['u_recruiter_points_bonus']) . '</td>
					</tr>';
            }
            echo '
				</tbody>
			</table>' . ($pagei->pages > 1 ? '
			<p class="c">' . $pagei->pagenumbers() . '</p>' : '');
        }
        echo '
		</div>
	</div>';
    }
Exemple #8
0
foreach ($search_online_time as $key => $item) {
    echo '
						<option value="' . $key . '"' . ($search_online_time_id == $key ? ' selected="selected"' : '') . '>' . htmlspecialchars($item[0]) . '</option>';
}
echo '
					</select>
				</dd>
			</dl>
		</div>
		<h4>' . show_sbutton("Utfør søk") . '</h4>
	</div>
</form>';
// søke?
if (isset($_REQUEST['finn'])) {
    $user_search = requestval("finn");
    $text_search = requestval("profiletext");
    // finn ut delene av spørringen
    $user_parts = search_query($user_search, false);
    $text_parts = search_query($text_search);
    // sett opp søkespørringen
    $search = "";
    if (count($user_parts[0]) > 0) {
        $search .= " AND up_name" . implode(" AND up_name", $user_parts[0]);
    }
    if (count($text_parts[0]) > 0) {
        $search .= " AND up_profile_text" . implode(" AND up_profile_text", $text_parts[0]);
    }
    // sortering
    $sort_info = $sort->active();
    $query = "up_id, up_name, up_last_online, up_access_level, up_points, upr_rank_pos FROM users_players LEFT JOIN users_players_rank ON upr_up_id = up_id WHERE 1{$search_online[$search_online_id][1]}{$search_status[$search_status_id][1]}{$search}{$search_ranks_query} ORDER BY {$sort_info['params']}";
    $pagei = new pagei(pagei::ACTIVE_GET, "side", pagei::PER_PAGE, 50);
Exemple #9
0
    /** Vis skjema for å sende inn ny henvendelse */
    protected static function show_new_form()
    {
        ess::$b->page->add_js_domready('
	$("previewButton").addEvent("click", function()
	{
		$("previewContainer").set("html", "<p>Laster inn forhåndsvisning..</p>");
		$("previewOuter").setStyle("display", "block");
		if ($("previewOuter").getPosition().y > window.getScroll().y + window.getSize().y)
		{
			$("previewOuter").goto(-15);
		}
		preview($("textContent").get("value"), $("previewContainer"));
	});');
        echo '
<div class="bg1_c small">
	<h2 class="bg1">Ny henvendelse<span class="left2"></span><span class="right2"></span></h2>
	<div class="bg1">
		<boxes />
		<p>Husk og les gjennom <a href="' . ess::$s['relative_path'] . '/node">hjelpesidene</a> før du sender inn din henvendelse. Finner du ikke det du ser etter kan du sende inn en henvendelse her som alle i Crewet får mulighet til å svare på.</p>
		<form action="./" method="post">
			<dl class="dl_20">
				<dt>Kategori</dt>
				<dd>
					<select name="kategori">' . (!isset(self::$kategorier[requestval("kategori")]) ? '
						<option>Velg kategori..</option>' : '');
        // hent alle kategoriene
        foreach (self::$kategorier as $id => $row) {
            echo '
						<option value="' . intval($id) . '"' . (requestval('kategori') == $id ? ' selected="selected"' : '') . '>' . htmlspecialchars($row['name']) . '</option>';
        }
        echo '
					</select>
				</dd>
				<dt>Tittel</dt>
				<dd><input type="text" name="tittel" value="' . htmlspecialchars(requestval('tittel')) . '" class="styled w200" maxlength="80" /></dd>
				<dt>Beskrivelse</dt>
				<dd><textarea name="innhold" id="textContent" style="width: 90%" rows="10">' . htmlspecialchars(requestval('innhold')) . '</textarea></dd>
			</dl>
			<p class="c">' . show_sbutton("Send inn spørsmål") . ' ' . show_button("Forhåndsvis", 'accesskey="p" id="previewButton"') . '</p>
			<div style="display: none" id="previewOuter">
				<p>Forhåndsvisning:</p>
				<div class="p" id="previewContainer"></div>
			</div>
		</form>
	</div>
</div>';
    }