diff --git a/web/pgadmin/browser/templates/browser/js/node.js b/web/pgadmin/browser/templates/browser/js/node.js
index f35613e39..c7b4220f9 100644
--- a/web/pgadmin/browser/templates/browser/js/node.js
+++ b/web/pgadmin/browser/templates/browser/js/node.js
@@ -714,8 +714,9 @@ define([
sql_url = 'sql';
}
// Open data grid & pass the URL for fetching
- pgAdmin.DataGrid.show_query_tool.apply(
- this, [obj.generate_url(i, sql_url, d, true), i]
+ pgAdmin.DataGrid.show_query_tool(
+ obj.generate_url(i, sql_url, d, true),
+ i, scriptType
);
},
diff --git a/web/pgadmin/static/js/sqleditor_utils.js b/web/pgadmin/static/js/sqleditor_utils.js
index e09dde16a..876aa5282 100644
--- a/web/pgadmin/static/js/sqleditor_utils.js
+++ b/web/pgadmin/static/js/sqleditor_utils.js
@@ -52,6 +52,9 @@ define(['jquery'],
$('#pg_text').remove(); // remove element
return width;
+ },
+ capitalizeFirstLetter: function (string) {
+ return string.charAt(0).toUpperCase() + string.slice(1);
}
};
return sqlEditorUtils;
diff --git a/web/pgadmin/tools/datagrid/templates/datagrid/js/datagrid.js b/web/pgadmin/tools/datagrid/templates/datagrid/js/datagrid.js
index ef580247a..7c48ea5b1 100644
--- a/web/pgadmin/tools/datagrid/templates/datagrid/js/datagrid.js
+++ b/web/pgadmin/tools/datagrid/templates/datagrid/js/datagrid.js
@@ -1,7 +1,8 @@
define([
'sources/gettext', 'jquery','alertify', 'pgadmin','codemirror',
+ 'sources/sqleditor_utils',
'codemirror/mode/sql/sql', 'pgadmin.browser', 'wcdocker'
-], function(gettext, $, alertify, pgAdmin, CodeMirror) {
+], function(gettext, $, alertify, pgAdmin, CodeMirror, sqlEditorUtils) {
// Some scripts do export their object in the window only.
// Generally the one, which do no have AMD support.
var wcDocker = window.wcDocker,
@@ -307,7 +308,7 @@ define([
get_panel_title: function() {
// Get the parent data from the tree node hierarchy.
- var tree = pgAdmin.Browser.tree,
+ var tree = pgAdmin.Browser.tree,
selected_item = tree.selected(),
item_data = tree.itemData(selected_item);
var self = this;
@@ -401,9 +402,10 @@ define([
},
// This is a callback function to show query tool when user click on menu item.
- show_query_tool: function(url, i) {
+ show_query_tool: function(url, i, panel_title) {
var self = this,
sURL = url || '',
+ panel_title = panel_title || '';
d = pgAdmin.Browser.tree.itemData(i);
if (d === undefined) {
alertify.alert(
@@ -436,19 +438,25 @@ define([
dataType: 'json',
contentType: "application/json",
success: function(res) {
-
var grid_title = self.get_panel_title();
// Open the panel if frame is initialized
baseUrl = "{{ url_for('datagrid.index') }}" + "panel/" + res.data.gridTransId + "/true/"
+ encodeURIComponent(grid_title) + '?' + "query_url=" + encodeURI(sURL);
+ // Create title for CREATE/DELETE scripts
+ if (panel_title) {
+ panel_title =
+ sqlEditorUtils.capitalizeFirstLetter(panel_title) + ' script';
+ }
+ else {
+ panel_title = gettext('Query - ') + grid_title;
+ }
- grid_title = gettext('Query - ') + grid_title;
if (res.data.newBrowserTab) {
var newWin = window.open(baseUrl, '_blank');
// add a load listener to the window so that the title gets changed on page load
newWin.addEventListener("load", function() {
- newWin.document.title = grid_title;
+ newWin.document.title = panel_title;
});
} else {
/* On successfully initialization find the dashboard panel,
@@ -456,7 +464,7 @@ define([
*/
var dashboardPanel = pgBrowser.docker.findPanels('dashboard');
queryToolPanel = pgBrowser.docker.addPanel('frm_datagrid', wcDocker.DOCK.STACKED, dashboardPanel[0]);
- queryToolPanel.title(''+grid_title+'');
+ queryToolPanel.title(''+panel_title+'');
queryToolPanel.icon('fa fa-bolt');
queryToolPanel.focus();
diff --git a/web/regression/javascript/sqleditor_utils_spec.js b/web/regression/javascript/sqleditor_utils_spec.js
index b1564b377..2d241c969 100644
--- a/web/regression/javascript/sqleditor_utils_spec.js
+++ b/web/regression/javascript/sqleditor_utils_spec.js
@@ -23,5 +23,10 @@ function (SqlEditorUtils) {
});
});
+ describe('Capitalize the first letter of given string', function () {
+ it('returns string with First letter Capital', function () {
+ expect(SqlEditorUtils.capitalizeFirstLetter('create script')).toEqual('Create script');
+ });
+ });
});
});