Add row wrapping div to fix IE7 float bug

IE7 doesn't quite understand floating and clearing elements so doesn't
position the headers next to the list of links they are associated to.
Instead the headers float up to the list above the one it is intended
for.

This adds a wrapping div to each list of links which forces the heading
to clear the previous list and sit next to the list it is intended for.
Warn about identical slugs

www.agileplannerapp.com/boards/173808/cards/5403

As a department editor
When creating a document in Whitehall Publisher
I want be warned of possible title duplicates
So that I can create unique titles and avoid
ugly --2, --3 slugs
Tweaks for clarity
Rake task to requeue all scheduled publishing jobs.

At the moment, after a database restore, the list of scheduled editions
does not match the list of sidekiq jobs in redis.  There is an existing
task to add jobs for any editions that have mising jobs.  This works for
some cases, however it fails to account for editions that are no longer
scheduled (orphaned sidekiq jobs), or editions that have have their
scheduled time changed.

To address this, we therefore delete all sidekiq jobs for the
ScheduledPublishingWorker and then re-queue all editions that are
scheduled for publication.
Merge pull request #1747 from alphagov/requeue_all_scheduled_rake_task

Rake task to requeue all scheduled publishing jobs.
Merge pull request #1746 from alphagov/ie7-floats

Add row wrapping div to fix IE7 float bug
Correctly work out action triggering new state.

The existing latest_version_audit_entry_for method returns the *last* audit
entry for a particular state. But if we want (for example) to know who was the
submitter for an edition, we need the *first* entry for the submitted state.

This commit adds an audit_entry_for_state_change method which returns the audit
entry that represents the state change itself.

It also makes a change to the submitted_edition test factory to correctly set
up an audit history including creation and submit events.
Indicate whether the view displays footer metadata
Ensure scrolling navigation doesn't overlap footer meta
Use audit_entry_for_state_change in submitted_by.
Merge pull request #1749 from alphagov/fix_submitted_by

Fix wrong calculation of user who submitted an edition
Add new model for delegating govspeak content to

This is the first step towards storing pre-computed HTML from govspeak. For now,
we've just moved the body over to the delegated association. Validations are
skipped in the data migration to skip the govspeak safety checks, otherwise the
data migration takes an age.
Update attachment cloning to handle delegate body

This insures both the HtmlAttachment and it's GovspeakContent association are
correctly copied when editions are re-editioned.
Rename methods for clarify
Make tests less stubby
Prevent Sidekiq jobs from lingering between tests
Update govspeak to allow spans in safe HTML

govspeak has been updated to allow span elements to pass HTML safety validation.
This is required so that the computed HTML can be saved on GovspeakContent
without numbered headings (which use spans) causing it to fail.
Pre-compute govspeak HTML in background job.

Every time the body on a GovspeakContent instance changes, we want to re-compute
the computed_html. This relies on ActiveRecord dirty tracking to determine when
a job needs to be queued.
Tidy up temporary delegation of body attribute

We want to still fall back to the body attribute of the HtmlAttachment model
whilst the GovspeakContent instance is being created during the data migration.
This also renames the method by which precomputed HTML is accessed with.
Pre-compute govspeak headers

The govspeak headers take almost as long to generate as the body HTML itself as
the entire govspeak has to be parsed to generate them.