Render browser settings into the template rather than using synchronous AJAX calls to get them.
parent
bb6a3f9b5b
commit
4c29f4385f
|
|
@ -50,12 +50,6 @@ function storeLayout(pane, $pane, paneState, paneOptions) {
|
||||||
return true
|
return true
|
||||||
}
|
}
|
||||||
|
|
||||||
// Get the previous settings
|
|
||||||
var sqlPaneSize = getIntegerSetting("Browser/SQLPane/Size", 250)
|
|
||||||
var sqlPaneClosed = getBooleanSetting("Browser/SQLPane/Closed", false)
|
|
||||||
var browserPaneSize = getIntegerSetting("Browser/BrowserPane/Size", 250)
|
|
||||||
var browserPaneClosed = getBooleanSetting("Browser/BrowserPane/Closed", false)
|
|
||||||
|
|
||||||
var layout
|
var layout
|
||||||
var layoutDefault = {
|
var layoutDefault = {
|
||||||
center__maskContents: true,
|
center__maskContents: true,
|
||||||
|
|
@ -66,8 +60,8 @@ var layoutDefault = {
|
||||||
center__maskContents: true,
|
center__maskContents: true,
|
||||||
center__onresize: "storeLayout",
|
center__onresize: "storeLayout",
|
||||||
south__maskContents: true,
|
south__maskContents: true,
|
||||||
south__size: sqlPaneSize,
|
south__size: {{ layout_settings.sql_size }},
|
||||||
south__initClosed: sqlPaneClosed,
|
south__initClosed: {{ layout_settings.sql_closed }},
|
||||||
south__spacing_closed: 22,
|
south__spacing_closed: 22,
|
||||||
south__togglerLength_closed: 140,
|
south__togglerLength_closed: 140,
|
||||||
south__togglerAlign_closed: "right",
|
south__togglerAlign_closed: "right",
|
||||||
|
|
@ -77,8 +71,8 @@ var layoutDefault = {
|
||||||
south__slideTrigger_open: "mouseover",
|
south__slideTrigger_open: "mouseover",
|
||||||
}],
|
}],
|
||||||
west__maskContents: true,
|
west__maskContents: true,
|
||||||
west__size: browserPaneSize,
|
west__size: {{ layout_settings.browser_size }},
|
||||||
west__initClosed: browserPaneClosed,
|
west__initClosed: {{ layout_settings.browser_closed }},
|
||||||
west__spacing_closed: 22,
|
west__spacing_closed: 22,
|
||||||
west__togglerLength_closed: 140,
|
west__togglerLength_closed: 140,
|
||||||
west__togglerAlign_closed: "top",
|
west__togglerAlign_closed: "top",
|
||||||
|
|
|
||||||
|
|
@ -17,6 +17,7 @@ from flask.ext.login import current_user
|
||||||
from inspect import getmoduleinfo, getmembers
|
from inspect import getmoduleinfo, getmembers
|
||||||
|
|
||||||
from pgadmin import modules
|
from pgadmin import modules
|
||||||
|
from pgadmin.settings import get_setting
|
||||||
|
|
||||||
import config
|
import config
|
||||||
|
|
||||||
|
|
@ -72,11 +73,18 @@ def index():
|
||||||
tools_items = sorted(tools_items, key=lambda k: k['priority'])
|
tools_items = sorted(tools_items, key=lambda k: k['priority'])
|
||||||
help_items = sorted(help_items, key=lambda k: k['priority'])
|
help_items = sorted(help_items, key=lambda k: k['priority'])
|
||||||
|
|
||||||
# Get any Javascript snippets
|
# Get the layout settings
|
||||||
|
layout_settings = {}
|
||||||
|
layout_settings['sql_size'] = get_setting('Browser/SQLPane/Size', default=250)
|
||||||
|
layout_settings['sql_closed'] = get_setting('Browser/SQLPane/Closed', default=False)
|
||||||
|
layout_settings['browser_size'] = get_setting('Browser/BrowserPane/Size', default=250)
|
||||||
|
layout_settings['browser_closed'] = get_setting('Browser/BrowserPane/Closed', default=False)
|
||||||
|
|
||||||
return render_template(MODULE_NAME + '/index.html',
|
return render_template(MODULE_NAME + '/index.html',
|
||||||
username=current_user.email,
|
username=current_user.email,
|
||||||
file_items=file_items,
|
file_items=file_items,
|
||||||
edit_items=edit_items,
|
edit_items=edit_items,
|
||||||
tools_items=tools_items,
|
tools_items=tools_items,
|
||||||
help_items=help_items,
|
help_items=help_items,
|
||||||
js_code = js_code)
|
js_code = js_code,
|
||||||
|
layout_settings = layout_settings)
|
||||||
|
|
|
||||||
|
|
@ -1,37 +1,3 @@
|
||||||
// Get a setting from the server. Returns a string value
|
|
||||||
function getSetting(setting, defval) {
|
|
||||||
var value
|
|
||||||
$.ajaxSetup({
|
|
||||||
async: false
|
|
||||||
});
|
|
||||||
|
|
||||||
$.post("{{ url_for('settings.get') }}", { setting: setting, default: defval })
|
|
||||||
.done(function(data) {
|
|
||||||
value = data
|
|
||||||
});
|
|
||||||
|
|
||||||
$.ajaxSetup({
|
|
||||||
async: true
|
|
||||||
});
|
|
||||||
|
|
||||||
return value
|
|
||||||
}
|
|
||||||
|
|
||||||
// Get a setting from the server. Returns a boolean value
|
|
||||||
function getBooleanSetting(setting, defval) {
|
|
||||||
return (getSetting(setting, defval) == "true" ? true : false)
|
|
||||||
}
|
|
||||||
|
|
||||||
// Get a setting from the server. Returns an integer value
|
|
||||||
function getIntegerSetting(setting, defval) {
|
|
||||||
return parseInt(getSetting(setting, defval))
|
|
||||||
}
|
|
||||||
|
|
||||||
// Get a setting from the server. Returns an float value
|
|
||||||
function getFloatSetting(setting, defval) {
|
|
||||||
return parseFloat(getSetting(setting, defval))
|
|
||||||
}
|
|
||||||
|
|
||||||
// Store a single setting
|
// Store a single setting
|
||||||
function storeSetting(setting, value) {
|
function storeSetting(setting, value) {
|
||||||
$.post("{{ url_for('settings.store') }}", { setting: setting, value: value });
|
$.post("{{ url_for('settings.store') }}", { setting: setting, value: value });
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue