{% extends "base.html" %} {% block title %}{{ config.APP_NAME }} - Datagrid{% endblock %} {% block css_link %} {% endblock %} {% block body %}
{% endblock %} {% block init_script %} require(['sources/generated/sqleditor'], function(ctx) { var $ = pgAdmin.SqlEditor.jquery, S = pgAdmin.SqlEditor.S, editorPanel = $('.sql-editor'), loadingDiv = $('#fetching_data'), msgDiv = loadingDiv.find('.sql-editor-busy-text'); // Register unload event on window close. window.onbeforeunload = function(ev) { $.ajax({ url: "{{ url_for('datagrid.index') }}" + "close/" + {{ uniqueId }}, method: 'GET' }); }; // Get the controller object from pgAdmin.SqlEditor var sqlEditorController = pgAdmin.SqlEditor.create(editorPanel); // Listen on events to show/hide loading-icon and change messages. sqlEditorController.on('pgadmin-sqleditor:loading-icon:message', function(msg) { msgDiv.text(msg); }).on('pgadmin-sqleditor:loading-icon:show', function(msg) { loadingDiv.removeClass('hide'); msgDiv.text(msg); }).on('pgadmin-sqleditor:loading-icon:hide', function() { if (!loadingDiv.hasClass('hide')) { loadingDiv.addClass('hide'); } }); // Fetch the SQL for Scripts (eg: CREATE/UPDATE/DELETE/SELECT) var script_sql = ''; {% if script_type_url%} // Call AJAX only if script type url is present $.ajax({ url: '{{ script_type_url }}', type:'GET', async: false, success: function(res) { script_sql = res; }, error: function(jqx) { var msg = jqx.responseText; /* Error from the server */ if (jqx.status == 410 || jqx.status == 500) { try { var data = $.parseJSON(jqx.responseText); msg = data.errormsg; } catch (e) {} } pgBrowser.report_error( S('{{ _('Error fetching SQL for script: "%s"') }}') .sprintf(msg) .value(), msg ); } }); {% endif %} // Start the query tool. sqlEditorController.start({{ is_query_tool }}, "{{ editor_title }}", script_sql, {{ is_new_browser_tab }}, "{{ server_type }}", {{ prompt_save_changes }}); }); {% endblock %}