mirror of
https://github.com/flarum/framework.git
synced 2025-05-28 19:06:35 +08:00

- Extract shared Ember components into a “flarum-common” ember-cli addon. This can be used by both the forum + admin Ember apps, keeping things DRY - Move LESS styles into their own top-level directory and do a similar thing (extract common styles) - Add LESS/JS compilation and versioning to PHP (AssetManager) - Set up admin entry point (Theoretical) upgrade instructions: - Delete everything in [app_root]/public - Set up tooling in forum/admin Ember apps (npm install/update, bower install/update) and then build them (ember build) - php artisan vendor:publish - Upgrade flarum/flarum repo (slight change in a config file) - If you need to trigger a LESS/JS recompile, delete the .css/.js files in [app_root]/public/flarum. I set up LiveReload to do this for me when I change files in less/ or ember/ Todo: - Start writing admin app! - Remove bootstrap/font-awesome from repo and instead depend on their composer packages? Maybe? (Bower is not an option here)
27 lines
846 B
JavaScript
27 lines
846 B
JavaScript
import Ember from 'ember';
|
|
|
|
export default Ember.Handlebars.makeBoundHelper(function(user, options) {
|
|
var attributes = 'class="avatar '+(options.hash.class || '')+'"';
|
|
var content = '';
|
|
|
|
if (user) {
|
|
var username = user.get('username') || '?';
|
|
|
|
if (typeof options.hash.title === 'undefined') {
|
|
options.hash.title = Ember.Handlebars.Utils.escapeExpression(username);
|
|
}
|
|
attributes += ' title="'+options.hash.title+'"';
|
|
|
|
var avatarUrl = user.get('avatarUrl');
|
|
if (avatarUrl) {
|
|
return new Ember.Handlebars.SafeString('<img src="'+avatarUrl+'" '+attributes+'>');
|
|
}
|
|
|
|
content = username.charAt(0).toUpperCase();
|
|
attributes += ' style="background:'+user.get('color')+'"';
|
|
}
|
|
|
|
return new Ember.Handlebars.SafeString('<span '+attributes+'>'+content+'</span>');
|
|
}, 'avatarUrl', 'username', 'color');
|
|
|