/** * Hent diverse infobokser for crew */ public static function getExtendedAccessBoxes() { if (!isset(\login::$extended_access)) { return; } if (!\login::extended_access_is_authed()) { return; } $boxes = array(); // support meldinger if (\access::has("crewet")) { $row = \tasks::get("support"); if ($row['t_ant'] > 0) { $boxes[] = array(\ess::$s['relative_path'] . '/support/?a=panel&kategori=oppsummering', 'Det er <b>' . $row['t_ant'] . '</b> ' . fword("ubesvart supportmelding", "ubesvarte supportmeldinger", $row['t_ant']) . '!'); } } // hent antall nye rapporteringer fra cache $row = \tasks::get("rapporteringer"); if ($row['t_ant'] > 0) { $boxes[] = array(\ess::$s['relative_path'] . '/crew/rapportering', 'Det er <b>' . $row['t_ant'] . '</b> ' . fword("ubehandlet rapportering", "ubehandlede rapporteringer", $row['t_ant']) . '.'); } // hent antall nye søknader fra cache $row = \tasks::get("soknader"); if ($row['t_ant'] > 0) { $boxes[] = array(\ess::$s['relative_path'] . '/crew/soknader', 'Det er <b>' . $row['t_ant'] . '</b> ' . fword("ubehandlet søknad", "ubehandlede søknader", $row['t_ant']) . '.'); } // antall ubesvarte henvendelser if (\access::has("mod")) { // hent antall nye henvendelser fra cache $row = \tasks::get("henvendelser"); if ($row['t_ant'] > 0) { $boxes[] = array(\ess::$s['relative_path'] . '/henvendelser?a', 'Det er <b>' . $row['t_ant'] . '</b> ' . fword("ny henvendelse", "nye henvendelser", $row['t_ant']) . ' som er ubesvart.'); } } // hendelser fra GitHub $github = \Kofradia\Users\GitHub::get(\login::$user); if (!$github->hasActivated()) { $boxes[] = array(\ess::$s['relative_path'] . '/github', 'Du vil nå motta nye hendelser fra GitHub her. Trykk her for å se de siste hendelsene.'); } else { $num_changes = $github->getCodeBehindCount() + $github->getOtherBehindCount(); if ($num_changes > 0) { $boxes[] = array(\ess::$s['relative_path'] . '/github', 'Det er <b>' . $num_changes . '</b> ny' . ($num_changes == 1 ? '' : 'e') . ' hendelse' . ($num_changes == 1 ? '' : 'r') . ' i GitHub.'); } } return $boxes; }
/** Vis informasjon for panel på forsiden */ protected static function show_main_panel_info() { if (!access::has("crewet")) { return; } // finn ut hvor mange ubehandlede det er $result = \Kofradia\DB::get()->query("\n\t\t\tSELECT su_category, COUNT(su_id) AS total, COUNT(IF(su_solved=0, 1, NULL)) AS new\n\t\t\tFROM support GROUP BY su_category"); $kategorier = self::$kategorier; while ($row = $result->fetch()) { $kategorier[$row['su_category']]['total'] = $row['total']; $kategorier[$row['su_category']]['new'] = $row['new']; } echo ' <div class="bg1_c small"> <h2 class="bg1">Oppsummering av henvendeser<span class="left2"></span><span class="right2"></span></h2> <div class="bg1"> <table class="table center tablemt"> <thead> <tr> <th>Kategori</th> <th>Antall spørsmål</th> <th>Nye spørsmål</th> </tr> </thead> <tbody>'; $total = 0; $new = 0; $i = 0; foreach ($kategorier as $id => $row) { echo ' <tr' . (++$i % 2 == 0 ? ' class="color"' : '') . '> <td><a href="./?a=panel&kategori=' . $id . '">' . htmlspecialchars($row['name']) . '</a></td> <td class="r">' . game::format_number($row['total']) . '</td> <td class="r">' . ($row['new'] > 0 ? '<b>' . game::format_number($row['new']) . '</b> ny' . ($row['new'] == 1 ? '' : 'e') : '<span style="color: #AAA">Ingen</span>') . '</td> </tr>'; $total += $row['total']; $new += $row['new']; } echo ' <tr class="highlight"> <td><a href="./?a=panel&kategori=oppsummering">Oppsummering</a></td> <td class="r">' . game::format_number($total) . '</td> <td class="r">' . ($new > 0 ? '<b>' . game::format_number($new) . '</b> ny' . ($new == 1 ? '' : 'e') : '<span style="color: #AAA">Ingen</span>') . '</td> </tr> </tbody> </table> <p class="c"><a href="./?a=search">Søk i support »</a></p> </div> </div>'; // avvik fra boksen? if ($new != tasks::get("support")) { // sett cache self::update_tasks(); } }