app/assets/javascripts/ember-auth/ember-auth.js in ember-auth-rails-3.0.0 vs app/assets/javascripts/ember-auth/ember-auth.js in ember-auth-rails-3.1.0
- old
+ new
@@ -9,11 +9,11 @@
signIn: function(data) {
var _this = this;
if (data == null) {
data = {};
}
- return this.ajax(Auth.Config.get('tokenCreateUrl'), 'POST', {
+ return this.ajax(this.resolveUrl(Auth.Config.get('tokenCreateUrl')), 'POST', {
data: data,
success: function(json) {
_this.set('authToken', json[Auth.Config.get('tokenKey')]);
return _this.set('currentUserId', json[Auth.Config.get('idKey')]);
},
@@ -29,11 +29,11 @@
var _this = this;
if (data == null) {
data = {};
}
data[Auth.Config.get('tokenKey')] = this.get('authToken');
- return this.ajax(Auth.Config.get('tokenDestroyUrl'), 'DELETE', {
+ return this.ajax(this.resolveUrl(Auth.Config.get('tokenDestroyUrl')), 'DELETE', {
data: data,
success: function(json) {
_this.set('authToken', null);
return _this.set('currentUserId', null);
},
@@ -43,10 +43,21 @@
complete: function() {
return _this.set('prevRoute', null);
}
});
},
+ resolveUrl: function(path) {
+ var base;
+ base = Auth.Config.get('baseUrl');
+ if (base && base[base.length - 1] === '/') {
+ base = base.substr(0, base.length - 1);
+ }
+ if (path[0] === '/') {
+ path = path.substr(1, path.length);
+ }
+ return [base, path].join('/');
+ },
resolveRedirectRoute: function(type) {
var fallback, isSmart, sameRoute, typeClassCase;
if (type !== 'signIn' && type !== 'signOut') {
return null;
}
@@ -78,9 +89,10 @@
Auth.Config = Em.Object.create({
tokenCreateUrl: null,
tokenDestroyUrl: null,
tokenKey: null,
idKey: null,
+ baseUrl: null,
signInRoute: null,
signOutRoute: null,
authRedirect: false,
smartSignInRedirect: false,
smartSignOutRedirect: false,