Ejemplo n.º 1
0
function showdataChronoContact($id, $option)
{
    global $mainframe;
    $database =& JFactory::getDBO();
    if (!$id) {
        if (is_array(JRequest::getVar('formid', array(0), 'post', 'array'))) {
            $id_arr = JRequest::getVar('formid', array(0), 'post', 'array');
            $id = $id_arr[0];
        } else {
            $id = JRequest::getVar('formid', 0, 'post', 'int');
        }
    }
    if (!$id) {
        $id = JRequest::getVar('formid', 0, 'get', 'int');
    }
    if ($id) {
        $query = "SELECT * FROM #__chrono_contact WHERE id = '{$id}'";
        $database->setQuery($query);
        $rows = $database->loadObjectList();
        $paramsvalues = new JParameter($rows[0]->paramsall);
        $formtables = explode(",", $paramsvalues->get('tablenames'));
    }
    $table = JRequest::getVar('table', '');
    $result = $database->getTableList();
    if (!in_array($table, $result) || !$table) {
        echo "<form action=\"index2.php\" method=\"post\" name=\"adminForm\">\n\t\tTable Doesn't Exist\n\t\t<input type=\"hidden\" name=\"task\" value=\"\" />\n\t\t<input type=\"hidden\" name=\"option\" value=\"{$option}\" />\n\t\t</form>";
    } else {
        $limit = $mainframe->getUserStateFromRequest($option . '.limit' . $table, 'limit', $mainframe->getCfg('list_limit'), 'int');
        $limitstart = $mainframe->getUserStateFromRequest($option . '.limitstart' . $table, 'limitstart', 0, 'int');
        // count entries
        $database->setQuery("SELECT count(*) FROM " . $table);
        $total = $database->loadResult();
        echo $database->getErrorMsg();
        jimport('joomla.html.pagination');
        $pageNav = new JPagination($total, $limitstart, $limit);
        # main database query
        # get primary key
        $tables = array();
        $tables[] = $table;
        $result = $database->getTableFields($tables, false);
        $table_fields = $result[$table];
        $primary = '';
        foreach ($table_fields as $table_field => $field_data) {
            if ($field_data->Key == 'PRI') {
                $primary = $table_field;
            }
        }
        $order = "";
        if ($primary) {
            $order = " ORDER BY " . $primary;
        }
        $database->setQuery("SELECT * FROM " . $table . $order . " LIMIT {$pageNav->limitstart},{$pageNav->limit}");
        $rows = $database->loadObjectList();
        if ($database->getErrorNum()) {
            JError::raiseWarning(100, $database->stderr());
            $mainframe->redirect("index2.php?option={$option}");
        }
        $formid = $id;
        HTML_ChronoContact::showdataChronoContact($rows, $pageNav, $option, $formid, $table);
    }
}