Commit graph

5639 commits

Author SHA1 Message Date
Mouse Reeve 1ba69acc49 Adds unit tests that checks if rel field is set on links 2022-08-05 11:01:02 -07:00
Mouse Reeve 4dd7f88e0a Updates all links that open in new tabs 2022-08-05 10:20:43 -07:00
Mouse Reeve 9407695328 Updates footer links
Adds a missing rel="nofollow noopener noreferrer" attribute for the
Patreon link, and makes the github link open in a new tab (and updates
the url, which was out of date)
2022-08-05 10:06:12 -07:00
Mouse Reeve 8f79b362f8 Check permissions automatically on form save 2022-08-05 09:56:32 -07:00
Mouse Reeve 2894aa37a2 Fixes perms checks for groups 2022-08-05 09:12:48 -07:00
Mouse Reeve b4cfda0587 Updates tests 2022-08-05 08:56:24 -07:00
Joachim 610d8fdf5b Add notifications count on mobile header 2022-08-05 11:15:11 +02:00
Mouse Reeve ed71b791c9 Python formatting 2022-08-04 12:19:26 -07:00
Mouse Reeve 48df5076e7 Use elided page range and paginate user and list results 2022-08-04 12:11:39 -07:00
Mouse Reeve 06d1936ac9 Fixes pagination of local search results 2022-08-04 12:04:13 -07:00
Mouse Reeve 3270d0a7d4
Merge pull request #2247 from bookwyrm-social/followers-following-views
Merges follower/following views
2022-08-02 11:59:06 -07:00
Mouse Reeve 0bc3c3b5f6 Adds locale migration 2022-08-02 11:09:58 -07:00
Mouse Reeve f9b772e234 Adds polish locale 2022-08-02 10:59:40 -07:00
Mouse Reeve 6d258d5445 Fixes test mocks 2022-07-30 10:07:13 -07:00
Mouse Reeve d7bf348c77
Merge pull request #2249 from bookwyrm-social/crsf-exempt
Removes improperly placed csrf_exempt decorator
2022-07-29 13:49:29 -07:00
Mouse Reeve 8e2a8ec6e0 Removes improperly places csrf_exempt decorator 2022-07-29 13:40:40 -07:00
Mouse Reeve 96f1521239
Merge pull request #2248 from bookwyrm-social/list-suggestions
Move list suggestions into helper function
2022-07-29 13:27:04 -07:00
Mouse Reeve 844023f104
Merge pull request #2246 from bookwyrm-social/goal-model
Moves annual goal to its own file
2022-07-29 13:22:12 -07:00
Mouse Reeve d301cecc9f Move list suggestions into helper function
The view was complicated, this makes it a little easier to read and
test.
2022-07-29 13:15:24 -07:00
Mouse Reeve 23188dfc5f
Merge branch 'main' into followers-following-views 2022-07-29 13:09:30 -07:00
Mouse Reeve d458001491 Merges follower/following views
They were almost identical!
2022-07-29 13:07:15 -07:00
Mouse Reeve 2298a478cf Moves annual goal to its own file
The user model file is just,, very long
2022-07-29 13:00:59 -07:00
Mouse Reeve f52965b8f4 Fixes a couple typos 2022-07-29 12:08:36 -07:00
Mouse Reeve 29db9c68a1 Fixes typo and spacing 2022-07-29 11:31:35 -07:00
Mouse Reeve 868ab62863 Fixes template string quote escapes
It seems totally reasonable that using an escape slash would make
apostrophes in words work, but the translation system works in
mysterious ways that do not include supporting that. I've used backticks
as a third quote type to escape everything in a way that both
javascript and gettext understand.

While I was there I split up some strings that have more complicated
html in them, since that can be fragile when passed through translation,
and confusing for translators.
2022-07-29 11:22:31 -07:00
Mouse Reeve 2837d0148f Checks permissions when saving a list 2022-07-28 11:44:04 -07:00
Mouse Reeve 85dce81b6a Adds unit test or list create perms 2022-07-28 11:42:27 -07:00
Mouse Reeve ed20587695
Merge pull request #2168 from hughrun/tour
Add guided tour / walkthrough
2022-07-28 11:08:49 -07:00
Hugh Rundle 2455aadbfd add scrollTo where needed
A couple of tour steps could benefit from a scrollTo for users on smallers screens.
2022-07-27 15:53:54 +10:00
Hugh Rundle a4714f097f fix anchors not working on homepage tour
Fixes bug on larger screens.

We need to use a function to set the anchor for tour steps when using menus and other elements that become visible or hidden responsively. Because the element is still in the DOM, we can't just rely on it disappearing completely, we have to assign a different (visible) element otherwise the step will simply disappear and the user cannot continue the tour. Previously this used a simple selector which didn't work due to the above.
2022-07-27 15:14:28 +10:00
Mouse Reeve f3bc7d759f Only show pending follow requests from active users 2022-07-24 12:26:58 -07:00
Mouse Reeve 0217d36f7b Show lists to logged out viewers
The activitystreams for lists require a logged in user, so this just
uses a simple database query of all public lists when there is no logged
in user.
2022-07-23 20:42:40 -07:00
Mouse Reeve 639b727c92 Fixes perms check for ratings 2022-07-17 16:21:43 -07:00
Mouse Reeve 3f5bb41380 Unit test for creating rating status 2022-07-17 16:18:59 -07:00
Hugh Rundle 356c1c0b62 fix migration dependency order
Show_guided_tour needs to come after alter_user_preferred_language due to conficts. I think.
2022-07-17 16:34:42 +10:00
Hugh Rundle 17dc5e7eb1 Merge branch 'main' into tour
- we need to do this because of conflicting migrations
2022-07-17 16:30:45 +10:00
Hugh Rundle c48ddf419d cleanup 2022-07-17 16:19:55 +10:00
Hugh Rundle bec2943aad remove console logs 2022-07-17 16:17:08 +10:00
Hugh Rundle 387f2a70c9 update tour text
- new classname for posting guide
- various improvements to wording
- use function to find responsive menu elements
- add scrollTo transitions where needed
2022-07-17 16:13:12 +10:00
Hugh Rundle 43c598d92c remove DMs from guided tour 2022-07-17 11:11:34 +10:00
Mouse Reeve d3f35fb691 Adds Catalan 2022-07-15 12:28:31 -07:00
Mouse Reeve 4a82bef9a6 Ticks version number 2022-07-15 12:21:25 -07:00
Mouse Reeve 086ec10849
Merge pull request #2229 from bookwyrm-social/password-validation
Password validation
2022-07-15 11:53:27 -07:00
Mouse Reeve 65117fe3c6 Use manual password field to customize id 2022-07-15 11:41:39 -07:00
Mouse Reeve b1f5171502 Updates reset password tests 2022-07-15 11:39:29 -07:00
Mouse Reeve 3846b201bd Updates reset password flow to use validators 2022-07-15 11:39:18 -07:00
Mouse Reeve 1bb0a9d998 Updates tests 2022-07-15 11:18:47 -07:00
Mouse Reeve b62f8eff42 Updates method decorators 2022-07-15 10:59:35 -07:00
Mouse Reeve 659ee96002 Use password validation in change password flow
This also moves the form validation into a form instead of doing it in
the view.
2022-07-15 10:51:58 -07:00
Mouse Reeve 4a65ee326a Use password validation in register view 2022-07-15 09:59:57 -07:00
Mouse Reeve d74d59a57b Disable pylint complaint 2022-07-15 09:33:13 -07:00
Mouse Reeve 7fdfd0c9c7 Check permissions when creating a status 2022-07-15 09:26:52 -07:00
Mouse Reeve 5ecd75ee24 Remove redirecting to "next"
This wasn't even particularly working
2022-07-14 12:54:02 -07:00
Mouse Reeve aa579605e0
Merge pull request #2224 from bookwyrm-social/email-not-found-text
Remove error reporting on resend to invalid email address
2022-07-14 12:34:14 -07:00
Mouse Reeve 69728439c8 Remove error reporting on resend to invalid email address 2022-07-14 12:23:43 -07:00
Mouse Reeve 317a239d40 Update shelf test now that it has multiple users 2022-07-14 12:10:29 -07:00
Mouse Reeve 3f47cca5e6 Python formatting 2022-07-14 11:56:18 -07:00
Mouse Reeve c21864a1ac Merge branch 'main' into shelf-edit-perms 2022-07-14 11:50:27 -07:00
Mouse Reeve 95a72ae902
Merge pull request #2222 from bookwyrm-social/redirects
Removes insecure redirects
2022-07-14 11:46:47 -07:00
Mouse Reeve 73c4a01a6e Test for PermissionDenied error, not isNone 2022-07-14 11:45:59 -07:00
Mouse Reeve 4f1283ff52 Check editability before creating shelf 2022-07-14 11:42:59 -07:00
Mouse Reeve 05716c3578 Adds unit test for creating shelves for another user 2022-07-14 11:38:53 -07:00
Mouse Reeve 661865de87 Remmoves insecure redirects
This should really fundamentally work differently, but this is a quick
for for now to avoid an insecure redirect. There will be a negative
impact on user experience from this, and a followup change should look
into these views and improve their flow.
2022-07-14 11:22:17 -07:00
Mouse Reeve 235e877b3d Reverse order of notification users lists
Should show newest first
2022-07-14 11:00:05 -07:00
Mouse Reeve 3670ae46ec Reverse order of notification related users 2022-07-12 10:32:56 -07:00
Mouse Reeve 77bff3b263
Merge pull request #2217 from bookwyrm-social/connector-exceptions
Log failing to connect as info instead of exception
2022-07-11 09:04:01 -07:00
Mouse Reeve 5706028656 Log failing to connect as info instead of exception
These are normal, expected errors, and while we should probably
re-evaluate the connectors in some way, pending that, there's no need to
log these as unepected errors, which causes confusion and clutters my
error logging.
2022-07-11 08:47:18 -07:00
Mouse Reeve f1ae64543f
Merge pull request #2216 from bookwyrm-social/export-post
Use HTTP post for CSV export
2022-07-11 08:14:47 -07:00
Mouse Reeve 9104d1f8db Fixes reference to renamed view 2022-07-11 08:05:32 -07:00
Mouse Reeve 42e29e40b3 Use HTTP post for csv export
Also fixes a missing translation string
2022-07-11 07:51:51 -07:00
Mouse Reeve a0e01af2ca Updates tests 2022-07-10 20:22:54 -07:00
Mouse Reeve f44b3cc4b2 Improves change password flow
There are two changes: one is to require the current password to change
your password (which is a security improvement), and the other is error
reporting when you either get your current password wrong or your new
password doesn't match it's second entry.
2022-07-10 20:05:54 -07:00
Mouse Reeve 64bfe5934f Tick version number
This was reported as a security issue, so updating the version number
to indicate where the issue has been fixed.
2022-07-10 09:39:51 -07:00
Mouse Reeve 7a772c7d3e Use POST instead of GET for logout function 2022-07-10 09:30:39 -07:00
Hugh Rundle 6b1fcc3cbb use class instead of id for spoilers tour 2022-07-10 13:16:28 +10:00
Hugh Rundle 126fd4e634 various wording updates to guided tour 2022-07-10 11:27:01 +10:00
Hugh Rundle a84deff119 add scrollTo for link step on home tour 2022-07-10 11:26:14 +10:00
Hugh Rundle 142c0e1a59 fix template error in search tour 2022-07-10 10:58:48 +10:00
Hugh Rundle 37c2ad11b6 fix border radius on shepherd messages
remove bottom border radius from message text and top border radius from message footer on guided tour popovers.
2022-07-10 09:54:19 +10:00
Hugh Rundle e1acdd0062 fix migrations
There was a conflict due to the order of migrations. Hopefully this commit fixes it!
2022-07-10 09:53:43 +10:00
Mouse Reeve 591c4d9b75 Fixes numbering on book lists 2022-07-09 13:33:58 -07:00
Mouse Reeve 85f811022f
Merge pull request #2210 from bookwyrm-social/notification-cw
Show content warning in notification status previews
2022-07-09 13:29:22 -07:00
Mouse Reeve be5e1be5f6 Use content warnings in notifications 2022-07-09 13:12:46 -07:00
Mouse Reeve 11a0c1691b Move status_preview snippet to notifications directory
That's the only place it's used, always nice to de-clutter the snippets
directory
2022-07-09 12:40:21 -07:00
Mouse Reeve f92b4548b1 Fixes get_or_create error when multiple matching notifications exist 2022-07-09 12:30:05 -07:00
Mouse Reeve c092d952bd Adds test to catch notification error 2022-07-09 12:29:29 -07:00
Mouse Reeve a7553c0b8c Return HttpResponse instead of redirects for AJAX follows
This is more efficient, and most follow activities are ajax
2022-07-09 12:20:18 -07:00
Mouse Reeve 923495e454 More accurate button display
Now, a follow button will show as pending even if the user doesn't
manually approve followers, if that's the state the request is in.
2022-07-09 12:19:28 -07:00
Hugh Rundle ab5e4128e6 Merge branch 'main' into tour
Also fixes conflict
2022-07-09 20:54:48 +10:00
Hugh Rundle 8fbd634ee8 add id to dm box 2022-07-09 20:52:03 +10:00
Hugh Rundle 48bcb85e24 resolve conflict 2022-07-09 20:12:46 +10:00
Hugh Rundle 02c6932409 lint migration file 2022-07-09 20:10:28 +10:00
Hugh Rundle 245120e7ca resolve git conflict with main branch 2022-07-09 20:08:23 +10:00
Hugh Rundle baad1314d8 default existing users to no tour 2022-07-09 19:51:05 +10:00
Hugh Rundle 495bac2b50 transfer tour from group to DM 2022-07-09 19:38:44 +10:00
Hugh Rundle 2f2ab5c24a add DM tour
- rearrange script includes on feed pages
- add DM tour to close
2022-07-09 19:27:42 +10:00
Hugh Rundle 791847d75e add timeline info to home tour 2022-07-09 19:27:12 +10:00
Hugh Rundle c68c7216f3 minor wording updates for tour 2022-07-09 17:49:56 +10:00
Hugh Rundle 6df09eb5d7 update user groups tour
- use strong instead of code
- clean up templates
- use notification styling for actions
- update wording
2022-07-09 17:39:22 +10:00
Hugh Rundle 07a882692c update lists tour
- cleaner templates
- send user directly to their Groups page at end of section
2022-07-09 17:31:04 +10:00
Hugh Rundle d67c6dc92b user books tour update
- add element highlights
- fix template text
- replace code with strong
2022-07-09 16:56:07 +10:00
Hugh Rundle e85e4a5467 update book page tour
- styling for next action
- replace code with strong
- clean up wording
- make translation templates cleaner
2022-07-09 15:30:45 +10:00
Hugh Rundle bb85d3cdb2 update search tour
- action styling
- code to strong
2022-07-09 15:16:27 +10:00
Hugh Rundle bb4b1a14fd update user profile tour styles 2022-07-09 15:10:52 +10:00
Hugh Rundle 5472cdcad7 update homepage tour
- add highlights to some elements
- consolidate message text for easier translation
- emphasise action with notification style
2022-07-09 15:00:30 +10:00
Hugh Rundle b36968166e fix import message
import files don't import shelves, only books.
2022-07-09 14:47:31 +10:00
Hugh Rundle 3c317d509d fix sass styles import bug
Using @import caused styles to double up on elements, in some cases preventing the correct override behaviour.
Usint @use instead fixes this, and is recommended by Sass for exactly this reason.
2022-07-09 14:42:42 +10:00
Hugh Rundle b41c826a0d custom style for highlighting tour anchorpoints 2022-07-09 14:29:04 +10:00
Hugh Rundle 68308aaa79 update tour colour scheme
- use info instead of default
- increase box shadow
- arrows at top should match header colour
2022-07-09 12:35:06 +10:00
Hugh Rundle 56b91f4c6d fix incorrect tour step header 2022-07-09 10:37:08 +10:00
Hugh Rundle 4d843b583d move shelve button tour id to prevent duplicates 2022-07-09 10:32:04 +10:00
Hugh Rundle 389da79af4 fix missing hyphen 2022-07-09 10:31:40 +10:00
Hugh Rundle 53a89f69e7 guided tour only for request.user 2022-07-09 10:23:09 +10:00
Hugh Rundle 3365bb6d35 show_guided_tour is not added to AP serialisation 2022-07-09 10:17:10 +10:00
Mouse Reeve bd6774fca8
Merge pull request #2202 from bookwyrm-social/settings-warnings
New and improved warnings on the admin dashboard
2022-07-08 15:39:23 -07:00
Mouse Reeve 147d092eac Removes line breaks from warning links 2022-07-08 15:29:55 -07:00
Mouse Reeve 36553ef2a9 Suppress protected-access warning on admin dashboard 2022-07-08 12:22:23 -07:00
Mouse Reeve d0e986c283 Hide DMs from profile page 2022-07-08 12:19:51 -07:00
Mouse Reeve 441fef9e86 Use javascript to send DMs
This fixes the draft cache issue and also the weird redirects
2022-07-08 12:11:00 -07:00
Mouse Reeve ba7ae46c75 Adds warnings for missing privacy policies and codes of conduct 2022-07-08 11:59:21 -07:00
Mouse Reeve 4a2e191d92 Refactors dashboard warnings
This cleans up the display so that they don't get all squished when a
bunch are present, and creates a layout to make them more DRY
2022-07-08 11:38:27 -07:00
Mouse Reeve b62bb157c0 Fixes links to documentation pages 2022-07-08 09:44:41 -07:00
Mouse Reeve 65f55fe324 Fixes link to remote instance user list 2022-07-08 09:26:11 -07:00
Mouse Reeve be86fef42d Move deleted users to a separate tab
Since there's nothing to be done with them, they get their own tab.
2022-07-08 09:21:48 -07:00
Mouse Reeve 5bb001e15f Show avatars in user admin view
I find this helpful as a rough hueristic for how engaged a user is -- if
they've never added an avatar, it's often the case that they never
really got further in to using the app than just registering a username.
Also, on one occassion, a user had an avatar that violated the instance
ToS, which would have been handy to see at a glance in this list.
2022-07-08 09:10:29 -07:00
Mouse Reeve a972c58f3b Fixes errors in permissions 2022-07-07 14:01:51 -07:00
Mouse Reeve 948f2964ac Updates admin tests to use perms instead of superuser
Superuser overrides all perms, so this was hiding simple typo-related
bugs in the permissions system
2022-07-07 14:01:05 -07:00
Mouse Reeve 742d97b177 Python formatting 2022-07-07 12:23:10 -07:00
Mouse Reeve 76c466ee45 Fixes cache invalidation for editions
Your reading status is shown across all editions of a work, so when you
change your status in relation to the edition you're currently reading,
it needs to invalidate the cached values for all editions of that work.
2022-07-07 12:21:24 -07:00
Mouse Reeve 076ba6f0ae Dramatically reduce cache duration for reading statuses
I originally set this for a very long timeout because this value should
be invalidated when it needs to be by the models, and if that worked
perfectly, this would reduce queries dramatically for books that show up
in ones feed frequently, but don't change status (for example, a book
you read and your friend is currently posting about). In practice, of
course, there are errors in invalidating this cache which leave this
value appearing extremely broken and it's next to impossible to fix.

This change makes each of the timeouts related to reading an hour, which
will still give performance benefit when browsing the site (especially
for loading the same book multiple times on a page), but resolve
naturally if the cache gets into a bad state.
2022-07-07 12:06:06 -07:00
Mouse Reeve 1a082b5ee8 Settings 2022-07-07 11:37:34 -07:00
Mouse Reeve 634ed50044 Tests for image generator file
This isn't what I need to be working on right now but it bugs me
immensely that the test coverage is at 89% and not 90% and this was the
lowest hanging fruit to get more coverage. Truly a me problem.
2022-07-07 10:24:19 -07:00
Mouse Reeve 0b7c8e8dc0
Merge pull request #2082 from bookwyrm-social/notifications
Notifications refactor
2022-07-07 09:34:19 -07:00
Mouse Reeve a5e761b134 Group accept and leave notification 2022-07-07 08:55:17 -07:00
Mouse Reeve fd5e513ad6 Update password reset copy so as not to reveal whether the email exists
A malicious user could use this to test which email addresses are in the
user database.
2022-07-06 19:34:00 -07:00
Mouse Reeve cded3e973d Fixes html on notifications page 2022-07-06 19:16:14 -07:00
Mouse Reeve 26a1f75e91 Group notification types by feature 2022-07-06 19:15:48 -07:00
Mouse Reeve 6a5323c6e7 More tests for more notification types 2022-07-06 19:15:35 -07:00
Mouse Reeve 96bf99034c
Merge pull request #2189 from bookwyrm-social/extraneous_page_number
Removed incorrect and duplicate page indicator from content status
2022-07-06 16:38:09 -07:00
Mouse Reeve 4bb3a7e4cd Removed incorrect and duplicate page indicator from content status 2022-07-06 15:27:48 -07:00
Mouse Reeve 04f9b9180d Adds test file for utils 2022-07-06 15:07:46 -07:00
Mouse Reeve d3023f350d Adds tests to site admin view 2022-07-06 15:04:27 -07:00
Mouse Reeve 221b5138e8 Adds merge migration 2022-07-06 14:42:58 -07:00
Mouse Reeve 5a6ef7ccd8 Merge branch 'main' into notifications 2022-07-06 14:41:15 -07:00
Mouse Reeve dda6126329 Fixes typo in group notification 2022-07-06 14:33:45 -07:00
Mouse Reeve 2cda9d5567 Test leaving a group (as opposed to being removed)
This test will catch my typo in generating the notifications
2022-07-06 14:31:38 -07:00
Mouse Reeve 079f6d304e Python formatting 2022-07-06 12:22:07 -07:00
Mouse Reeve 9fceeb3eda Adds another missing migration 2022-07-06 12:17:24 -07:00
Mouse Reeve b2a8a04092 Removes unnecessary imports 2022-07-06 11:24:04 -07:00
Mouse Reeve 9c21d1c06f Adds more automod tests 2022-07-06 11:15:30 -07:00