/**
 * Display the form to edit/create an index
 */

// Displays headers (if needed)
$GLOBALS['js_include'][] = 'functions.js';
$GLOBALS['js_include'][] = 'indexes.js';

require_once './libraries/tbl_info.inc.php';
require_once './libraries/tbl_links.inc.php';

if (isset($_REQUEST['index']) && is_array($_REQUEST['index'])) {
    // coming already from form
    $add_fields =
        count($_REQUEST['index']['columns']['names']) - $index->getColumnCount();
    if (isset($_REQUEST['add_fields'])) {
        $add_fields += $_REQUEST['added_fields'];
    }
} elseif (isset($_REQUEST['create_index'])) {
    $add_fields = $_REQUEST['added_fields'];
} else {
    $add_fields = 1;
}

// end preparing form values
?>

<form action="./tbl_indexes.php" method="post" name="index_frm"
    onsubmit="if (typeof(this.elements['index'].disabled) != 'undefined') {
        this.elements['index'].disabled = false}">
/**
 * Function to get the number of fields for the form
 *
 * @param PMA_Index $index index
 *
 * @return int
 */
function PMA_getNumberOfFieldsForForm($index)
{
    if (isset($_REQUEST['index']) && is_array($_REQUEST['index'])) {
        // coming already from form
        $add_fields = isset($_REQUEST['index']['columns']['names']) ? count($_REQUEST['index']['columns']['names']) - $index->getColumnCount() : 0;
        if (isset($_REQUEST['add_fields'])) {
            $add_fields += $_REQUEST['added_fields'];
        }
    } elseif (isset($_REQUEST['create_index'])) {
        $add_fields = $_REQUEST['added_fields'];
    } else {
        $add_fields = 0;
    }
    // end preparing form values
    return $add_fields;
}
Esempio n. 3
0
 /**
  * Test for add Columns
  *
  * @return void
  */
 public function testAddColumns()
 {
     $index = new PMA_Index();
     $index->addColumns($this->_params['columns']);
     $this->assertTrue($index->hasColumn("column1"));
     $this->assertTrue($index->hasColumn("column2"));
     $this->assertTrue($index->hasColumn("column3"));
     $this->assertEquals(3, $index->getColumnCount());
 }