コード例 #1
0
ファイル: tables.php プロジェクト: RA2WP/RA2WP
     //get columns
     $my_test_cols = array();
     $my_test_cols_visible = array();
     $col_idx = 0;
     foreach ($vo_tb_cols as $vo_tb_col) {
         array_push($my_test_cols, $vo_tb_col->col_label);
         if ($vo_tb_col->is_visible) {
             array_push($my_test_cols_visible, $col_idx);
         }
         $col_idx++;
     }
     //Output table
     $table = new table();
     $table->set_table_tpl_path($wpbi_url['tpl']);
     $table->set_table_pagination($pagination_html);
     $table->set_css_class(basename($_POST[$wpbi_settings['parameter']['tb-style']], '.css'));
     $table->set_css_style(basename($vo_table->style_id, '.css'));
     $table->set_rows($my_test_rows);
     $table->set_cols($my_test_cols);
     $table->set_visible_cols($my_test_cols_visible);
     $table->set_title($vo_table->title);
     $table->has_header($vo_table->has_header);
     $table->has_footer($vo_table->has_footer);
     $table->set_can_download($vo_table->can_download);
     $table->encode_html(!$vo_table->encode_html);
     $test_output = $test_output . $table->get_html();
 }
 //Prepare output
 $template_site->assign_vars(array('TPL_CSS' => $wpbi_url['styles']['url'] . "tables/" . (isset($table->css_style) ? $table->css_style : $_POST[$wpbi_settings['parameter']['tb-style']]) . '.css', 'PG_TITLE' => $wpbi_dialog['page']['tables']['title'], 'PG_DESCRIPTION' => sprintf($wpbi_dialog['table']['saved']['test'], $vo_table->name, htmlentities($query->stmt))));
 $template_site->pparse('css');
 $template_site->pparse('header');
コード例 #2
0
ファイル: queries.php プロジェクト: RA2WP/RA2WP
            $pagination->set_pg_parameter('paged');
            $pagination->set_current_page(isset($_GET[$pagination->pg_parameter]) ? abs((int) $_GET[$pagination->pg_parameter]) : 1);
            $pagination->set_rows($total_rows);
            $pagination->set_css_class('widefat');
            $pagination->set_pagination_stats($wpbi_dialog['table']['pagination']['stats']);
            $pagination->set_paginate_links(paginate_links(array('base' => esc_url(add_query_arg($pagination->pg_parameter, '%#%')), 'format' => '', 'prev_text' => $wpbi_dialog['table']['pagination']['prev_text'], 'next_text' => $wpbi_dialog['table']['pagination']['next_text'], 'total' => ceil($pagination->rows / $pagination->pg_interval), 'current' => $pagination->current_page)));
            $pagination->initialize();
            //END page navigation
            //Execute query limitng the resultset
            $my_test_rows = $my_test_db->get_results($query->limit_qy_to($pagination->item_start - 1, $pagination->pg_interval), 'ARRAY_N');
            $my_test_cols = $my_test_db->get_col_info('name');
            //Output table
            $table = new table();
            $table->set_table_tpl_path($wpbi_url['tpl']);
            $table->set_table_pagination($pagination->get_html());
            $table->set_css_class('widefat');
            $table->set_rows($my_test_rows);
            $table->set_cols($my_test_cols);
            $table->has_header(true);
            $table->has_footer(true);
            $table->encode_html(true);
            $test_output = $test_output . $table->get_html();
        }
        //Prepare output
        $template_site->assign_vars(array('PG_TITLE' => $wpbi_dialog['page']['queries']['title'], 'PG_DESCRIPTION' => sprintf($wpbi_dialog['query']['saved']['test'], $vo_query->name, htmlentities($query->stmt))));
        $template_site->pparse('header');
        echo $test_output;
        $template_site->pparse('footer');
    }
}
?>
コード例 #3
0
ファイル: functions.php プロジェクト: RA2WP/RA2WP
function get_html_4_table($id)
{
    global $wpdb, $qy_table_databases, $qy_table_queries, $wpbi_sql, $wpbi_settings, $wpbi_url, $wpbi_dialog, $lng, $language, $template_site;
    $template_site->set_filenames(array('css' => $wpbi_url['tpl']['root-path'] . $wpbi_url['tpl']['css']));
    $table_id = $id;
    //id or key
    $search_by_key = false;
    if (!is_numeric($table_id)) {
        if (strlen($table_id) == 32 && strpos($table_id, ' ') === false) {
            $search_by_key = true;
        } else {
            return '<p>Could not create table. Wrong ID provided.</p>';
        }
    }
    $test_output = '';
    //Store the test output
    //Get table metadata
    $vo_table = new vo_table($table_id, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, $table_id, NULL);
    $dao_table = new dao_table($wpdb, $wpbi_sql['tname']['tables']);
    $vo_table = $search_by_key ? $dao_table->select_by_key($vo_table) : $dao_table->select($vo_table);
    $vo_table = $vo_table[0];
    //Get cols metadata
    $selected_table = $vo_table->id;
    $vo_tb_cols = new vo_tb_cols(NULL, $selected_table, NULL, NULL, NULL, NULL, NULL, NULL, NULL);
    $dao_tb_cols = new dao_tb_cols($wpdb, $wpbi_sql['tname']['cols']);
    $vo_tb_cols = $dao_tb_cols->select($vo_tb_cols);
    //Get selected query
    $dao_query = new dao_query($wpdb, $wpbi_sql['tname']['queries']);
    $tgt_query = new vo_query($vo_table->query_id, NULL, NULL, NULL, NULL);
    $vo_query = $dao_query->select($tgt_query);
    $vo_query = $vo_query[0];
    //Select associated db
    $dao_database = new dao_database($wpdb, $wpbi_sql['tname']['databases']);
    $tgt_database = new vo_database($vo_query->db_id, NULL, NULL, NULL, NULL);
    $vo_database = $dao_database->select($tgt_database);
    $vo_database = $vo_database[0];
    //Create wpdb object and execute the query
    $my_test_db = new wpdb($vo_database->user, $vo_database->pass, $vo_database->name, $vo_database->host);
    $query = new query($vo_query->statement, $wpdb, $wpbi_sql['tname']['vars']);
    $total_rows = $my_test_db->get_results($query->count_qy_results(), 'ARRAY_N');
    $total_rows = intval($total_rows[0][0]);
    if ($total_rows == 0) {
        $test_output = $test_output . $wpbi_dialog['msg']['query']['no-records'];
    } else {
        //Add page navigation if requested
        if ($vo_table->rows_per_pg > 0) {
            //Page navigation
            $pagination = new pagination();
            $pagination->set_pagination_tpl_path($wpbi_url['tpl']);
            $pagination->set_pg_interval($vo_table->rows_per_pg);
            $pagination->set_pg_parameter($table_id . '_paged');
            $pagination->set_current_page(isset($_GET[$pagination->pg_parameter]) ? abs((int) $_GET[$pagination->pg_parameter]) : 1);
            $pagination->set_rows($total_rows);
            //$pagination->set_css_class(basename($vo_table->style_id,'.css'));
            $pagination->set_css_style(basename($vo_table->style_id, '.css'));
            $pagination->set_pagination_stats($wpbi_dialog['table']['pagination']['stats']);
            $pagination->set_paginate_links(paginate_links(array('base' => esc_url(add_query_arg($pagination->pg_parameter, '%#%')), 'format' => '', 'prev_text' => __($wpbi_dialog['table']['pagination']['prev_text']), 'next_text' => __($wpbi_dialog['table']['pagination']['next_text']), 'total' => ceil($pagination->rows / $pagination->pg_interval), 'current' => $pagination->current_page)));
            $pagination->initialize();
            $pagination_html = $pagination->get_html();
            //END page navigation
            //Execute query limitng the resultset
            $my_test_rows = $my_test_db->get_results($query->limit_qy_to($pagination->item_start - 1, $pagination->pg_interval), 'ARRAY_N');
        } else {
            $my_test_rows = $my_test_db->get_results($query->stmt, 'ARRAY_N');
        }
        //get columns
        $my_test_cols = array();
        $my_test_cols_visible = array();
        $col_idx = 0;
        foreach ($vo_tb_cols as $vo_tb_col) {
            array_push($my_test_cols, $vo_tb_col->col_label);
            if ($vo_tb_col->is_visible) {
                array_push($my_test_cols_visible, $col_idx);
            }
            $col_idx++;
        }
        //Output table
        $table = new table();
        $table->set_table_tpl_path($wpbi_url['tpl']);
        $table->set_table_pagination($pagination_html);
        $table->set_css_class(basename($vo_table->style_id, '.css'));
        $table->set_css_style(basename($vo_table->style_id, '.css'));
        $table->set_rows($my_test_rows);
        $table->set_cols($my_test_cols);
        $table->set_visible_cols($my_test_cols_visible);
        $table->set_title($vo_table->title);
        $table->has_header($vo_table->has_header);
        $table->has_footer($vo_table->has_footer);
        $table->set_can_download($vo_table->can_download);
        $table->encode_html(!$vo_table->encode_html);
        $test_output = $test_output . $table->get_html();
    }
    //Prepare output
    $template_site->assign_vars(array('TPL_CSS' => $wpbi_url['styles']['url'] . "tables/" . $table->css_style . '.css'));
    ob_start();
    $template_site->pparse('css');
    $css_output = ob_get_contents();
    ob_end_clean();
    return $css_output . $test_output;
}