<?php require "../../app/ajax.php"; ajax::require_user(); // kontroller lås ajax::validate_lock(); // hent alle utfordringer $result = \Kofradia\DB::get()->query("SELECT poker_id, poker_starter_up_id, poker_time_start, poker_starter_cards, poker_cash FROM poker WHERE poker_state = 2 ORDER BY poker_cash"); $i = 0; $data = array(); $html_to_parse = array(); while ($row = $result->fetch()) { $d = array(); $d['self'] = $row['poker_starter_up_id'] == login::$user->player->id; $html_to_parse[$i] = (!$d['self'] ? '<input type="radio" name="id" value="' . $row['poker_id'] . '" />' : '') . '<user id="' . $row['poker_starter_up_id'] . '" />'; $d['cash'] = game::format_cash($row['poker_cash']); $d['reltime'] = poker_round::get_time_text($row['poker_time_start']); if (access::has("admin")) { $cards = new CardsPoker(explode(",", $row['poker_starter_cards'])); $d['cards'] = $cards->solve_text($cards->solve()); } $data[$i++] = $d; } // parse html if (count($html_to_parse) > 0) { $html_to_parse = parse_html_array($html_to_parse); foreach ($html_to_parse as $i => $value) { $data[$i]['player'] = $value; } } ajax::text(js_encode($data), ajax::TYPE_OK);
<new>'; // noen nye? if (count($new) > 0) { $new = parse_html_array($new); foreach ($new as $id => $html) { $xml .= ' <post id="' . $id . '" last_edit="' . intval($new_last_edit[$id]) . '">' . htmlspecialchars($html) . '</post>'; } $xml .= ' '; } $xml .= '</new> <updated>'; // noen oppdaterte? if (count($updated) > 0) { $updated = parse_html_array($updated); foreach ($updated as $id => $html) { $xml .= ' <post id="' . $id . '" last_edit="' . intval($updated_last_edit[$id]) . '">' . htmlspecialchars($html) . '</post>'; } $xml .= ' '; } $xml .= '</updated> <deleted>'; // noen slettede? if (count($deleted) > 0) { foreach ($deleted as $id) { $xml .= ' <post>' . $id . '</post>'; }
/** * Sjekk for nye svar i forumtråd * @param inbox_thread_ajax $thread */ public static function thread_check_new_replies(inbox_thread_ajax $thread) { // mangler vi siste meldings-ID? if (!isset($_POST['im_id'])) { ajax::text("MANGLER-SISTE-MELDING", ajax::TYPE_INVALID); } $im_id = (int) $_POST['im_id']; $last_id = $im_id; // finn ut antal meldinger $num_messages = $thread->num_messages(); // hent nye meldinger $result = $thread->get_messages(NULL, NULL, "im_id > {$im_id}"); // har vi nye meldinger? $messages = array(); if ($result->rowCount() > 0) { // forsøk å sette ned meldingstelleren $thread->counter_new_reset(); // gå gjennom meldingene $i = 0; $messages = array(); while ($row = $result->fetch()) { $e = $num_messages - $i; if ($i == 0) { $last_id = $row['im_id']; } $messages[$row['im_id']] = $thread->reply_format($row, $e, false, true); $i++; } } // sett opp xml $xml = '<list it_id="' . $thread->id . '" last_im_id="' . $last_id . '">'; // har vi noen meldinger? if (count($messages) > 0) { // fiks HTML $messages = parse_html_array(array_reverse($messages)); // legg til meldingene foreach ($messages as $key => $message) { $xml .= '<message id="' . $key . '">' . htmlspecialchars($message) . '</message>'; } } $xml .= '</list>'; // send xml ajax::xml($xml); }