/**
 * Creates a fieldset for adding a new item, if the user has the privileges.
 *
 * @param    string   $docu   String used to create a link to the MySQL docs
 * @param    string   $priv   Privilege to check for adding a new item
 * @param    string   $name   MySQL name of the item
 *
 * @return   string   An HTML snippet with the link to add a new item
 */
function PMA_RTE_getFooterLinks($docu, $priv, $name)
{
    global $db, $url_query, $ajax_class;
    $icon = 'b_' . strtolower($name) . '_add.png';
    $retval = "";
    $retval .= "<!-- ADD " . $name . " FORM START -->\n";
    $retval .= "<fieldset class='left'>\n";
    $retval .= "    <legend>" . __('New') . "</legend>\n";
    $retval .= "        <div class='wrap'>\n";
    if (PMA_currentUserHasPrivilege($priv, $db)) {
        $retval .= "            <a {$ajax_class['add']} ";
        $retval .= "href='db_" . strtolower($name) . "s.php";
        $retval .= "?{$url_query}&amp;add_item=1'>";
        $retval .= PMA_getIcon($icon);
        $retval .= PMA_RTE_getWord('add') . "</a>\n";
    } else {
        $retval .= "            " . PMA_getIcon($icon);
        $retval .= PMA_RTE_getWord('no_create') . "\n";
    }
    $retval .= "            " . PMA_showMySQLDocu('SQL-Syntax', $docu) . "\n";
    $retval .= "        </div>\n";
    $retval .= "</fieldset>\n";
    $retval .= "<!-- ADD " . $name . " FORM END -->\n\n";
    return $retval;
}
Exemple #2
0
/**
 * Creates the contents for a row in the list of events
 *
 * @param    array    $event      An array of routine data
 * @param    string   $rowclass   Empty or one of ['even'|'odd']
 *
 * @return   string   HTML code of a cell for the list of events
 */
function PMA_EVN_getRowForList($event, $rowclass = '')
{
    global $ajax_class, $url_query, $db, $titles;
    $sql_drop = sprintf('DROP EVENT IF EXISTS %s', PMA_backquote($event['EVENT_NAME']));
    $retval = "        <tr class='noclick {$rowclass}'>\n";
    $retval .= "            <td>\n";
    $retval .= "                <span class='drop_sql hide'>{$sql_drop}</span>\n";
    $retval .= "                <strong>\n";
    $retval .= "                    " . htmlspecialchars($event['EVENT_NAME']) . "\n";
    $retval .= "                </strong>\n";
    $retval .= "            </td>\n";
    $retval .= "            <td>\n";
    $retval .= "                 {$event['STATUS']}\n";
    $retval .= "            </td>\n";
    $retval .= "            <td>\n";
    if (PMA_currentUserHasPrivilege('EVENT', $db)) {
        $retval .= '                <a ' . $ajax_class['edit'] . ' href="db_events.php?' . $url_query . '&amp;edit_item=1' . '&amp;item_name=' . urlencode($event['EVENT_NAME']) . '">' . $titles['Edit'] . "</a>\n";
    } else {
        $retval .= "                {$titles['NoEdit']}\n";
    }
    $retval .= "            </td>\n";
    $retval .= "            <td>\n";
    $retval .= '                <a ' . $ajax_class['export'] . ' href="db_events.php?' . $url_query . '&amp;export_item=1' . '&amp;item_name=' . urlencode($event['EVENT_NAME']) . '">' . $titles['Export'] . "</a>\n";
    $retval .= "            </td>\n";
    $retval .= "            <td>\n";
    if (PMA_currentUserHasPrivilege('EVENT', $db)) {
        $retval .= '                <a ' . $ajax_class['drop'] . ' href="sql.php?' . $url_query . '&amp;sql_query=' . urlencode($sql_drop) . '&amp;goto=db_events.php' . urlencode("?db={$db}") . '" >' . $titles['Drop'] . "</a>\n";
    } else {
        $retval .= "                {$titles['NoDrop']}\n";
    }
    $retval .= "            </td>\n";
    $retval .= "            <td>\n";
    $retval .= "                 {$event['EVENT_TYPE']}\n";
    $retval .= "            </td>\n";
    $retval .= "        </tr>\n";
    return $retval;
}
Exemple #3
0
 /**
  * Returns the db tabs as an array
  *
  * @return array Data for generating db tabs
  */
 private function _getDbTabs()
 {
     $db_is_information_schema = PMA_is_system_schema($this->_db);
     $num_tables = count(PMA_DBI_get_tables($this->_db));
     $is_superuser = PMA_isSuperuser();
     /**
      * Gets the relation settings
      */
     $cfgRelation = PMA_getRelationsParam();
     $tabs = array();
     /**
      * export, search and qbe links if there is at least one table
      */
     if ($num_tables == 0) {
         $tabs['qbe']['warning'] = __('Database seems to be empty!');
         $tabs['search']['warning'] = __('Database seems to be empty!');
         $tabs['export']['warning'] = __('Database seems to be empty!');
     }
     $tabs['structure']['link'] = 'db_structure.php';
     $tabs['structure']['text'] = __('Structure');
     $tabs['structure']['icon'] = 'b_props.png';
     $tabs['sql']['link'] = 'db_sql.php';
     $tabs['sql']['args']['db_query_force'] = 1;
     $tabs['sql']['text'] = __('SQL');
     $tabs['sql']['icon'] = 'b_sql.png';
     $tabs['search']['text'] = __('Search');
     $tabs['search']['icon'] = 'b_search.png';
     $tabs['search']['link'] = 'db_search.php';
     $tabs['qbe']['text'] = __('Query');
     $tabs['qbe']['icon'] = 's_db.png';
     $tabs['qbe']['link'] = 'db_qbe.php';
     $tabs['export']['text'] = __('Export');
     $tabs['export']['icon'] = 'b_export.png';
     $tabs['export']['link'] = 'db_export.php';
     if (!$db_is_information_schema) {
         $tabs['import']['link'] = 'db_import.php';
         $tabs['import']['text'] = __('Import');
         $tabs['import']['icon'] = 'b_import.png';
         $tabs['operation']['link'] = 'db_operations.php';
         $tabs['operation']['text'] = __('Operations');
         $tabs['operation']['icon'] = 'b_tblops.png';
         if ($is_superuser && !PMA_DRIZZLE) {
             $tabs['privileges']['link'] = 'server_privileges.php';
             $tabs['privileges']['args']['checkprivs'] = $this->_db;
             // stay on database view
             $tabs['privileges']['args']['viewing_mode'] = 'db';
             $tabs['privileges']['text'] = __('Privileges');
             $tabs['privileges']['icon'] = 's_rights.png';
         }
         if (!PMA_DRIZZLE) {
             $tabs['routines']['link'] = 'db_routines.php';
             $tabs['routines']['text'] = __('Routines');
             $tabs['routines']['icon'] = 'b_routines.png';
         }
         if (PMA_MYSQL_INT_VERSION >= 50106 && !PMA_DRIZZLE && PMA_currentUserHasPrivilege('EVENT', $this->_db)) {
             $tabs['events']['link'] = 'db_events.php';
             $tabs['events']['text'] = __('Events');
             $tabs['events']['icon'] = 'b_events.png';
         }
         if (!PMA_DRIZZLE && PMA_currentUserHasPrivilege('TRIGGER', $this->_db)) {
             $tabs['triggers']['link'] = 'db_triggers.php';
             $tabs['triggers']['text'] = __('Triggers');
             $tabs['triggers']['icon'] = 'b_triggers.png';
         }
     }
     if (PMA_Tracker::isActive()) {
         $tabs['tracking']['text'] = __('Tracking');
         $tabs['tracking']['icon'] = 'eye.png';
         $tabs['tracking']['link'] = 'db_tracking.php';
     }
     if (!$db_is_information_schema && $cfgRelation['designerwork']) {
         $tabs['designer']['text'] = __('Designer');
         $tabs['designer']['icon'] = 'b_relations.png';
         $tabs['designer']['link'] = 'pmd_general.php';
     }
     return $tabs;
 }
Exemple #4
0
 */
if (!$tbl_is_view && !$db_is_information_schema) {
    $tabs['import']['icon'] = 'b_tblimport.png';
    $tabs['import']['link'] = 'tbl_import.php';
    $tabs['import']['text'] = __('Import');
    $tabs['operation']['icon'] = 'b_tblops.png';
    $tabs['operation']['link'] = 'tbl_operations.php';
    $tabs['operation']['text'] = __('Operations');
}
if (PMA_Tracker::isActive()) {
    $tabs['tracking']['icon'] = 'eye.png';
    $tabs['tracking']['text'] = __('Tracking');
    $tabs['tracking']['link'] = 'tbl_tracking.php';
}
if (!$db_is_information_schema && !PMA_DRIZZLE) {
    if (PMA_currentUserHasPrivilege('TRIGGER', $db, $table) && !PMA_Table::isView($db, $table)) {
        $tabs['triggers']['link'] = 'tbl_triggers.php';
        $tabs['triggers']['text'] = __('Triggers');
        $tabs['triggers']['icon'] = 'b_triggers.png';
    }
}
/**
 * Views support a limited number of operations
 */
if ($tbl_is_view && !$db_is_information_schema) {
    $tabs['operation']['icon'] = 'b_tblops.png';
    $tabs['operation']['link'] = 'view_operations.php';
    $tabs['operation']['text'] = __('Operations');
}
if ($table_info_num_rows == 0 && !$tbl_is_view) {
    $tabs['browse']['warning'] = __('Table seems to be empty!');
Exemple #5
0
if (!$db_is_information_schema) {
    $tabs[] =& $tab_import;
    $tabs[] =& $tab_operation;
    if ($is_superuser && !PMA_DRIZZLE) {
        $tabs[] =& $tab_privileges;
    }
    if (!PMA_DRIZZLE) {
        $tabs[] =& $tab_routines;
    }
    if (PMA_MYSQL_INT_VERSION >= 50106 && !PMA_DRIZZLE) {
        if (PMA_currentUserHasPrivilege('EVENT', $db)) {
            $tabs[] =& $tab_events;
        }
    }
    if (!PMA_DRIZZLE) {
        if (PMA_currentUserHasPrivilege('TRIGGER', $db)) {
            $tabs[] =& $tab_triggers;
        }
    }
}
if (PMA_Tracker::isActive()) {
    $tabs[] =& $tab_tracking;
}
if (!$db_is_information_schema) {
    if ($cfgRelation['designerwork']) {
        $tabs[] =& $tab_designer;
    }
}
$url_params['db'] = $db;
echo PMA_generate_html_tabs($tabs, $url_params);
unset($tabs);