* Move all Diaspora-specific javascripts to app/assets/javascripts * Move all vendored javascripts to vendor/assets/javascripts * Add the appropriate Sprockets require directives to make sure everything gets included in the right order * Remove Jammit dependencies * Fix all templates that were using Jammit's include_javascripts helper * Add handlebars_assets gem for compiling Handlebars templates * Move all Handlebars templates to app/assets/templates and rename from .handlebars to .jst.hbs (this is to keep them in the same global JST namespace that they were in under Jammit) * Add public/assets to .gitignore since these files can and should be re-generated by Heroku or Capistrano during each deploy * Fix a few Handlebars templates that were looking for images in the wrong location (I'm sure there are others, but it's late) * Configure application.rb to precompile all javascript and css assets that were compiled by Jammit in the Rails 3.0 code
26 lines
944 B
JavaScript
26 lines
944 B
JavaScript
Handlebars.registerHelper('t', function(scope, values) {
|
|
return Diaspora.I18n.t(scope, values.hash)
|
|
})
|
|
|
|
Handlebars.registerHelper('imageUrl', function(path){
|
|
return app.baseImageUrl() + path;
|
|
})
|
|
|
|
Handlebars.registerHelper('linkToPerson', function(context, block) {
|
|
var html = "<a href=\"/people/" + context.guid + "\" class=\"author-name\">";
|
|
html+= block.fn(context);
|
|
html+= "</a>";
|
|
|
|
return html
|
|
})
|
|
|
|
Handlebars.registerHelper('personImage', function(person, size, imageClass) {
|
|
/* we return here if person.avatar is blank, because this happens when a
|
|
* user is unauthenticated. we don't know why this happens... */
|
|
if(typeof(person.avatar) == "undefined") { return }
|
|
|
|
size = (typeof(size) != "string" ? "small" : size);
|
|
imageClass = (typeof(imageClass) != "string" ? size : imageClass);
|
|
|
|
return "<img src=\"" + person.avatar[size] +"\" class=\"avatar " + imageClass + "\" title=\"" + person.name +"\" />";
|
|
})
|