Skip to content
Snippets Groups Projects
dashboard.php 1.75 KiB
Newer Older
  • Learn to ignore specific revisions
  • Jared Hancock's avatar
    Jared Hancock committed
    <?php
    /*********************************************************************
        dashboard.php
    
        Staff's Dashboard - basic stats...etc.
    
        Peter Rotich <peter@osticket.com>
    
        Copyright (c)  2006-2013 osTicket
    
    Jared Hancock's avatar
    Jared Hancock committed
        http://www.osticket.com
    
        Released under the GNU General Public License WITHOUT ANY WARRANTY.
        See LICENSE.TXT for details.
    
        vim: expandtab sw=4 ts=4 sts=4:
    **********************************************************************/
    require('staff.inc.php');
    
    Jared Hancock's avatar
    Jared Hancock committed
    
    require_once INCLUDE_DIR . 'class.report.php';
    
    
    if ($_POST['export']) {
        $report = new OverviewReport($_POST['start'], $_POST['period']);
        switch (true) {
        case ($data = $report->getTabularData($_POST['export'])):
            $ts = strftime('%Y%m%d');
            $group = Format::slugify($_POST['export']);
            $delimiter = ',';
            if (class_exists('NumberFormatter')) {
                $nf = NumberFormatter::create(Internationalization::getCurrentLocale(),
                    NumberFormatter::DECIMAL);
                $s = $nf->getSymbol(NumberFormatter::DECIMAL_SEPARATOR_SYMBOL);
                if ($s == ',')
                    $delimiter = ';';
            }
    
            Http::download("stats-$group-$ts.csv", 'text/csv');
            $output = fopen('php://output', 'w');
            fputs($output, chr(0xEF) . chr(0xBB) . chr(0xBF));
            fputcsv($output, $data['columns'], $delimeter);
            foreach ($data['data'] as $row)
                fputcsv($output, $row, $delimeter);
            exit;
        }
    }
    
    
    Jared Hancock's avatar
    Jared Hancock committed
    $nav->setTabActive('dashboard');
    
    $ost->addExtraHeader('<meta name="tip-namespace" content="dashboard.dashboard" />',
        "$('#content').data('tipNamespace', 'dashboard.dashboard');");
    
    Jared Hancock's avatar
    Jared Hancock committed
    require(STAFFINC_DIR.'header.inc.php');
    
    Jared Hancock's avatar
    Jared Hancock committed
    include(STAFFINC_DIR.'footer.inc.php');
    ?>