Commit graph

207 commits

Author SHA1 Message Date
3ca2af74bb
Rename tags to 'cats', a silly catgirl pun on 'categories' 2017-11-20 11:09:30 +11:00
2413a8aa96
Put the published and updated dates next to each other again 2017-11-20 10:59:58 +11:00
1a6ec02664
Add basic support for tags on entries :3 cool beans 2017-11-20 10:59:03 +11:00
e72a6b01f0
Start implementing reply context! It's ugly and doesn't actually link the original post yet but you *can* see the original post's author and content :3 2017-11-16 21:52:42 +11:00
fb9e9a24c9
Add a few extra properties in layout.html that should be applied to all pages 2017-11-16 09:50:21 +11:00
f3bb90fffd
Accept in-reply-to, like-of, and repost-of at the micropub endpoint - currently they override each other, in the order I specified, but I think that's probably okay? 2017-11-13 15:55:34 +11:00
b446c7072c
Also omit entry kinds that don't show on the homepage from the Atom and RSS feeds, since they're supposed to be alternate versions of the homepage content 2017-11-13 13:16:46 +11:00
cedae16456
Use a slightly simpler way of identifying on_home kinds, which the ORM seems to like better 2017-11-13 08:56:20 +11:00
adb302ebe3
Hide likes and replies from the homepage 2017-11-13 08:54:23 +11:00
28e4a71cae
Begin implementing support for replies, likes, and reposts - there's a DB field for storing the original post's URL, but it's not actually used yet 2017-11-13 08:42:31 +11:00
5d031f9e84
Adjust the spacing on the footer a bit, it looks better this way 2017-11-11 17:18:32 +11:00
6481e8d9bc
Tweak the cards' layout, there's more room for extra stuff this way 2017-11-11 17:07:40 +11:00
fa3a6ec362
Put link[rel='pgpkey'] on the home page for each PGP key, so they work with IndieAuth.com and such 2017-11-11 16:23:05 +11:00
a518d72a7d
Add PGP keys and XMPP handle to the WebFinger output 2017-11-10 10:30:09 +11:00
85d95fb5d7
Extend the host-meta with extra fields and sort them by rel 2017-11-10 10:17:19 +11:00
a7f6824334
Implement request caching in Redis so that we don't always have to fetch remote pages every time we want their mf2 items 2017-11-10 09:17:32 +11:00
b8a8cd62cf
Refactor micropub into a class-based view so that it can have a GET handler implemented as well (since that's needed to query for config info and stuff) 2017-11-09 13:55:44 +11:00
b47716249e
Use display: inline-block to keep the little entry info widgets from breaking apart, rather than white-space: nowrap 2017-11-09 12:17:07 +11:00
e4e8beb958
WebSub-ping the kind-specific entry URLs as well, not just the generic ones 2017-11-09 10:14:50 +11:00
6b51531cb4
Add a user field specifically for XMPP, because it needs to be handled a little differently to the user profiles (different mf2 property, stuff like that) 2017-11-06 22:02:12 +11:00
5349fc4c96
Handle webmention endpoint discovery separately - sendWebmention() is meant to do it itself but doesn't quite work 2017-11-06 21:41:27 +11:00
5308e28d98
1.6.1 2017-11-06 21:13:49 +11:00
78b2f8220d
Add simple support for sending Webmentions using the ronkyuu library 2017-11-06 21:08:02 +11:00
3cc2fe798f
Whoops, fix up the WebSub ping implementation - it should actually work now 2017-11-06 21:05:00 +11:00
5c643299c7
Permit span[class] in bleached content 2017-11-06 16:06:25 +11:00
1762b102fb
Remove an unwanted extra margin 2017-11-06 13:48:15 +11:00
e7df63d6f8
Make the entries on the homepage a .container so they look right on narrow displays 2017-11-06 13:44:52 +11:00
475302eb07
Forgot to urlencode the list of URLs posted up to Superfeedr 2017-11-06 11:49:43 +11:00
45298abb98
Actually queue up the ping_hub operation on the queue by using its delay() method 2017-11-06 11:46:43 +11:00
e853e22362
Install django-rq and use it to ping WebSub, rather than blocking the micropub request during pings 2017-11-06 11:04:22 +11:00
382b7ee4a9
Fix the rel for the micropub endpoint 2017-11-03 20:47:59 +11:00
3394eb72e8
1.6.0 2017-11-03 20:46:10 +11:00
9a98fcdf4f
Introduce some very, VERY basic support for micropub - only h-entry works, and only the name and content properties can actually be set, but it works 2017-11-03 20:45:29 +11:00
a3f23e3b4d
Set the primary background colour on the <html> element instead, so overflow scrolling looks better in most cases 2017-11-03 18:10:16 +11:00
cfe0f47d0f
Switch from PyJWT to python-jose, since it supports more features and has more documentation 2017-11-03 17:42:57 +11:00
5b70c59f83
Advertise the new token endpoint 2017-11-03 17:19:25 +11:00
179f5753ed
Implement a token endpoint - currently all tokens last forever and can't be revoked, but I can add revocation later without too much trouble 2017-11-03 17:18:00 +11:00
9add6be8e4
Remove the pointless verify_auth_code wrapper - it's easier to do the verification work in the view anyway 2017-11-03 16:40:09 +11:00
3d5b537369
Oops, forgot to put .objects after the model to get the actual manager 2017-11-03 16:19:26 +11:00
ab810a8f94
Simplify the auth code format a little: the 'me' value can be computed from the user ID and so is redundant 2017-11-03 16:14:30 +11:00
43a56e865e
Add the current user's ID to the auth code, will be handy when making a token since we need to know who the token's for 2017-11-03 15:51:27 +11:00
40810d6310
Refactor the actual JWT calls into separate functions since I'll be needing them for tokens as well as auth codes 2017-11-03 14:37:39 +11:00
6f6bb4e534
Improve JWT security by specifying the algorithm used, and also use shorter key names to make the code a little shorter 2017-11-03 14:33:27 +11:00
6b1cd896ea
Handle IndieAuth redirect URIs that already have query parameters 2017-11-03 12:14:15 +11:00
b658bf5c79
Default to form encoding rather than JSON, since legacy clients that don't support JSON usually also don't ask for a certain format 2017-11-03 11:51:34 +11:00
92cd38cbb0
Make relative redirect URIs redirect to the right place, by urljoining them with the client ID 2017-11-03 11:28:26 +11:00
1c09be1b1c
Switch from database-persisted auth codes to stateless JSON Web Tokens :) 2017-11-02 16:36:16 +11:00
41d490ea80
Put the shortcuts for returning 40* responses into lemoncurry.utils 2017-11-02 16:16:04 +11:00
1e56d5a09a
Install django-model-utils and use it for automatic timestamp fields on entries 2017-11-02 12:59:23 +11:00
4b4ab324cc
Enable analytics in production 2017-11-01 16:18:48 +11:00