* translate moderation view, controller and model
* support for i18n in the moderation controller
* support for i18n in the moderation model - use interpolation for variables inside strings
* support for i18n in controller model - localize time and date string format for printing time and date of the moderation action
Rather than keep "poorly titled" and "poorly tagged" as reasons for
flagging, make the user do the work of suggesting new ones.
At some point, suggested taggings will flip to real taggings once
they reach a certain count (to be determined later). This also has
to take into account tagging sets that don't contain current tags,
for when they need to be removed.
For titles, I'm not yet sure how to handle this in an automated
fashion except for the (probably rare) case of multiple users
submitting the same exact thing, but at least collect them for now.
Issue #207
should remedy duplicate stories being submitted under all of their
stupid blogspot.* domains instead of the canonical url represented
in the <link> tag
Instead of hard-coding the scheme and host everywhere, use _path
methods to show relative URLs.
Except that our previous setting of
Rails.application.routes.default_url_options in
config.after_initialize made this moot because Rails inserts that
host into all _path helpers for some reason. So revert that
setting.
But then anything that wants an absolute URL doesn't know the
hostname and the root_url helper throws an exception. So make a
Rails.application.root_url shortcut to pass the per-app settings in
Rails.application to root_url.
Now we can just use _path helpers most places but still use _url
ones where we need them, such as in RSS views and e-mail templates.
Upvoted route shows all stories a logged in user have upvoted
in reverse chronological order, latest upvote first.
It is not shown in the gui, but reachable at /upvoted.
stories should either be reported for spam (coming later), upvoted,
or left alone rather than being downvoted for being uninteresting.
since users don't like leaving uninteresting things alone, they can
now hide stories from their view without affecting the story's
score.
hiding is implemented as a Vote with its vote set to 0 and the
reason set to "H"
add a /hidden url which shows all of a user's hidden stories
while i'm here, simplify Vote guts and add some tests to make sure
all the flip-flopping stuff works right