diff options
author | Michal Čihař <mcihar@novell.com> | 2010-08-23 12:55:19 +0400 |
---|---|---|
committer | Michal Čihař <mcihar@novell.com> | 2010-08-23 12:55:19 +0400 |
commit | f84659efcba18bf33e0d59187044d3b4ab285bfb (patch) | |
tree | 8bfea83e7bd03e35eecce939a2a666bc0683be30 /schema_edit.php | |
parent | 1c20d31e65f5862f429df22b14d2bd33247bd2ed (diff) |
Better file name for schema edit page.
Diffstat (limited to 'schema_edit.php')
-rw-r--r-- | schema_edit.php | 140 |
1 files changed, 140 insertions, 0 deletions
diff --git a/schema_edit.php b/schema_edit.php new file mode 100644 index 0000000000..fb15d00222 --- /dev/null +++ b/schema_edit.php @@ -0,0 +1,140 @@ +<?php +/* vim: set expandtab sw=4 ts=4 sts=4: */ +/** + * + * @version $Id$ + * @package phpMyAdmin + */ + +/** + * Gets some core libraries + */ + +require_once './libraries/common.inc.php'; +require_once './libraries/db_common.inc.php'; +require './libraries/StorageEngine.class.php'; + +$active_page = 'db_operations.php'; +require_once './libraries/db_common.inc.php'; +$url_query .= '&goto=schema_edit.php'; +require_once './libraries/db_info.inc.php'; + +/** + * Includ settings for relation stuff + * get all variables needed for exporting relational schema + * in $cfgRelation + */ +require_once './libraries/relation.lib.php'; +$cfgRelation = PMA_getRelationsParam(); + +/** + * This is to avoid "Command out of sync" errors. Before switching this to + * a value of 0 (for MYSQLI_USE_RESULT), please check the logic + * to free results wherever needed. + */ +$query_default_option = PMA_DBI_QUERY_STORE; + +/** + * Now in ./libraries/relation.lib.php we check for all tables + * that we need, but if we don't find them we are quiet about it + * so people can't work without relational variables. + * This page is absolutely useless if you didn't set up your tables + * correctly, so it is a good place to see which tables we can and + * complain ;-) + */ +if (!$cfgRelation['relwork']) { + echo sprintf(__('<b>%s</b> table not found or not set in %s'), 'relation', 'config.inc.php') . '<br />' . "\n" + . PMA_showDocu('relation') . "\n"; + require_once './libraries/footer.inc.php'; +} + +if (!$cfgRelation['displaywork']) { + echo sprintf(__('<b>%s</b> table not found or not set in %s'), 'table_info', 'config.inc.php') . '<br />' . "\n" + . PMA_showDocu('table_info') . "\n"; + require_once './libraries/footer.inc.php'; +} + +if (!isset($cfgRelation['table_coords'])){ + echo sprintf(__('<b>%s</b> table not found or not set in %s'), 'table_coords', 'config.inc.php') . '<br />' . "\n" + . PMA_showDocu('table_coords') . "\n"; + require_once './libraries/footer.inc.php'; +} +if (!isset($cfgRelation['pdf_pages'])) { + echo sprintf(__('<b>%s</b> table not found or not set in %s'), 'pdf_page', 'config.inc.php') . '<br />' . "\n" + . PMA_showDocu('pdf_pages') . "\n"; + require_once './libraries/footer.inc.php'; +} + +if ($cfgRelation['pdfwork']) { + + /** + * User object created for presenting the HTML options + * so, user can interact with it and perform export of relations schema + */ + + require_once './libraries/schema/User_Schema.class.php'; + $user_schema = new PMA_User_Schema(); + + /** + * This function will process the user defined pages + * and tables which will be exported as Relational schema + * you can set the table positions on the paper via scratchboard + * for table positions, put the x,y co-ordinates + * + * @param string $do It tells what the Schema is supposed to do + * create and select a page, generate schema etc + */ + if(isset($_REQUEST['do'])){ + $user_schema->setAction($_REQUEST['do']); + $user_schema->processUserPreferences(); + } + + /** + * Show some possibility to select a page for the export of relation schema + * Lists all pages created before and can select and edit from them + */ + + $user_schema->selectPage(); + + /** + * Create a new page where relations will be drawn + */ + + $user_schema->createPage($db); + + /** + * After selection of page or creating a page + * It will show you the list of tables + * A dashboard will also be shown where you can position the tables + */ + + $user_schema->showTableDashBoard(); + + if (isset($_REQUEST['do']) + && ($_REQUEST['do'] == 'edcoord' + || ($_REQUEST['do']== 'selectpage' && isset($user_schema->choosenPage) && $user_schema->choosenPage != 0) + || ($_REQUEST['do'] == 'createpage' && isset($user_schema->choosenPage) && $user_schema->choosenPage != 0))) { + + /** + * show Export schema generation options + */ + $user_schema->displaySchemaGenerationOptions(); + + if ((isset($showwysiwyg) && $showwysiwyg == '1')) { + ?> + <script type="text/javascript"> + //<![CDATA[ + ToggleDragDrop('pdflayout'); + //]]> + </script> + <?php + } + } // end if +} // end if ($cfgRelation['pdfwork']) + +/** + * Displays the footer + */ +echo "\n"; +require_once './libraries/footer.inc.php'; +?> |