Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions app/admin_components/adf-admins/dreamfactory-admins.js
Original file line number Diff line number Diff line change
Expand Up @@ -1174,7 +1174,7 @@ angular.module('dfAdmins', ['ngRoute', 'dfUtility', 'dfApplication', 'dfHelp'])
};
}])

.directive('dfExportAdmins', ['MOD_ADMIN_ASSET_PATH', 'INSTANCE_URL', 'UserDataService', '$http', '$window', 'APP_API_KEY', function (MOD_ADMIN_ASSET_PATH, INSTANCE_URL, UserDataService, $http, $window, APP_API_KEY) {
.directive('dfExportAdmins', ['MOD_ADMIN_ASSET_PATH', 'INSTANCE_URL', 'UserDataService', '$http', '$window', 'SystemConfigDataService', function (MOD_ADMIN_ASSET_PATH, INSTANCE_URL, UserDataService, $http, $window, SystemConfigDataService) {

return {

Expand Down Expand Up @@ -1203,7 +1203,7 @@ angular.module('dfAdmins', ['ngRoute', 'dfUtility', 'dfApplication', 'dfHelp'])

scope.fileFormatStr = fileFormatStr;

var params = 'file=admin.' + scope.fileFormatStr + '&api_key=' + APP_API_KEY;
var params = 'file=admin.' + scope.fileFormatStr + '&api_key=' + SystemConfigDataService.getApiKey();
var currentUser = UserDataService.getCurrentUser();
if (currentUser && currentUser.session_token) {
params += '&session_token=' + currentUser.session_token;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -749,7 +749,7 @@ angular.module('dfPackageManager', ['ngRoute', 'dfUtility', 'ngclipboard'])
}
};
}])
.directive('dfExportPackage', ['INSTANCE_URL', 'INSTANCE_API_PREFIX', 'APP_API_KEY', 'dfNotify', '$http', '$window', '$timeout', 'UserDataService', function (INSTANCE_URL, INSTANCE_API_PREFIX, APP_API_KEY, dfNotify, $http, $window, $timeout, UserDataService) {
.directive('dfExportPackage', ['INSTANCE_URL', 'INSTANCE_API_PREFIX', 'SystemConfigDataService', 'dfNotify', '$http', '$window', '$timeout', 'UserDataService', function (INSTANCE_URL, INSTANCE_API_PREFIX, SystemConfigDataService, dfNotify, $http, $window, $timeout, UserDataService) {

return {

Expand Down Expand Up @@ -912,7 +912,7 @@ angular.module('dfPackageManager', ['ngRoute', 'dfUtility', 'ngclipboard'])
scope.exportDownload = function()
{
if (exportPath !== '') {
var params = "?api_key=" + APP_API_KEY;
var params = "?api_key=" + SystemConfigDataService.getApiKey();
var currentUser = UserDataService.getCurrentUser();
if (currentUser && currentUser.session_token) {
params += "&session_token=" + currentUser.session_token;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -1329,6 +1329,10 @@ angular.module('dfSystemConfig', ['ngRoute', 'dfUtility', 'dfApplication'])
getSystemConfig: function () {

return dfApplicationData.getApiDataSync('environment');
},
getApiKey: function () {

return this.getSystemConfig().platform.api_key
}
};
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -1766,7 +1766,7 @@ angular.module('dfUserManagement', ['ngRoute', 'ngCookies', 'dfUtility'])
}
};
}])
.service('dfXHRHelper', ['INSTANCE_URL', 'APP_API_KEY', 'UserDataService', function (INSTANCE_URL, APP_API_KEY, UserDataService) {
.service('dfXHRHelper', ['INSTANCE_URL', 'SystemConfigDataService', 'UserDataService', function (INSTANCE_URL, SystemConfigDataService, UserDataService) {

function _isEmpty(obj) {

Expand All @@ -1792,7 +1792,7 @@ angular.module('dfUserManagement', ['ngRoute', 'ngCookies', 'dfUtility'])
function _setHeaders(_xhrObj, _headersDataObj) {

// Setting Dreamfactory Headers
_xhrObj.setRequestHeader("X-DreamFactory-API-Key", APP_API_KEY);
_xhrObj.setRequestHeader("X-DreamFactory-API-Key", SystemConfigDataService.getApiKey());
var currentUser = UserDataService.getCurrentUser();
if (currentUser && currentUser.session_tpken) {
xhrObj.setRequestHeader("X-DreamFactory-Session-Token", currentUser.session_token);
Expand Down
4 changes: 2 additions & 2 deletions app/admin_components/adf-users/dreamfactory-users.js
Original file line number Diff line number Diff line change
Expand Up @@ -1124,7 +1124,7 @@ angular.module('dfUsers', ['ngRoute', 'dfUtility', 'dfApplication', 'dfHelp'])
};
}])

.directive('dfExportUsers', ['MOD_USER_ASSET_PATH', 'INSTANCE_URL', 'UserDataService', '$http', '$window', 'APP_API_KEY', function (MOD_USER_ASSET_PATH, INSTANCE_URL, UserDataService, $http, $window, APP_API_KEY) {
.directive('dfExportUsers', ['MOD_USER_ASSET_PATH', 'INSTANCE_URL', 'UserDataService', '$http', '$window', 'SystemConfigDataService', function (MOD_USER_ASSET_PATH, INSTANCE_URL, UserDataService, $http, $window, SystemConfigDataService) {

return {

Expand Down Expand Up @@ -1153,7 +1153,7 @@ angular.module('dfUsers', ['ngRoute', 'dfUtility', 'dfApplication', 'dfHelp'])

scope.fileFormatStr = fileFormatStr;

var params = 'file=user.' + scope.fileFormatStr + '&api_key=' + APP_API_KEY;
var params = 'file=user.' + scope.fileFormatStr + '&api_key=' + SystemConfigDataService.getApiKey() ;
var currentUser = UserDataService.getCurrentUser();
if (currentUser && currentUser.session_token) {
params += '&session_token=' + currentUser.session_token;
Expand Down
164 changes: 0 additions & 164 deletions app/admin_components/adf-utility/dreamfactory-utility.js
Original file line number Diff line number Diff line change
Expand Up @@ -2827,170 +2827,6 @@ angular.module('dfUtility', ['dfApplication'])
}
])

// allows us to make synchronous ajax calls. Not extensive enough in its
// functionality to replace $http but helps with loading/bootstrapping data
.service('XHRHelper', ['INSTANCE_URL', 'APP_API_KEY', '$cookies', function (INSTANCE_URL, APP_API_KEY, $cookies) {

function _isEmpty(obj) {

// null and undefined are "empty"
if (obj == null) return true;

// Assume if it has a length property with a non-zero value
// that that property is correct.
if (obj.length > 0) return false;
if (obj.length === 0) return true;

// Otherwise, does it have any properties of its own?
// Note that this doesn't handle
// toString and valueOf enumeration bugs in IE < 9
for (var key in obj) {
if (hasOwnProperty.call(obj, key)) return false;
}

return true;
}

// Set DreamFactory Headers as well as additional passed in headers
function _setHeaders(_xhrObj, _headersDataObj) {

// Setting Dreamfactory Headers
_xhrObj.setRequestHeader("X-DreamFactory-API-Key", APP_API_KEY);
var currentUser = UserDataService.getCurrentUser();
if (currentUser && currentUser.session_tpken) {
xhrObj.setRequestHeader("X-DreamFactory-Session-Token", currentUser.session_token);
}

// Set additional headers
for (var _key in _headersDataObj) {

_xhrObj.setRequestHeader(_key, _headersDataObj[_key]);
}
}

// Create url params
function _setParams(_paramsDataObj) {

// Set a return var
var params = '';

// Check if we have any params
if (!_isEmpty(_paramsDataObj)) {

// We do.
// begin query string
params = '?';

// Loop through object
for (var _key in _paramsDataObj) {

// Create URL params out of object properties/values
params += _key + '=' + _paramsDataObj[_key] + '&';
}
}

// Check if params is empty string
// Did we have any params
if (params !== '') {

// We did so trim of the trailing '&' from building the string
params = params.substring(0, params.length -1);

// Encode the params
encodeURI(params);
}

// Return our final params value
return params;
}


function _makeRequest(_method, _url, _async, _params, _headers, _mimeType) {


var xhr;

// Create XHR object
if (window.XMLHttpRequest) {// code for IE7+, Firefox, Chrome, Opera, Safari
xhr = new XMLHttpRequest();
}
else {// code for IE6, IE5
xhr = new ActiveXObject("Microsoft.XMLHTTP");
}

// set and encode params
var params = _setParams(_params);


// Do XHR
xhr.open(_method, INSTANCE_URL.url + '/' + _url + params, _async);

// Set headers
_setHeaders(xhr, _headers);

// Set mime type override
xhr.overrideMimeType(_mimeType);

// Send our request
xhr.send();


if (xhr.readyState === 4) {
return xhr;
}
}


function _ajax(optionsDataObj) {

// We need a valid URL
// Do we have one?
if (!optionsDataObj.url || optionsDataObj.url === '') {

// No. Throw an error
throw {
module: 'DreamFactory Utility Module',
type: 'error',
provider: 'dreamfactory',
exception: 'XHRHelper Request Failure: No URL provided'
}
}

// Default xhr options
var defaults = {
method: "GET",
url: '',
async: false,
params: {},
headers:{},
mimeType: "application/json"
};


// Merge user xhr options object with default xhr options object
for (var _key in defaults) {

if (optionsDataObj.hasOwnProperty(_key)) {
defaults[_key] = optionsDataObj[_key];
}
}

// Make the request with the merged object
return _makeRequest(defaults.method, defaults.url, defaults.async, defaults.params, defaults.headers, defaults.mimeType);

}


return {

ajax: function(requestOptions) {

return _ajax(requestOptions);
}
}

}])

// Notification service
.service('dfNotify', ['dfApplicationData', function(dfApplicationData) {

Expand Down
4 changes: 4 additions & 0 deletions app/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -127,6 +127,10 @@
<script src="scripts/app.js"></script>
<script src="scripts/controllers/main.js"></script>
<script src="scripts/polyfill.js"></script>

<script src="interceptors/interceptor.config.js"></script>
<script src="interceptors/httpValidSession.interceptor.js"></script>
<script src="interceptors/globalHeaders.interceptor.js"></script>
<script src="services/license-data.service.js"></script>
<!-- endbuild -->

Expand Down
21 changes: 21 additions & 0 deletions app/interceptors/globalHeaders.interceptor.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
'use strict';
angular.module('dfApplication')
.factory('globalHeaders', ['$injector', function ($injector) {

var isHTMLRequested = function (url) {
return url.indexOf('.html') > -1;
};
return {
request: function (config) {

if (!isHTMLRequested(config.url)) {
var SystemConfigDataService = $injector.get('SystemConfigDataService');
var systemConfig = SystemConfigDataService.getSystemConfig();
if (systemConfig && systemConfig.platform) {
config.headers['X-Dreamfactory-API-Key'] = systemConfig.platform.api_key
}
}
return config;
}
};
}]);
Loading