phpmyadmin/normalization.php
Smita Kumari 1e971f3263 1NF: initial commit
Signed-off-by: Smita Kumari <kumarismita62@gmail.com>

step 1 to 1NF complete

Signed-off-by: Smita Kumari <kumarismita62@gmail.com>

added layout for step2 and step3

Signed-off-by: Smita Kumari <kumarismita62@gmail.com>

basic 1NF complete

Signed-off-by: Smita Kumari <kumarismita62@gmail.com>

fix coding style

Signed-off-by: Smita Kumari <kumarismita62@gmail.com>

added doc comment

Signed-off-by: Smita Kumari <kumarismita62@gmail.com>

fix coding style

Signed-off-by: Smita Kumari <kumarismita62@gmail.com>

error handling plus during split shows my string type columns

Signed-off-by: Smita Kumari <kumarismita62@gmail.com>

removing unnecessory code

Signed-off-by: Smita Kumari <kumarismita62@gmail.com>

removing unnecessory code

Signed-off-by: Smita Kumari <kumarismita62@gmail.com>

code refactoring plus translatable message format

Signed-off-by: Smita Kumari <kumarismita62@gmail.com>

added events on cancel and added unbind function calls

Signed-off-by: Smita Kumari <kumarismita62@gmail.com>

hide default textarea when value NONE

Signed-off-by: Smita Kumari <kumarismita62@gmail.com>

remove unnecesory alert

Signed-off-by: Smita Kumari <kumarismita62@gmail.com>

create unique column screen fixed plus starting link for normalization on tbl_structure page

Signed-off-by: Smita Kumari <kumarismita62@gmail.com>

added hint to follow steps carefully and finish message changes

Signed-off-by: Smita Kumari <kumarismita62@gmail.com>

Fix coding style plus messages

Signed-off-by: Smita Kumari <kumarismita62@gmail.com>

added wand icon for normalization

Signed-off-by: Smita Kumari <kumarismita62@gmail.com>

bug fix: dont go next step if any index other than primary/unique is crated

Signed-off-by: Smita Kumari <kumarismita62@gmail.com>

bug fix: replace .live with .on plus others

Signed-off-by: Smita Kumari <kumarismita62@gmail.com>

change show central column message plus refresh central column list on split save

Signed-off-by: Smita Kumari <kumarismita62@gmail.com>
2014-06-30 22:32:53 +05:30

73 lines
2.2 KiB
PHP

<?php
/* vim: set expandtab sw=4 ts=4 sts=4: */
/**
* Normalization process (temporarily specific to 1NF)
*
* @package PhpMyAdmin
*/
/**
*
*/
require_once 'libraries/common.inc.php';
require_once 'libraries/transformations.lib.php';
require_once 'libraries/normalization.lib.php';
require_once 'libraries/tbl_columns_definition_form.lib.php';
if (isset($_REQUEST['getColumns'])) {
$html = '<option selected disabled>' . __('Select one ...') . '</option>'
. '<option value="no_such_col">' . __('No such column') . '</option>';
//get column whose datatype falls under string category
$html .= PMA_getHtmlForColumnsList($db, $table, 'string');
echo $html;
exit;
}
if (isset($_REQUEST['splitColumn'])) {
$num_fields = $_REQUEST['numFields'];
$html = PMA_getHtmlForCreateNewColumn($num_fields, $db, $table);
$html .= PMA_URL_getHiddenInputs($db, $table);
echo $html;
exit;
}
if (isset($_REQUEST['addNewPrimary'])) {
$num_fields = 1;
$columnMeta = array('Field'=>$table . "_id", 'Extra'=>'auto_increment');
$html = PMA_getHtmlForCreateNewColumn(
$num_fields, $db, $table, $columnMeta
);
$html .= PMA_URL_getHiddenInputs($db, $table);
echo $html;
exit;
}
$response = PMA_Response::getInstance();
$header = $response->getHeader();
$scripts = $header->getScripts();
$scripts->addFile('normalization.js');
$scripts->addFile('jquery/jquery.uitablefilter.js');
if (isset($_REQUEST['normalizeTo'])) {
$normalForm = $_REQUEST['normalizeTo'];
if ($normalForm != '1nf') {
$response->addHTML(
'<h3 style="text-align:center">'
. __('Second/Third step of normalization') . '</h3>'
. '<fieldset>'
. '<legend>Coming soon...</legend>'
. 'Wait is worth it :-)</fieldset>'
);
exit;
}
}
if (isset($_REQUEST['step1'])) {
$html = PMA_getHtmlFor1NFStep1($db, $table);
$response->addHTML($html);
} else if (isset($_REQUEST['step2'])) {
$res = PMA_getHtmlContentsFor1NFStep2($db, $table);
$response->addJSON($res);
} else if (isset($_REQUEST['step3'])) {
$res = PMA_getHtmlContentsFor1NFStep3($db, $table);
$response->addJSON($res);
} else {
$response->addHTML(PMA_getHtmlForNormalizetable());
}