-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathprorogation_and_dissolution.html.erb
81 lines (67 loc) · 6.95 KB
/
prorogation_and_dissolution.html.erb
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
<%= content_tag( 'p', 'At the end of a session, Parliament prorogues. Prorogation is the formal end to the parliamentary year. At the end of a parliament period, Parliament dissolves. Dissolution is the official term for the end of a Parliament before a general election. Dissolution may be immediately preceded by a short period of prorogation.' ) %>
<%= content_tag( 'p', "Our Google calendars are designed to cope with periods when Parliament is in session. They allow us to state when a House is sitting, sitting virtually or adjourned. Adjournment includes non-sitting Fridays, weekends, bank holidays and recess." ) %>
<%= content_tag( 'p', 'The calendars are not designed to cope with periods when Parliament is either prorogued or dissolved. Upon announcement of these periods certain actions should be taken.' ) %>
<%= content_tag( 'h2', 'What to do upon the announcement of prorogation or dissolution' ) %>
<%= content_tag( 'p', "In both cases, action must be taken:" ) %>
<%= content_tag( 'h3', 'In the Google calendars' ) %>
<ol>
<%= content_tag( 'li', "Remove any previously created sitting or adjournment days set to take place during the prorogation or the dissolution period from the Google calendars." ) %>
<%= content_tag( 'li', "Check that these changes have propagated to the application. This should take no longer than 15 minutes. The #{link_to( 'calendar sync checker', meta_calendar_sync_checker_url )} records when the calendar last synced.".html_safe ) %>
</ol>
<%= content_tag( 'h3', 'In the Google spreadsheet' ) %>
<%= content_tag( 'p', "The #{link_to( 'Parliament periods', 'https://docs.google.com/spreadsheets/d/1e3AnQebAO5ug-Pc_0qDq9KkyZiy0dRhJMvm0lRRJOXk/edit?usp=sharing' )} spreadsheet has two sheets: one describing Parliament periods, one describing sessions.".html_safe ) %>
<%= content_tag( 'p', "At prorogation, you need to update the sessions sheet by applying the end date to the session being prorogued. You also need to add details for the new session, being:" ) %>
<ul>
<li>The Parliament number.</li>
<li>The number of the session in the Parliament.</li>
<li>The start date of the session.</li>
<li>The Journal Office style citation of the session, for example: 2024-25.</li>
<li>The regnal year citation of the session.</li>
<li>The Wikidata ID of the session, if that exists.</li>
</ul>
<p>The egg timer requires the Parliament number, session number and session start date. The Journal Office style citation, regnal year citation and Wikidata ID are optional.</p>
<%= content_tag( 'p', "Prorogation is announced in a proclamation which gives a start date for the prorogation period. For prorogations between sessions in a Parliament period, the proclamation also names the start date of the next session." ) %>
<%= content_tag( 'p', "At dissolution, you also need to update the Parliament periods sheet by applying an end date to the Parliament being dissolved. You also need to add details for the new Parliament, being:" ) %>
<ul>
<li>The Parliament number.</li>
<li>The polling day of the general election forming the new Parliament.</li>
<li>The Wikidata ID of the general election forming the new Parliament.</li>
<li>The opening date, being the date of assembly of the new Parliament.</li>
<li>The date of State Opening.</li>
<li>The Wikidata ID of the Parliament</li>
</ul>
<p>The egg timer requires the Parliament number and its start date. It will load the Wikidata ID of the Parliament, but this isn't necessary.</p>
<%= content_tag( 'h2', 'What to do upon the announcement of prorogation' ) %>
<%= content_tag( 'p', "In order for the application to continue to function, we need to upload a clean copy of the database with an end date for the current session and a start date for the subsequent session." ) %>
<%= content_tag( 'p', "The steps are:" ) %>
<ol>
<%= content_tag( 'li', "From the Google spreadsheet, download a copy of the sessions sheet as a CSV." ) %>
<%= content_tag( 'li', "Copy the CSV file to #{content_tag( 'code', 'db/data/sessions.csv' )}.".html_safe ) %>
<%= content_tag( 'li', "Remove the first - header - row of the sessions.csv." ) %>
<%= content_tag( 'li', "Continue by #{link_to( 'resetting the database', '#resetting-the-database')}.".html_safe ) %>
</ol>
<%= content_tag( 'h2', 'What to do upon the announcement of dissolution' ) %>
<%= content_tag( 'p', "In order for the application to continue to function, we need to upload a clean copy of the database with an end date for the current session, a start date for the subsequent session, an end date for the current Parliament and a start date for the subsequent Parliament." ) %>
<%= content_tag( 'p', "The steps are:" ) %>
<ol>
<%= content_tag( 'li', "From the Google spreadsheet, download a copy of the sessions sheet as a CSV." ) %>
<%= content_tag( 'li', "Copy the CSV file to #{content_tag( 'code', 'db/data/sessions.csv' )}.".html_safe ) %>
<%= content_tag( 'li', "From the Google spreadsheet, download a copy of the Parliament periods sheet as a CSV." ) %>
<%= content_tag( 'li', "Copy the CSV file to #{content_tag( 'code', 'db/data/parliaments.csv' )}.".html_safe ) %>
<%= content_tag( 'li', "Remove the first - header - row of the parliaments.csv." ) %>
<%= content_tag( 'li', "Continue by #{link_to( 'resetting the database', '#resetting-the-database')}.".html_safe ) %>
</ol>
<%= content_tag( 'h2', 'Resetting the database', :id => 'resetting-the-database' ) %>
<%= content_tag( 'p', "From the command line, at the root of the application:" ) %>
<ol>
<%= content_tag( 'li', "Run #{content_tag( 'code', 'psql parliament_calendar < db/schema/setup.sql' )}. This removes and recreates all tables in the local database.".html_safe ) %>
<%= content_tag( 'li', "Run #{content_tag( 'code', 'rake setup' )}. This imports Parliament and session data and infers dissolution and prorogation data.".html_safe ) %>
<%= content_tag( 'li', "Run #{content_tag( 'code', 'heroku maintenance:on' )} to switch the application to maintenance mode.".html_safe ) %>
<%= content_tag( 'li', "Run #{content_tag( 'code', 'heroku pg:reset --confirm parliament-egg-timer' )} to reset the database: this removes information from the Heroku database.".html_safe ) %>
<%= content_tag( 'li', "Run #{content_tag( 'code', 'heroku pg:push parliament_calendar DATABASE_URL' )} to push the new data to the database on Heroku.".html_safe ) %>
<%= content_tag( 'li', "Run #{content_tag( 'code', 'heroku run rake sync' )} to sync data from the Google calendars to the application.".html_safe ) %>
<%= content_tag( 'li', "Run #{content_tag( 'code', 'heroku maintenance:off' )} to switch the application out of maintenance mode.".html_safe ) %>
</ol>
<%= content_tag( 'h2', 'Having reset the database', :id => 'having-reset-the-database' ) %>
<%= content_tag( 'p', "You can create sitting and adjournment days in the subsequent Parliament and / or session." ) %>
<%= content_tag( 'p', "Use the #{link_to( 'calendar sync checker', meta_calendar_sync_checker_url )} to confirm whether the application is being updated from the Google calendars.".html_safe ) %>