6627: Add Chouette favicon
Created by: teddywing
Adds a favicon to the site to respond to these errors:
ActionController::RoutingError (No route matches [GET] "/favicon.ico"):
Using favicon_link_tag allows us to get the image from the asset
pipeline, which makes it easier to update if necessary, since browsers
tend to cache the default /favicon.ico indeterminably (source:
http://api.rubyonrails.org/classes/ActionView/Helpers/AssetTagHelper.html#method-i-favicon_link_tag).
According to some Stack Overflow posts I've been reading, it looks like
it's advisable to put the favicon.ico file in both /assets/images/
and /public/:
- https://stackoverflow.com/questions/15687506/actioncontrollerroutingerror-no-route-matches-get-favicon-ico-in-rails#15688041
- https://stackoverflow.com/questions/11071445/favicon-in-ruby-on-rails-application
This way, you can serve the favicon from the asset pipeline, but if any
requesters try to get /favicon.ico, the server will respond with the
image instead of an error.
To be honest, when I was testing locally, I couldn't get the icon in
/public to display, both without a link tag and with the following
link tag:
/ application.html.slim
/ ...
link href='/favicon.ico' rel='shortcut icon'
As a result, I'm adding the image to /public with fingers crossed that
it's going to work if requested.
I generated the favicon.ico file with a 256x256px PNG supplied by
Cyrielle in the Redmine ticket and the following ImageMagick command:
$ convert -resize x16 -gravity center -crop 16x16+0+0 \
Logo_Chouette-256x256.png -flatten -colors 256 favicon.ico
(Copied from: https://stackoverflow.com/questions/3185677/converting-gifs-pngs-and-jpgs-to-ico-files-using-imagemagick)
Refs #6627