mirror of
https://github.com/flarum/core.git
synced 2025-07-23 17:51:24 +02:00
New stuff: - Signup + email confirmation. - Updated authentication strategy with remember cookies. closes #5 - New search system with some example gambits! This is cool - check out the source. Fulltext drivers will be implemented as decorators overriding the EloquentPostRepository’s findByContent method. - Lay down the foundation for bootstrapping the Ember app. - Update Web layer’s asset manager to properly publish CSS/JS files. - Console commands to run installation migrations and seeds. Refactoring: - New structure: move models, repositories, commands, and events into their own namespaces, rather than grouping by entity. - All events are classes. - Use L5 middleware and command bus implementations. - Clearer use of repositories and the Active Record pattern. Repositories are used only for retrieval of ActiveRecord objects, and then save/delete operations are called directly on those ActiveRecords. This way, we don’t over-abstract at the cost of Eloquent magic, but testing is still easy. - Refactor of Web layer so that it uses the Actions routing architecture. - “Actor” concept instead of depending on Laravel’s Auth. - General cleanup!
29 lines
908 B
JavaScript
29 lines
908 B
JavaScript
import Base from 'simple-auth/authenticators/base';
|
|
import config from '../config/environment';
|
|
|
|
export default Base.extend({
|
|
|
|
authenticate: function(credentials) {
|
|
var container = this.container;
|
|
return new Ember.RSVP.Promise(function(resolve, reject) {
|
|
Ember.$.ajax({
|
|
url: config.baseURL+'login',
|
|
type: 'POST',
|
|
data: { identification: credentials.identification, password: credentials.password }
|
|
}).then(function(response) {
|
|
container.lookup('store:main').find('user', response.userId).then(function(user) {
|
|
resolve({ token: response.token, userId: response.userId, user: user });
|
|
});
|
|
}, function(xhr, status, error) {
|
|
reject(xhr.responseJSON.errors);
|
|
});
|
|
});
|
|
},
|
|
|
|
invalidate: function(data) {
|
|
return new Ember.RSVP.Promise(function() {
|
|
window.location = config.baseURL+'logout';
|
|
});
|
|
}
|
|
});
|