From 096d170e0488e86c5a3ceb11924b9da444d7daa8 Mon Sep 17 00:00:00 2001 From: William Desportes Date: Sat, 9 Jun 2018 15:48:52 +0200 Subject: [PATCH] Move designer config to javascript w/json Signed-off-by: William Desportes --- js/designer/init.js | 17 ++++++++--------- libraries/classes/Database/Designer.php | 16 +++++++++++----- templates/database/designer/main.twig | 10 +++------- 3 files changed, 22 insertions(+), 21 deletions(-) diff --git a/js/designer/init.js b/js/designer/init.js index 640b49e608..29224aecd3 100644 --- a/js/designer/init.js +++ b/js/designer/init.js @@ -23,17 +23,16 @@ AJAX.registerOnload('designer/init.js', function () { $('#ab').accordion('refresh'); return false; }); - var tables_data = JSON.parse($('#script_tables').html()); - j_tabs = tables_data.j_tabs; - h_tabs = tables_data.h_tabs; - contr = JSON.parse($('#script_contr').html()); - display_field = JSON.parse($('#script_display_field').html()); + j_tabs = designer_config.scriptTables.j_tabs; + h_tabs = designer_config.scriptTables.h_tabs; + contr = designer_config.scriptContr; + display_field = designer_config.scriptDisplayField; - server = $('#script_server').html(); - db = $('#script_db').html(); - selected_page = $('#script_display_page').html() === '' ? '-1' : $('#script_display_page').html(); - designer_tables_enabled = $('#designer_tables_enabled').html() === '1'; + server = designer_config.server; + db = designer_config.db; + selected_page = designer_config.displayPage; + designer_tables_enabled = designer_config.tablesEnabled; Main(); diff --git a/libraries/classes/Database/Designer.php b/libraries/classes/Database/Designer.php index af0b43972e..c82249e148 100644 --- a/libraries/classes/Database/Designer.php +++ b/libraries/classes/Database/Designer.php @@ -360,15 +360,21 @@ class Designer } } } + + $designerConfig = new \stdClass(); + $designerConfig->db = $db; + $designerConfig->scriptTables = $scriptTables; + $designerConfig->scriptContr = $scriptContr; + $designerConfig->server = $GLOBALS['server']; + $designerConfig->scriptDisplayField = $scriptDisplayField; + $designerConfig->displayPage = ($displayPage === '' ? '-1' : $displayPage); + $designerConfig->tablesEnabled = $cfgRelation['pdfwork']; + return Template::get('database/designer/main')->render([ - 'server' => $GLOBALS['server'], 'db' => $db, 'get_db' => $getDb, - 'script_tables' => json_encode($scriptTables), - 'script_contr' => json_encode($scriptContr), - 'script_display_field' => json_encode($scriptDisplayField), + 'designer_config'=> json_encode($designerConfig), 'display_page' => $displayPage, - 'relation_pdfwork' => $cfgRelation['pdfwork'], 'has_query' => $hasQuery, 'selected_page' => $selectedPage, 'params_array' => $paramsArray, diff --git a/templates/database/designer/main.twig b/templates/database/designer/main.twig index 1afa69eac6..c185f189d6 100644 --- a/templates/database/designer/main.twig +++ b/templates/database/designer/main.twig @@ -1,12 +1,8 @@ {# Invisible characters will make javascript crash #} {% spaceless %} -
{{ server }}
-
{{ db }}
-
{{ script_tables }}
-
{{ script_contr }}
-
{{ script_display_field }}
-
{{ display_page }}
-
{{ relation_pdfwork }}
+ {% endspaceless %} {# side menu #}