aboutsummaryrefslogtreecommitdiffstats
path: root/t/cobrand/zurich.t
Commit message (Collapse)AuthorAgeLines
* Update a number of packages.Matthew Somerville2019-05-13-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Update: * Catalyst * Specify Catalyst::DispatchType::Regex explicitly * Remove Catalyst::Plugin::Unicode::Encoding * Catalyst::Plugin::SmartURI * Specify URI::SmartURI explicitly * Catalyst::Plugin::Static::Simple * CGI * Class::Load * DateTime * DateTime::TimeZone * DBD::Pg * DBIx::Class * DBIx::Class::EncodedColumn. * Email::Address. * Email::MIME * ExtUtils::MakeMaker * ExtUtils::ParseXS (for Params::Classify upgrade) * File::ChangeNotify * Image::Size * IO::Socket::SSL * local::lib * Moo * Moose (and some related others due to deprecations) * namespace::autoclean * Net::Server * Net::SSLeay * Number::Phone * Plack * Starman * Template * Test::PostgreSQL * Test::WWW::Mechanize::Catalyst * Text::CSV * YAML carton install was run on a wheezy box, the oldest that is supported, to make sure the required minimal vesions of core modules weren't removed from the snapshot. Cpanel::JSON::XS, Devel::GlobalDestruction::XS, and MooseX::NonMoose were then put back in the snapshot, in case another system needs them (e.g. system Perl on Mac looks for MooseX::NonMoose).
* Refactor admin body/user functions to own files.Matthew Somerville2019-02-22-1/+1
|
* Modernise report "status" bannerZarino Zappia2018-12-13-1/+6
| | | | | | | | | | | | | * Simplify markup required for the status banner. * Simplify styles - the banner is now identical on all screen sizes. * Move the banner from `report/display.html` into `report/_main.html` so that it can appear after `.problem-back` in the source order. * Use real pin icon instead of `pin-flat-white-small.png`. * Set a default `$col_fixed_label` colour in `_base.scss`, so cobrands don’t have to define it themselves if they’re happy with green. * Introduce `$col_fixed_label_light`, with a sensible default for all cobrands, even ones that have a custom `$col_fixed_label`. * Remove `$col_fixed_label_dark` – no longer needed.
* [Zurich] Fix call to admin_fetch_all_bodies.Matthew Somerville2018-10-22-0/+1
|
* Deal with a variety of low-level test warnings.Matthew Somerville2018-10-04-1/+0
| | | | | | | | | | * Stop red warning being output by S3 bucket creation failure test * Make sure 'num_old_reports' is always a number on /around pages * Stop 'category_extra' being generated when unnecessary * Prevent warning printed in getservicerequestupdates.t * Prevent info lines from being output in develop.t * Remove line of #s in root.t * And an ID diag in zurich.t
* Factor out photo storage into PhotoStorage::FileSystem backendDave Arter2018-09-28-1/+4
|
* [Zurich] Fix typo causing crash on /report/ajaxDave Arter2018-03-15-0/+9
|
* [Zurich] Switch to more modern database states.Matthew Somerville2018-03-07-27/+102
| | | | | | | The Zurich code was written a long time ago, and used overriding so that e.g. the hard-coded 'investigating' state referred to Wunsch (wish). Now that states are stored in the database, we can create ones specially for Zurich and use them instead. Hooray!
* [Zurich] Let SDM view awaiting reports.Matthew Somerville2018-03-07-0/+6
|
* [Zurich] Make wish state publicly visible.Matthew Somerville2018-03-07-0/+3
|
* Merge branch 'issues/commercial/974-closed-report-incorrectly-reopened'Matthew Somerville2018-03-02-0/+5
|\
| * [Zurich] Do not reopen closed reports by mistake.Matthew Somerville2018-03-02-0/+3
| | | | | | | | | | The code for moving a report to the intermediary state was running even if the report was in a closed state and had not been changed.
* | [Zurich] Show to-be-hidden reports until confirmedMatthew Somerville2018-03-02-2/+4
|/
* Merge branch 'issues/commercial/988-c6-email-address-link'Matthew Somerville2018-01-18-9/+25
|\
| * [Zurich] Allow publishing of individual photos.Matthew Somerville2018-01-18-9/+25
| | | | | | | | | | When more than one photo has been uploaded, allow each one to be published/not independently.
* | Remove unused (except by tests) send_reports() fn.Matthew Somerville2018-01-15-1/+2
|/
* Add ability to confirm reports/updates via text.Matthew Somerville2017-09-30-1/+1
|
* Fix issue editing category with '/' in it.Matthew Somerville2017-09-11-0/+1
| | | | | | Simplify chaining of body/category admin URLs so that all categories are treated the same, with `/` or without, and the template will then always have its CSRF token.
* [Zurich] Bring all reports in line with upstream.Matthew Somerville2017-08-18-6/+8
| | | | | Update the map/list if the map is zoomed/panned, and make sure the updated HTML list is returned.
* Add inactive state to categories.Matthew Somerville2017-07-14-2/+1
| | | | | A new 'state' column replaces confirmed and deleted, allowing categories to be unconfirmed, confirmed, deleted or inactive.
* Run each test file in a transaction.Matthew Somerville2017-06-20-6/+0
| | | | This means that the tests can be run in parallel.
* Auto-add strict/warnings/Test::More with TestMech.Matthew Somerville2017-05-31-6/+2
|
* Use sender in From if From and To domains match.Matthew Somerville2017-03-14-4/+4
| | | | | | To deal with a recipient mail server not allowing inbound email using the same domain as an internal domain, e.g. https://community.mimecast.com/docs/DOC-1419
* Move staging flags to their own config variable.Matthew Somerville2017-01-10-2/+2
|
* [Zurich] Fix 500 error when editing superusersDave Arter2016-12-06-1/+14
| | | | | | | | | | | | The Zurich::admin_type function was setting $c->stash->{body}, meaning that when trying to edit a superuser the 'fetch_contacts' function wasn't being called, causing an "Can't call method "all" on an undefined value" error as $c->stash->{live_contacts} wasn't ever being set. Fixed by changing the conditional to simply determine whether fetch_contacts needs to be called. Included a regression test that meant a small addition to the MapItZurich mock.
* Error if logged-in user visits admin without permission.Matthew Somerville2016-10-26-4/+4
| | | | | This is less confusing than redirecting to /auth and then to /my (as they're logged in). Fixes #1566.
* Add .btn and .form-control classes to inputsZarino Zappia2016-10-04-1/+1
|
* Factor out contains_or_lacks test function.Matthew Somerville2016-09-29-13/+2
|
* [Zurich] Add areas in test reports to fix warning.Matthew Somerville2016-08-09-0/+3
|
* [Zurich] Send admin emails from the do-not-reply addressDave Arter2016-07-28-1/+1
| | | | | Also takes the opportunity to fix the incorrectly-encoded sender name which was appearing to some clients as "Züri Wie Neu".
* Restrict add/editing of bodies in admin to superusersDave Arter2016-07-19-1/+1
|
* Improve CSRF tokens and add to more forms.Matthew Somerville2016-06-20-8/+3
|
* Refactor email handling to use Email::MIME alone.Matthew Somerville2016-03-30-1/+6
|
* Allow zurich tests to run without network.Matthew Somerville2016-03-23-11/+15
|
* Updates to cpanfile and code for perl 5.20/5.22.Matthew Somerville2016-03-23-3/+15
| | | | | | | | | | | | | | | | | | | | The following modules had bugs that have been fixed for working in recent perls: * List::MoreUtils * Guard * PadWalker * aliased * URI * Convert::NLS_DATE_FORMAT The CGI module was removed from core in 5.20, so include it in the snapshot (I don't think it's actually used, but is a dependency). "{" needs to be escaped in regular expressions, and ~~ should not be used. Fix some tests that expect e.g. a certain hash ordering, to use sorted output or better comparisons.
* Switch final few JSON uses to JSON::MaybeXS.Matthew Somerville2016-02-09-1/+0
|
* Reduce use of FixMyStreet::App.Matthew Somerville2015-12-02-7/+4
| | | | Command line scripts don't need a full blown app, just database.
* [Zurich] Set report's public response before sending email to userDave Arter2015-10-06-2/+36
| | | | | | | | The 'public response' to a problem was being omitted from the email sent to the user when the problem is closed, because the email was sent before the report's 'extra' field was updated with the response body text. This commit sets the public response on the problem before sending the email.
* [Zurich] Test that external message is visible for certain statesDave Arter2015-10-06-6/+6
|
* [Zurich] Override MAP_TYPE in tests where appropriateDave Arter2015-10-06-0/+20
|
* [Zurich] Tweaks to redirectHakim Cassimally2015-10-06-1/+37
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | See mysociety/FixMyStreet-Commercial#690 I understand redirection to summary page was introduced at ZWN's request, to make it easy to process reports and then quickly move onto the next one. However, during testing now, Tobias has mentioned this is a) slowing things down and b) confusing because it's not obvious that the report has been saved. I've tried to address (b) by adding the "Aktualisiert!" message when you are redirected. Also, for (a) I've removed the redirection from a few cases, and disabled it for superuser. If need be, I can remove redirection from more (or all) cases. Fix Official answer/Reply to user - hide label for status update on state change - correct wording on button for closure (single wording) - correct wording on label for user reply (either "Official answer" or "Reply to user" as appropriate) - Make sure the official response texts are shown for edit/static as appropriate, and test. - javascript improvements - honour public status update for Extern/Wunsch too - don't show public message for Wunsch - Ignore all other fields when rotating photos. (See mysociety/FixMyStreet-Commercial#718)
* [Zurich] additional closure statuses workHakim Cassimally2015-10-06-96/+112
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Requirements: ============= 1: DM to be able to mark a problem as Wish, Extern, Not contactable, Hidden, Jurisdiction unknown 2: SDM to be able to mark a problem as Not contactable. 3: DM to be able to add information to such a problem, and trigger emails to external agencies, and to user, closing the problem at the same time. 4: Closed reports must be categorized as Wish/Extern/NC/Hidden/JU for statistical reporting 5: Non-closed reports must appear as open, to allow DM to see them in the list, similar to what is currently done for Ruckmeldung Ausstehend (Feedback outstanding). 5b: however "Hidden" problems must be immediately hidden from public view. Proposal: ========= a) Requirement 1 will be carried out in exactly the same way by DM. e.g. Category dropdown select b) Requirement 2 will be carried out in exactly the same way by SDM. e.g. "Not contactable" button c) BUT, for a), c), the category will be diverted to "Ruckmeldung Ausstehend" (Feedback outstanding), and metadata will be saved with the appropriate closure type. d) NOTE: this means the report will still be visible to public as "In bearbeitung" (Except for Hidden reports, as per 5b) e) The extra fields will be presented on the "Ruckmeldung Ausstehend" page, just as defined in the PDF, depending on the metadata. e.g. - Wish: Zustaendige Stelle + Message - Extern: External body + Message2 - Not contactable: (no extra info) - Hidden: (no extra info) - Jurisdiction unknown: (no extra info) f) When the DM publishes the answer (e.g. "Antwort Veroeffentlichen" button), the state will normally change to Fixed. BUT in the new cases, the metadata saved in step c) will be checked, and the report will change state to Wish/Extern/Not contactable/Hidden/Jurisdiction unknown, as appropriate. The report will now be visible/hidden as previously discussed depending on the new state. g) If the report is edited again (in /admin/report_edit) it will be in the relevant state, and any extra fields will be visible as per e). Those fields may be updated. Alternatively, the state may be changed, possibly triggering a) again, and clearing any metadata. - Fix javascript interactions 690 - show new statuses in summary - fix photos on SDM page - fix Planned => Planned+metadata transition - stop "assignation .select" js affecting templates - fix redirection for Extern and generally See mysociety/FixMyStreet-Commercial#672, mysociety/FixMyStreet-Commercial#690
* [Zurich] Updated email templatesMatthew Somerville2015-10-06-0/+2
| | | | | | | - submit-external-wish.txt includes a link with report's coordinates, template values are interpolated Conflicts: perllib/FixMyStreet/SendReport/Zurich.pm
* [Zurich] admin workflow changes available statesHakim Cassimally2015-10-06-110/+184
| | | | | | | | | | | | | | | | | | | | | | | | | | See mysociety/FixMyStreet-Commercial#690 - external_message for Extern/Wunsch states - as per PDF mockups, the "public response" field is now editable from more states, namely: - Ruckmeldung ausstehend - Extern - Zustandigkeit unbekannt - Wunsch - Nicht kontaktierbar - Unsichtbar - test fixes NB: slight hack to reorder Zurich report_display tests As these remove 'investigating' from hidden_states, these break tests for default cobrand (the FMS::App code expects to be called once on request start, not multiple times within one test) - Not contactable button and tests for this and the similar `send_back` functionality (previously untested). NB: Unsure why we need to specify form_number=2 just for these submits, but test won't find the buttons otherwise. - Make sure SDMs' "time_spent" figure is recorded. (See mysociety/FixMyStreet-Commercial#718)
* Add "time spent" admin logging.Hakim Cassimally2015-10-06-2/+20
| | | | | | | | | | | | | | | | | | | | | Mechanism is general, but current implementation only used for Zurich. - Zurich: Record time_spent field mysociety/FixMyStreet-Commercial#676 - template changes (including jQuery spinner) - backend changes to save data are made: - in log_edit, if supplied - and time on category change (and arbitrary actions) - Add update_admin_log to all paths for DM, ensuring that it gets called, while resetting the `time_spent` parameter, to make sure that there is never a duplicate record created. - Also quell warning about using DateTime values in query. - Also add (seemingly unrelated) parens to stop misparsing of OK line in questionnaire test now that DT::Format::Pg is used in Zurich cobrand See mysociety/FixMyStreet-Commercial#676
* [Zurich] Attach images to external bodyHakim Cassimally2015-10-06-1/+50
| | | | See mysociety/FixMyStreet-Commercial#675
* [Zurich] 'photo required' functionalityDave Arter2015-10-06-0/+36
| | | | | | | | | | | - Save 'photo_required' value in Contact->extra from admin edit form - Enforce per-category photo requirement on new reports A new step has been added to the photo upload process that ensures a photo is present if any of the categories chosen for the report require it. If the photo is missing an error is displayed to the user in the same manner as if the photo upload was invalid. - Add test of mandatory photo categories
* Add support for multiple photos per report.Hakim Cassimally2015-10-06-3/+15
| | | | | | | | For Zurich, see mysociety/FixMyStreet-Commercial#664. This commit includes a new PhotoSet class (NB: called Model:: though not really a model), should handle binary data (e.g. old style photos in database), fileids (40-char hash), and Catalyst::Upload objects.
* [Zurich] all admin users can see statsHakim Cassimally2015-10-06-2/+2
| | | | | | | Admin CR4 https://github.com/mysociety/FixMyStreet-Commercial/issues/673 seems like admin_pages should be able to generate the menu, but this change also needs template change.
* [Zurich] add columns to stats exportHakim Cassimally2015-03-31-1/+1
| | | | | | | | | | | | | | | - Original Report description - Amended Report description (unsure what this is) - Media URL (currently one picture, in the future 1-3 pictures) - Interface used (see open311) - Requested datetime (see open311) (seems to be same as created) - Agency sent datetime (see open311) - Updated datetime (see open311) - Council-Response - title as per https://github.com/mysociety/FixMyStreet-Commercial/issues/678