Allow selection of SSL certificates and pgpass files in connection properties. Fixes #2649. Fixes #2650

This commit is contained in:
Murtuza Zabuawala
2017-09-28 10:02:33 +01:00
committed by Dave Page
parent 510bc6c974
commit f855ed88ce
14 changed files with 439 additions and 58 deletions
@@ -555,7 +555,6 @@ button.list span {
.allowed_file_types .change_file_types label {
float: right;
padding-top: 3px;
}
.upload_file .file_upload_main {
@@ -726,3 +725,7 @@ a.dz-remove {
height: 100%;
background: #ccc;
}
div.change_file_types span {
padding-left:10px;
}
@@ -43,6 +43,7 @@ var getFileName = function(name) {
var loadData = function(url) {
return $.ajax({
async: false,
cache: false,
url: url,
dataType: 'jsonp',
contentType: "application/json; charset=utf-8"
@@ -70,6 +71,16 @@ var save_file_dialog_view = function(view, trans_id) {
});
};
var save_show_hidden_file_option = function(option, trans_id) {
return $.ajax({
url: url_for('file_manager.save_show_hidden_file_option', {'trans_id': trans_id}),
type: 'PUT',
async: true,
data: JSON.stringify({'show_hidden': option}),
contentType: 'application/json'
});
};
/*
* preg_replace
@@ -523,7 +534,8 @@ var getFolderInfo = function(path, file_type) {
var post_data = {
'path': path,
'mode': 'getfolder',
'file_type': file_type || "*"
'file_type': file_type || "*",
'show_hidden': $('#show_hidden').prop('checked')
};
var lg = pgAdmin.FileUtils.lg;
@@ -1110,6 +1122,9 @@ pgAdmin.FileUtils = {
have_all_types = false;
var select_box = "<div class='change_file_types'>" +
gettext("Show hidden files and folders") +
"? <input type='checkbox' id='show_hidden' onclick='pgAdmin.FileUtils.handleClick(this)'>" +
"<span></span>" +
"<select name='type'>";
while(i < types_len) {
@@ -1139,6 +1154,31 @@ pgAdmin.FileUtils = {
curr_path = $('.currentpath').val();
getFolderInfo(curr_path, selected_val);
});
// If user have preference to show hidden files
if (config.options.show_hidden_files) {
setTimeout(function() {
$("#show_hidden").click();
}, 10);
}
// handle show hidden files functionality
this.handleClick = function(cb) {
var data = {
'is_checked': false
};
if(cb.checked) {
$("div.allowed_file_types select").val("*").trigger("change");
data['is_checked'] = true;
} else {
// User wants to hide it again
$("div.allowed_file_types select").prop('selectedIndex', 0).trigger("change");
data['is_checked'] = false;
}
// Save it in preference
save_show_hidden_file_option(data['is_checked'], pgAdmin.FileUtils.transId);
return;
}
}
/*---------------------------------------------------------