1
0
Fork 0
Commit graph

65 commits

Author SHA1 Message Date
af5f71f5ac Revert return type for get_or_set 2023-09-13 10:21:30 +02:00
a5cf912ae8 Fix some annotations 2023-09-13 09:22:53 +02:00
2e88e73509 Remove returned None to make pylint happy 2023-08-21 14:00:09 +02:00
0f2c0c034d Removed TODOs. When data is invalid return None. 2023-08-21 13:28:08 +02:00
Joeri de Ruiter
ff8e4597e5 Type annotations for utils 2023-08-21 12:56:32 +02:00
ae5c27f3bb Sanitise description from Open Library 2023-08-02 19:30:40 +02:00
2de115fc1e Add helper to refer views back to http referers safely
In most cases, we want to return back to where we came from after
performing an action. It's not safe to return to an arbitrary referer,
so this streamlines using the util validator to verify the redirect and
fall back on regular redirect params if the referer is outside our
domain.
2023-03-20 10:25:38 -07:00
Christof Dorner
f3334b1550 Render hashtag links with data-mention="hashtag" attribute 2023-03-07 13:16:45 +01:00
Christof Dorner
c68304a99b Parse hashtags and store them in CreateStatus view 2023-03-07 12:55:36 +01:00
c86fdfbd40 black 2023-01-26 16:56:11 +11:00
1fe6892d0a pylint 2023-01-26 16:54:14 +11:00
aa6eaccfbb use mocks for isni API calls
- fixes a couple of tests making author ISNI calls
- notes a future TODO to remove some possibly useless code
2023-01-26 16:22:50 +11:00
Joachim
fa3edea87b Update validate.py 2023-01-01 20:51:23 +01:00
Joachim
ac2ef667af Fix error when no referer 2023-01-01 19:57:10 +01:00
Joachim
bfe04feca9 Add validation util + test 2022-12-30 17:55:47 +01:00
Ell Bradshaw
c9adb7ff12 Linting fixes 2022-11-14 01:04:20 -08:00
Ell Bradshaw
b3603bc3f5 Merge branch 'main' into ignore-does-not-exist 2022-11-14 00:31:34 -08:00
5c3bb2da13 Refactors how mentions are collected
This should be quicker, because it queries the users in one go instead
of jumping straight to iterating over them, and it checks if a user
blocks the poster before allowing them to be tagged.
2022-08-05 14:06:39 -07:00
9d9b7f366a Use "strip" in bleach
This removes forbidden html, rather than leaving them in place but
unrendered.
2022-07-04 13:55:58 -07:00
7f78140015 Uses library for html cleanup 2022-07-04 13:21:13 -07:00
94a6675dc4 Pylint fixes 2022-07-02 12:07:22 -07:00
Joel Bradshaw
7014786fe0 Run formatters 2022-06-05 13:41:00 -07:00
Joel Bradshaw
7ae0db7f4a Ignore VariableDoesNotExist errors in debug logging
They're so noisy as to make debug logging useless otherwise
2022-05-30 12:15:50 -07:00
Vivianne Langdon
b0d3eaeb40 allow empty slugs, for non-url-friendly book names 2022-04-08 22:11:05 -07:00
Vivianne Langdon
ebf463fc91 Generation of slugs and new urls to handle slugs
- TODO: redirect to correct slug if not found.
2022-03-02 00:21:23 -08:00
556c9ea98f Adjusts cache get_or_set to work with tests 2022-01-09 12:16:01 -08:00
f2f40cf3b9 Creates custom get_or_set function 2022-01-08 13:01:05 -08:00
a8ae427aeb Updates domain regex 2021-12-28 15:53:26 -08:00
89c23c3e0c More thoroughly checking if title is set to avoid error 2021-12-05 09:07:17 -08:00
8e6619294f
oclc server sure is slow 2021-12-01 21:02:25 +11:00
d8e83ffe82
moar code linting 2021-11-22 13:01:58 +11:00
a9d921cc06
code cleanup 2021-11-22 12:52:59 +11:00
09c5a3861b
prefer English language sources for ISNI titles 2021-11-22 12:15:06 +11:00
fd3ed7fb8c
fix author is now class object not dict 2021-11-22 09:25:31 +11:00
fd2ade2313
refactor isni author enrichment
- use activitypub.Author instead of custom dict
- prefer to display "Author of [title]" from ISNI data instead of short description
- merge isni and db authors for edit_book display
- fix edit_book template to use changed data
- rename some functions in utils/isni.py
2021-11-22 08:49:22 +11:00
1e6e4b0f8d
use activitypub dataclass for isni authors
- add timeout to isni API call
- use activitypub.Author dataclass instead of bespoke dict
- display isni authors as "Author of" first title in ISNI record if possible
- sensible fallbacks if title info unavailable in isni record
2021-11-21 19:55:55 +11:00
8658e36ca8
code formatting 2021-11-16 20:40:22 +11:00
9ca18d9cd4
isni utils cleanup
Utilises the requests module's built in functionality to pass params as a dict
which is url encoded by requests.
2021-11-16 20:35:47 +11:00
c3ba7ba547 pylint Y U like this? 2021-11-01 20:04:25 +11:00
6556090524 Update existing authors when isni data available
When an existing author is selected as a new author when editing a book,
if they have an ISNI ID recorded we check the record and augment the local
database record from the ISNI data.

Also dedupes author aliases for this feature and when adding a completely
new author.
2021-11-01 19:50:49 +11:00
1533b55a32 lint code 2021-11-01 11:58:08 +11:00
630f508ee4 code cleanup 2021-11-01 11:39:37 +11:00
552980e208 select correct isni record when adding authors
The original implementation of this was so, so broken.
Now it's not.
2021-11-01 11:34:32 +11:00
30a959dfce make pylint happy 2021-11-01 10:20:19 +11:00
3cfd31f1fe hide isni authors if isni in local db
Check the authors suggested from the local DB for a matching ISNI when pulling authors from ISNI.
i.e. we do not want to suggest the same author twice when we *know* it is the same author.
2021-10-31 20:48:47 +11:00
bce5f3f3b5 populate new authors with isni data
If a user selects an author pulled from the ISNI service when editing a book, use any relevant data from ISNI to populate the new author record.

This includes
- bio
- aliases
- isni
- wikipedia url
- viaf
2021-10-31 17:58:15 +11:00
45158a1c03 improve isni search logic
- skip ISNIs that aren't persons
- don't look for text values in non-existent nameTitle elements
2021-10-30 09:24:42 +11:00
87ed6f8380 code formatting 2021-10-29 21:14:32 +11:00
d87e1b1567 fix encoding
The OCLC server claims that the xml payload is encoded as latin1 (ISO-8859-1).
This causes Requests to incorrectly encode things as latin1, when actually everything is (thank goodness) UTF-8.
We can fix it by just telling Requests that it is really UTF-8

With thanks to Tex Texin, creator of http://i18nqa.com/debug/utf8-debug.html
2021-10-29 21:00:35 +11:00
625cfac76f isni author lookup utility 2021-10-29 16:12:31 +11:00