Commit Graph

14648 Commits

Author SHA1 Message Date
Javier Martín
ed2d4dcf7f Merge pull request #3827 from consul/remove_obsolete_report_columns
Remove obsolete report columns from polls
2019-11-07 22:01:26 +01:00
Javi Martín
5ed308c6f7 Remove obsolete report columns from polls
These columns are obsolete since commit 354b183e, and its content was
migrated in version 1.0 with the task defined in commit 9ae0cbb2.
2019-11-07 20:36:43 +01:00
Javier Martín
f399802b30 Merge pull request #3826 from consul/jquery3_compatibility
Update deprecated jQuery syntax
2019-11-07 19:00:14 +01:00
Javi Martín
849c081a1b Simplify the way we attach documents in tests
Now we do it the same way we attach images in `nested_imageable`.

Now we don't need to execute some JavaScript in the test, which by the
way was causing an error when upgrading to jQuery 3.
2019-11-07 15:58:49 +01:00
Javi Martín
d015362299 Remove obsolete poltergeist code
We moved to chromedriver a long time ago.
2019-11-07 15:58:49 +01:00
Javi Martín
953fc7ddb0 Update deprecated jQuery syntax
These methods had already been superseeded by other methods since jQuery
1.7 or 1.8, and jQuery 3.0 will deprecate them.
2019-11-07 15:58:49 +01:00
Javier Martín
52d165b419 Merge pull request #3804 from consul/bump_ckeditor
Bump ckeditor from 4.2.4 to 4.3.0
2019-11-07 14:54:19 +01:00
Javier Martín
a5cf7c6377 Merge pull request #3825 from consul/safe_navigation
Enable Lint/SafeNavigationChain rubocop rule
2019-11-07 13:52:01 +01:00
Javi Martín
45fedfe410 Enable Lint/SafeNavigationChain rubocop rule
We didn't add it before because we weren't following it in the code
related to votation types, but we've removed that code.
2019-11-07 13:17:26 +01:00
Javi Martín
ec1502ee00 Update CKEditor plugins to be precompiled
The new version of CKEditor loads the balloonpanel and balloontoolbar
plugins. Even if we don't need them, I haven't found a way to prevent
them from loading, meaning we have to precompile them.
2019-11-07 01:24:49 +01:00
Javi Martín
f240e0073f Bump ckeditor from 4.2.4 to 4.3.0
This version solves a security issue:

https://ckeditor.com/cke4/release/CKEditor-4.11.0

Note this version adds a `ckeditor/samples` folder, which is
automatically added to the application's assets manifest even if we
remove all CKEditor references in our application. One of the files in
that folder makes ExecJS raise a syntax error, causing every page to
raise a 500 error.
2019-11-06 22:05:44 +01:00
Javier Martín
a2f5317ae1 Merge pull request #3824 from consul/jumping_ckeditor
Avoid jumping CKEditor
2019-11-06 20:59:43 +01:00
Javi Martín
4ab3498892 Avoid jumping CKEditor
This is a hack: we're making the textarea have the same size as CKEditor
so when it's replaced the page won't jump.

A very similar hack was removed in commit e844b0b2. Back then I thought
this was a small issue we could live with, but the user experience turns
out to be a bit annoying, and it makes tests fail sometimes because
Capybara is trying to click something when the page jumps, and so it
misses the click.
2019-11-06 20:26:26 +01:00
Javier Martín
0d2ca78f46 Merge pull request #3820 from consul/remove_summary
Remove collaborative legislation summary
2019-11-06 17:55:11 +01:00
Javi Martín
128a816464 Remove collaborative legislation summary
This feature wasn't properly tested nor reviewed, and after reviewing
several pull requests with a similar status and considering this pull
request is related to the public area of the web, we've decided to
remove it before releasing version 1.1.

This commit reverts commit 4f50e67a.
2019-11-06 17:21:03 +01:00
Javier Martín
405ceee8f9 Merge pull request #3821 from consul/revert-3812-knapsack
Revert "Stop using Knapsack Pro"
2019-11-06 17:20:47 +01:00
Javier Martín
b86e0abc31 Merge pull request #3822 from consul/finished_budgets
Fix admin permissions for finished budgets
2019-11-06 16:12:59 +01:00
Javi Martín
0383ed96f5 Fix typo related to investment previews 2019-11-06 15:35:13 +01:00
Javi Martín
33c2b28063 Remove duplicate test
This test is exactly the same as the "visible for admins" scenario.
2019-11-06 15:35:13 +01:00
Javi Martín
6bbfb55586 Fix admin permissions for finished budgets
Although we weren't showing links in the views to execute certain
actions, forms could be still sent using a PUT/PATCH pull request to the
controller actions.
2019-11-06 15:35:12 +01:00
Julian Herrero
69838c78b9 Revert "Stop using Knapsack Pro"
This reverts PR https://github.com/consul/consul/pull/3812
2019-11-06 18:58:05 +07:00
Javier Martín
450c5feb5e Merge pull request #3819 from consul/remove_csv
Remove new CSV report generation
2019-11-06 00:33:26 +01:00
Javi Martín
82b0a6a92d Remove new CSV report generation
The new CSV report was more configurable and could work on proposals,
processes and comments. However, it had several issues.

In the public area, by default it generated a blank file.

In the admin section, the report was hard to configure and it generated
a file with less quality than the old system.

So until we improve this system, we're bringing back the old investment
CSV exporter.

This commit reverts most of commit 9d1ca3bf.
2019-11-06 00:04:02 +01:00
Javi Martín
ea8efa36f5 Fix pluralization typos 2019-11-06 00:04:02 +01:00
Javier Martín
440696683a Merge pull request #3817 from consul/valuators
Fix valuation permissions for finished budgets
2019-11-06 00:03:36 +01:00
Javi Martín
a3534e1f93 Use presence to simplify code 2019-11-05 23:15:17 +01:00
Javi Martín
d1d71f0044 Don't allow valuation if cannot edit dossier
We were adding the condition to show the form in the view. However, that
doesn't prevent users from sending a POST/PUT request to the controller
action.

We could add the condition to the controller as well, but since the
`valuate` permission is only used in one place, it's easier to restrict
that permission to valuators who can edit the dossier.
2019-11-05 23:15:16 +01:00
Javi Martín
6db0272575 Fix valuation permissions for finished budgets 2019-11-05 23:13:04 +01:00
Javi Martín
8f87753306 Simplify test for valuator abilities 2019-11-05 23:12:10 +01:00
Javi Martín
d077f7c14b Refactor method to display valuator abilities
Using `select` is easier to follow than adding `nil` to an array and
then using `compact`.
2019-11-05 22:59:19 +01:00
Javier Martín
4722e74e72 Merge pull request #3816 from consul/columns_selector
Fix typos in columns selector
2019-11-05 17:47:27 +01:00
Javi Martín
edf3ec8c2e Fix typo in selectable columns 2019-11-05 16:23:08 +01:00
Javi Martín
ed88105598 Remove unneeded variable declaration
It was generated by CoffeeScript, but in JavaScript we use `var` to
declare it.
2019-11-05 15:43:27 +01:00
Javier Martín
cbe6af3eb7 Merge pull request #3811 from consul/investment_changelog
Use audited to track changes in investments
2019-11-05 14:46:04 +01:00
Javi Martín
9565d6ac56 Simplify tests for audits 2019-11-05 14:17:04 +01:00
Javi Martín
5192ac052f Improve user interface showing a change log entry
Don't use <label> tags for things that are not labels, add a proper
<title> for the page, add a back link, remove an unnecessary
`inline-block` style for a header, localize dates and field names, ...

The interface could be further improve: proper diffs for long texts,
better separation between fields, ...
2019-11-05 13:23:11 +01:00
Javi Martín
98e836ea83 Improve interface of change log table
The name of the changed field is translated, values are truncated so
descriptions with thousands of character would make this table huge and
impossible to read, dates are localized, and values like arrays and
booleans are displayed properly.
2019-11-05 13:23:11 +01:00
Javi Martín
04cd3b460e Audit changes in investment translations
Note the user interface could certainly be improved, as it doesn't show
which languages have changed.
2019-11-05 13:09:38 +01:00
Javi Martín
e0c2468bd2 Use a different controller for investment audits
The same way we do for milestones. We also make the code more consistent
since the view was already in a separate folder.
2019-11-05 13:03:45 +01:00
Javi Martín
ed223e0bd1 Use audited to track investment changes
Our manual implementation had a few issues. In particular, it didn't
track changes related to associations, which became more of an issue
when we made investments translatable.

Using audited gives us more functionality while at the same time
simplifies our code. However, it adds one more external dependency to
our project.

The reason for choosing audited over paper trail is audited seems to
make it easier to handle associations.
2019-11-05 13:02:37 +01:00
Javi Martín
3f3fe9a3d3 Don't define controller actions in helpers 2019-11-05 12:54:32 +01:00
Javi Martín
6f4dc11dc4 Remove validations in investment changelog entries
If we validate the presence of the old value and the new value, changes
in optional fields will not be stored if either the old value or the new
value are blank.
2019-11-05 12:54:32 +01:00
Javi Martín
e08b516284 Reduce changelog entries generated by dev seeds
Since we were saving the same budget investments several times, once for
every language, we were creating more than 1000 changelog entries.

Assigning the language attributes when creating the investments
generates less entries, making it easier to work with them.
2019-11-05 12:54:32 +01:00
Julian Nicolas Herrero
768f85afcb Merge pull request #3812 from consul/knapsack
Stop using Knapsack Pro
2019-11-04 19:59:27 +07:00
Julian Herrero
5b3d40ce8e Stop using Knapsack Pro 2019-11-04 16:58:06 +07:00
Javier Martín
9ebea50f3f Merge pull request #3810 from consul/remove_tracker_role
Remove tracker role
2019-11-01 21:28:37 +01:00
Javi Martín
ac6d50e06b Remove tracker role
The current tracking section had a few issues:

* When browsing as an admin, this section becomes useless since no
investments are shown
* Browsing investments in the admin section, you're suddenly redirected
to the tracking section, making navigation confusing
* One test related to the officing dashboard failed due to these changes
and had been commented
* Several views and controller methods were copied from other sections,
leading to duplication and making the code harder to maintain
* Tracking routes were defined for proposals and legislation processes,
but in the tracking section only investments were shown
* Probably many more things, since these issues were detected after only
an hour reviewing and testing the code

So we're removing this untested section before releasing version 1.1. We
might add it back afterwards.
2019-11-01 20:08:46 +01:00
Javi Martín
71d9ac20e3 Remove duplicate translations
The first translation block was being overwritten by the second one.
2019-11-01 19:42:32 +01:00
Javier Martín
affb41cb70 Merge pull request #3807 from consul/fix_budget_staff
Fix assigning staff members to budgets
2019-11-01 17:21:33 +01:00
Javi Martín
9b511edd5b Write task to migrate budget admins and valuators
If we didn't run this task, investments for existing budgets wouldn't
show their administrator/valuators as an option when we're editing them,
leading to data loss.
2019-11-01 17:12:42 +01:00