T_setlocale(LC_MESSAGES, $locale);
T_bindtextdomain(APP_ID, APP_DIR . '/assets/locale');
T_textdomain(APP_ID);
// Process query or get catalog
$TITLE = 'Gudang Data Indonesia';
$query = $_GET['q'];
$output = $_GET['o'];
if (isset($query)) {
    $gdi = new gdi();
    $query = file_exists(DATA_DIR . $query . '.txt') ? $query : DEFAULT_DATA;
    $output = class_exists($output) ? $output : DEFAULT_OUTPUT;
    $data = $gdi->get_data($query, $output);
    $o = new $output();
    $CONTENT = $o->out($data);
    if (in_array($output, array('meta', 'html', 'graph'))) {
        $meta = $gdi->get_meta($query, $output);
        if ($output == 'meta') {
            $CONTENT = json_encode($meta);
        }
        $TITLE = $meta['deskripsi'];
        $types = json_decode('{"html":"","meta":"","graph":"","csv":"","json":"","xml":""}', true);
        foreach ($types as $key => $val) {
            $ACTION .= sprintf('<li><a href="./%1$s?q=%2$s&o=%3$s">%4$s</a></li>', $val, $query, $key, $key);
        }
        $ACTION = '<ul class="action">' . $ACTION . '</ul>';
    } else {
        die($CONTENT);
    }
} else {
    $catalog = new catalog();
    $catalog->get_catalog(DATA_DIR);