This new class replaces all existing server side message
rendering helpers and is the new global entry point for such
needs. All models with relevant fields now expose an instance
of MessageRenderer for those. MessageRenderer acts as
gateway between the existing processing solutions for markdown,
mentions and tags and provides a very flexible interface for
all output needs. This makes the API to obtain a message
in a certain format clear. As a result of centralizing the
processing a lot of duplication is eliminated. Centralizing
the message processing also makes it clear where to change
its behaviour, add new representations and what options
are already available.
* Fix the javascript_include_tag in the status_messages/new view
* Precompile pubhlsiher.js and jquery.textchange.min.js
This fixes a 500 error that was being thrown when the Mention button
was clicked, due to the above two javascripts not being precompiled
and a javascript include that needed to be updated to load
jquery.textchange.js from the correct path.
* 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