WIP patching in username/password for basic auth in reporting/additional fields

This commit is contained in:
John Woodlock
2012-05-18 14:32:55 +10:00
parent d6e76390ba
commit 9f686e7e80
4 changed files with 58 additions and 33 deletions
@@ -4,6 +4,8 @@
$.stretchyData.displayAllExtraData = function(params) { $.stretchyData.displayAllExtraData = function(params) {
username="mifos";
password="password";
if (!(params.url)) { if (!(params.url)) {
alert(doI18N("reportingInitError - url parameter")); alert(doI18N("reportingInitError - url parameter"));
return; return;
@@ -52,13 +54,16 @@
var extraDataNamesVar = ""; var extraDataNamesVar = "";
for ( var i in data.additionalFieldsSets) { for ( var i in data.additionalFieldsSets) {
var dsnDivName = generateDsnDivName(displayAllVars.datasetType, i, displayAllVars.datasetTypeDiv); var dsnDivName = generateDsnDivName(displayAllVars.datasetType, i,
displayAllVars.datasetTypeDiv);
extraDataNamesVar += '<br><span ' + headingClassStr + '><b>' extraDataNamesVar += '<br><span ' + headingClassStr + '><b>'
+ doI18N(displayAllVars.headingPrefix) + doI18N(displayAllVars.headingPrefix)
+ doI18N(data.additionalFieldsSets[i].name) + ' - </span></b> '; + doI18N(data.additionalFieldsSets[i].name)
+ ' - </span></b> ';
extraDataNamesVar += editExtraDataLink(displayAllVars.url, extraDataNamesVar += editExtraDataLink(displayAllVars.url,
displayAllVars.datasetType, data.additionalFieldsSets[i].name, displayAllVars.datasetType,
data.additionalFieldsSets[i].name,
displayAllVars.datasetPKValue, dsnDivName); displayAllVars.datasetPKValue, dsnDivName);
extraDataNamesVar += '<div id="' + dsnDivName + '">'; extraDataNamesVar += '<div id="' + dsnDivName + '">';
@@ -66,9 +71,11 @@
} }
$('#' + displayAllVars.datasetTypeDiv).html(extraDataNamesVar); $('#' + displayAllVars.datasetTypeDiv).html(extraDataNamesVar);
for ( var i in data.additionalFieldsSets) { for ( var i in data.additionalFieldsSets) {
var dsnDivName = generateDsnDivName(displayAllVars.datasetType, i, displayAllVars.datasetTypeDiv); var dsnDivName = generateDsnDivName(displayAllVars.datasetType, i,
displayAllVars.datasetTypeDiv);
viewExtraData(displayAllVars.url, displayAllVars.datasetType, viewExtraData(displayAllVars.url, displayAllVars.datasetType,
data.additionalFieldsSets[i].name, displayAllVars.datasetPKValue, dsnDivName); data.additionalFieldsSets[i].name,
displayAllVars.datasetPKValue, dsnDivName);
} }
}; };
@@ -157,8 +164,9 @@
function viewExtraData(url, datasetType, datasetName, datasetPKValue, function viewExtraData(url, datasetType, datasetName, datasetPKValue,
dsnDivName) { dsnDivName) {
var viewExtraDataUrl = url + "api/v1/additionalfields/" + encodeURIComponent(datasetType) var viewExtraDataUrl = url + "api/v1/additionalfields/"
+ "/" + encodeURIComponent(datasetName) + "/" + encodeURIComponent(datasetType) + "/"
+ encodeURIComponent(datasetName) + "/"
+ encodeURIComponent(datasetPKValue); + encodeURIComponent(datasetPKValue);
var evalViewExtraDataSuccessFunction = "var viewExtraDataSuccessFunction = function(data, textStatus, jqXHR){ viewExtraDataset(data, '" var evalViewExtraDataSuccessFunction = "var viewExtraDataSuccessFunction = function(data, textStatus, jqXHR){ viewExtraDataset(data, '"
@@ -191,7 +199,8 @@
datasetName : datasetName, datasetName : datasetName,
datasetPKValue : datasetPKValue, datasetPKValue : datasetPKValue,
baseUrl : url, baseUrl : url,
url : url + "api/v1/additionalfields/" + encodeURIComponent(datasetType) + "/" url : url + "api/v1/additionalfields/"
+ encodeURIComponent(datasetType) + "/"
+ encodeURIComponent(datasetName) + "/" + encodeURIComponent(datasetName) + "/"
+ encodeURIComponent(datasetPKValue) + encodeURIComponent(datasetPKValue)
}; };
@@ -200,7 +209,8 @@
} }
function generateDsnDivName(datasetType, i, uniqueDivid) { function generateDsnDivName(datasetType, i, uniqueDivid) {
return extraDataUnderscore(datasetType) + "_" + i + "_" + extraDataUnderscore(uniqueDivid); return extraDataUnderscore(datasetType) + "_" + i + "_"
+ extraDataUnderscore(uniqueDivid);
} }
/* start of code to fill data in edit form */ /* start of code to fill data in edit form */
@@ -342,21 +352,20 @@
} }
} }
$.fn.serializeObject = function() $.fn.serializeObject = function() {
{ var o = {};
var o = {}; var a = this.serializeArray();
var a = this.serializeArray(); $.each(a, function() {
$.each(a, function() { if (o[this.name] !== undefined) {
if (o[this.name] !== undefined) { if (!o[this.name].push) {
if (!o[this.name].push) { o[this.name] = [ o[this.name] ];
o[this.name] = [o[this.name]]; }
} o[this.name].push(this.value || '');
o[this.name].push(this.value || ''); } else {
} else { o[this.name] = this.value || '';
o[this.name] = this.value || ''; }
} });
}); return o;
return o;
}; };
function extraDataOpenDialog(url) { function extraDataOpenDialog(url) {
@@ -373,7 +382,7 @@
}); });
var form_data = JSON.stringify($('#entityform').serializeObject()); var form_data = JSON.stringify($('#entityform').serializeObject());
//console.log(form_data); // console.log(form_data);
var jqxhr = $.ajax({ var jqxhr = $.ajax({
url : url, url : url,
type : 'POST', type : 'POST',
@@ -382,7 +391,12 @@
// crossDomain : true, // crossDomain : true,
dataType : 'json', dataType : 'json',
data : form_data, data : form_data,
cache: false, cache : false,
beforeSend : function(xhr) {
var base64 = $.base64Encode(username + ":" + password);
console.log("base64: " + base64);
xhr.setRequestHeader("Authorization", "Basic " + base64);
},
success : function(data, textStatus, jqXHR) { success : function(data, textStatus, jqXHR) {
currentEditPopup.dialogDiv.dialog("close"); currentEditPopup.dialogDiv.dialog("close");
viewExtraData(currentEditPopup.baseUrl, viewExtraData(currentEditPopup.baseUrl,
@@ -450,11 +464,16 @@
cache : false, cache : false,
type : 'GET', type : 'GET',
contentType : "application/json; charset=utf-8", contentType : "application/json; charset=utf-8",
cache: false, cache : false,
beforeSend : function(xhr) {
var base64 = $.base64Encode(username + ":" + password);
console.log("base64: " + base64);
xhr.setRequestHeader("Authorization", "Basic " + base64);
},
// dataType : 'jsonp', // dataType : 'jsonp',
// crossDomain : true, // crossDomain : true,
dataType : 'json', dataType : 'json',
//crossDomain : false, // crossDomain : false,
success : successFunction, success : successFunction,
error : errorFunction error : errorFunction
}); });
@@ -3,6 +3,8 @@
$.stretchyReporting = {}; $.stretchyReporting = {};
$.stretchyReporting.initialise = function(params) { $.stretchyReporting.initialise = function(params) {
username="mifos";
password="password";
initialiseReporting(params) initialiseReporting(params)
}; };
@@ -977,6 +979,7 @@ function getReportData(rptName, inParams, successFunction, isParameterType) {
function getReportDataAuth(rptName, inParams, successFunction, isParameterType) { function getReportDataAuth(rptName, inParams, successFunction, isParameterType) {
alert("needs fixing up, dont rely on data") alert("needs fixing up, dont rely on data")
return
var inQueryParameters = {}; var inQueryParameters = {};
for (var i in inParams ) inQueryParameters["R_" + i] = inParams[i]; for (var i in inParams ) inQueryParameters["R_" + i] = inParams[i];
if (rptDB > "") inQueryParameters["R_rptDB"] = rptDB; if (rptDB > "") inQueryParameters["R_rptDB"] = rptDB;
@@ -1053,8 +1056,11 @@ function getReportDataNoAuth(rptName, inParams, successFunction, isParameterType
contentType: "application/json; charset=utf-8", contentType: "application/json; charset=utf-8",
crossDomain: false, crossDomain: false,
cache: false, cache: false,
beforeSend: function( xhr ) { beforeSend : function(xhr) {
xhr.setRequestHeader("Accept", "application/json"); xhr.setRequestHeader("Accept", "application/json");
var base64 = $.base64Encode(username + ":" + password);
console.log("base64: " + base64);
xhr.setRequestHeader("Authorization", "Basic " + base64);
}, },
success: successFunction, success: successFunction,
error:function(jqXHR, textStatus, errorThrown){ error:function(jqXHR, textStatus, errorThrown){
@@ -15,7 +15,7 @@
<script type="text/javascript" src="${resValue}/libs/DataTables-1.8.2/extras/TableTools/media/js/ZeroClipboard.js"></script> <script type="text/javascript" src="${resValue}/libs/DataTables-1.8.2/extras/TableTools/media/js/ZeroClipboard.js"></script>
<script type="text/javascript" src="${resValue}/libs/DataTables-1.8.2/extras/TableTools/media/js/TableTools.min.js"></script> <script type="text/javascript" src="${resValue}/libs/DataTables-1.8.2/extras/TableTools/media/js/TableTools.min.js"></script>
<script type="text/javascript" src="${resValue}/libs/jquery.i18n.properties-min-1.0.9.js"></script> <script type="text/javascript" src="${resValue}/libs/jquery.i18n.properties-min-1.0.9.js"></script>
<script type="text/javascript" src="${resValue}/stretchyreporting/stretchyreporting-0.98.js"></script> <script type="text/javascript" src="${resValue}/stretchyreporting/stretchyreporting-0.985.js"></script>
<script type="text/javascript" src="${resValue}/libs/jquery.base64.js"></script> <script type="text/javascript" src="${resValue}/libs/jquery.base64.js"></script>
<script type="text/javascript" src="https://www.google.com/jsapi"></script> <script type="text/javascript" src="https://www.google.com/jsapi"></script>
@@ -34,7 +34,7 @@
<script type="text/javascript" src="${resValue}/libs/jquery.views.js"></script> <script type="text/javascript" src="${resValue}/libs/jquery.views.js"></script>
<script type="text/javascript" src="${resValue}/libs/jquery.observable.min.js"></script> <script type="text/javascript" src="${resValue}/libs/jquery.observable.min.js"></script>
<script type="text/javascript" src="${resValue}/libs/globalize/globalize.js"></script> <script type="text/javascript" src="${resValue}/libs/globalize/globalize.js"></script>
<script type="text/javascript" src="${resValue}/stretchydata-0.94.js"></script> <script type="text/javascript" src="${resValue}/stretchydata-0.945.js"></script>
<script type="text/javascript" src="${resValue}/libs/jquery.base64.js"></script> <script type="text/javascript" src="${resValue}/libs/jquery.base64.js"></script>
<c:choose> <c:choose>