Commit Graph

189 Commits

Author SHA1 Message Date
Jason McBrayer 816458a86a Fix a 500 error on repeat login 2018-08-29 08:18:16 -04:00
Jason McBrayer 283b94cd53 Ensure that account username is unique 2018-08-28 13:41:21 -04:00
Jason McBrayer bc9cbd1d6e Fix old_login; something got broken in last merge 2018-08-28 12:48:52 -04:00
Jason McBrayer 5bdb2de646 Add theme support and move preferences into the database
Squashed commit of the following:

commit be4e1ab286f54caa6f44367d2de3cf9e6cb69e68
Author: Jason McBrayer <jmcbray@carcosa.net>
Date:   Tue Aug 28 12:03:17 2018 -0400

    Set timezone in session as early as possible

commit f1c03349c40ca1aca7f77c32333ee83585495626
Author: Jason McBrayer <jmcbray@carcosa.net>
Date:   Tue Aug 28 10:06:18 2018 -0400

    Don't hide all .is-hidden in brutalist themes

commit f35a6c5600b091fe0ec4ad78eb5f1a02a4945a65
Author: Jason McBrayer <jmcbray@carcosa.net>
Date:   Tue Aug 28 09:44:10 2018 -0400

    Rename vt240don.css to vt240don-amber.css

commit 074478937af309d10ff2d7f8f482dbff20ac7cf9
Author: Jason McBrayer <jmcbray@carcosa.net>
Date:   Tue Aug 28 09:41:43 2018 -0400

    Tweak vt240 amber theme and add vt240 green theme

commit b205cfe7376d067799863d7db1ce3c4530b0ba74
Author: Jason McBrayer <jmcbray@carcosa.net>
Date:   Tue Aug 28 08:39:11 2018 -0400

    Remove caching of Mastodon connections

    There's not a good way of invalidating them, and they've started causing
    timeouts in this branch.

commit c24a697a39173ff23391220fabad0dc6605cb5ef
Author: Jason McBrayer <jmcbray@carcosa.net>
Date:   Mon Aug 27 14:46:21 2018 -0400

    Make minimal-large a little less bare

commit 6fee850cf6ba1edb573a7fedf43af3a343410c9b
Author: Jason McBrayer <jmcbray@carcosa.net>
Date:   Mon Aug 27 14:24:57 2018 -0400

    Add minimal-large theme

commit b345dedbfcf55c3142d07a6f5320c677cfb534f0
Author: Jason McBrayer <jmcbray@carcosa.net>
Date:   Mon Aug 27 13:19:51 2018 -0400

    Add vt240don style by @enkiv2

commit f013ff235663ee21f2d0962a019ce7bc3c80f7b0
Author: Jason McBrayer <jmcbray@carcosa.net>
Date:   Mon Aug 27 09:15:51 2018 -0400

    Fix crash in search

commit 76c4134e9ddebbdf8a8dccab79361e71438877e6
Author: Jason McBrayer <jmcbray@carcosa.net>
Date:   Mon Aug 27 08:35:02 2018 -0400

    Fix crash in oauth_callback

commit d725018d6a34544ac8c92deac27502c457d4d3c8
Author: Jason McBrayer <jmcbray@carcosa.net>
Date:   Mon Aug 27 08:31:19 2018 -0400

    Fix crash in oauth_callback

commit 830264359dbdbf7c34e1d1ae715cb68016cd47f4
Author: Jason McBrayer <jmcbray@carcosa.net>
Date:   Mon Aug 27 08:28:17 2018 -0400

    Fix crash in oauth_callback

commit 2a525298995d108a290484786a7493bfb99af2c8
Author: Jason McBrayer <jmcbray@carcosa.net>
Date:   Mon Aug 27 08:27:03 2018 -0400

    Fix crash in oauth_callback

commit d43eb63146eb21a283290287b9db4d518f36435e
Author: Jason McBrayer <jmcbray@carcosa.net>
Date:   Mon Aug 27 08:25:27 2018 -0400

    Fix crash in oauth_callback

commit ae9a58a0ae010fdc12a7498d691b7b8f8da95e03
Author: Jason McBrayer <jmcbray@carcosa.net>
Date:   Mon Aug 27 08:12:19 2018 -0400

    Fix up default values for default themes again

commit a8fde1710b4d23f2bdd0ced4eeffd44b4e80b756
Author: Jason McBrayer <jmcbray@carcosa.net>
Date:   Mon Aug 27 08:11:18 2018 -0400

    Fixes for dark theme

commit c4a7501cf263afbdc6bf65623e9c8dc5f03f40f7
Author: Jason McBrayer <jmcbray@carcosa.net>
Date:   Mon Aug 27 08:11:04 2018 -0400

    Small fix in full toot view

commit 69caeea0010e7d59106fba780744592ed9145f61
Author: Jason McBrayer <jmcbray@carcosa.net>
Date:   Sun Aug 26 22:50:53 2018 -0400

    Fix up settings display, navbar, typo in links

commit 0e24a394eabe78d8cba864beaedb03a42f916a20
Author: Jason McBrayer <jmcbray@carcosa.net>
Date:   Sun Aug 26 22:36:58 2018 -0400

    Fix default theme paths

commit aca5c53561cd8647d42244fd51720e146fddbf94
Author: Jason McBrayer <jmcbray@carcosa.net>
Date:   Sun Aug 26 22:35:33 2018 -0400

    More themes prep

commit 6921c55a41db14e155b5ed62c48e3e67d8626b13
Author: Jason McBrayer <jmcbray@carcosa.net>
Date:   Sun Aug 26 21:42:53 2018 -0400

    Actually load themes

commit 134952ff17e3a8672e21175395282d91f48f1d2b
Author: Jason McBrayer <jmcbray@carcosa.net>
Date:   Sun Aug 26 21:34:06 2018 -0400

    Base and fullbrutalism themes work, but only coincidentally

commit 658aca52955507eda007165e9c44031d417e0076
Author: Jason McBrayer <jmcbray@carcosa.net>
Date:   Sun Aug 26 19:47:48 2018 -0400

    Make filtering preference work again

commit 90267055b5a2fc51337b0a3e34b3a5643088e17f
Author: Jason McBrayer <jmcbray@carcosa.net>
Date:   Sun Aug 26 19:34:47 2018 -0400

    Fix up settings view, form, and model

commit d58769ecdffad239cc8aa37ebca9c2e87372ebd0
Author: Jason McBrayer <jmcbray@carcosa.net>
Date:   Sun Aug 26 19:12:06 2018 -0400

    Fix up old_login to work with new preferences system

commit d8b084a379894a3a40c3eed1c87465f7c77ad7eb
Author: Jason McBrayer <jmcbray@carcosa.net>
Date:   Sun Aug 26 18:11:03 2018 -0400

    Update settings view to use preferences system

commit 49471ae97131bdb0d8152411afdf1987d6c64652
Author: Jason McBrayer <jmcbray@carcosa.net>
Date:   Sat Aug 25 10:53:04 2018 -0400

    Update login logic to match new account models, simplify.

    Not tested yet.

commit 57cce7c0f45fe07dd522a61c9e056db982455843
Author: Jason McBrayer <jmcbray@carcosa.net>
Date:   Sat Aug 25 10:18:53 2018 -0400

    Fix up models and forms to meet current needs

commit 0634c038ee9220164662d1e933a2f1c83e5af70d
Author: Jason McBrayer <jmcbray@carcosa.net>
Date:   Fri Aug 24 22:42:07 2018 -0400

    Update fields in models for settings branch

commit 510509e28254cb3ee38b70538d1c0b788448d624
Author: Jason McBrayer <jmcbray@carcosa.net>
Date:   Fri Jun 22 08:39:42 2018 -0400

    Update settings view a bit; still in progress

commit 5a91a57ceb1d737ed371bd6800ddf6ea0a917a8f
Author: Jason McBrayer <jmcbray@carcosa.net>
Date:   Tue Jun 19 06:27:19 2018 -0400

    Add forms object for new preferences

commit af4883c172d2b66d83c55b00cee1490fa88ddd4f
Author: Jason McBrayer <jmcbray@carcosa.net>
Date:   Tue Jun 19 06:26:35 2018 -0400

    Make sure newly created accounts have preferences attached

commit f0ae97b2bf8735bd5c369f273fb51d74deb05450
Author: Jason McBrayer <jmcbray@carcosa.net>
Date:   Mon Jun 18 21:33:41 2018 -0400

    Setup for themes and related options
2018-08-28 12:22:20 -04:00
Jason McBrayer db1ed32490 Parentheses matter. 2018-08-27 11:12:21 -04:00
Jason McBrayer b9f39ce269 Hopefully fix last piece of oauth login errors for Pleroma 2018-08-27 11:08:55 -04:00
Jason McBrayer 73f8ded761 Also only ask for specific scopes on login, not just client creation 2018-08-27 10:53:35 -04:00
Jason McBrayer a3db39988d Fix syntax error added by last patch 2018-08-27 10:46:53 -04:00
Jason McBrayer b19b4fc641 Explicitly don't request 'push' scope 2018-08-27 10:41:55 -04:00
Jason McBrayer d2c8de991b Make redraft handle html in content, media descriptions.
You still have to re-upload media, which sucks.
2018-08-24 08:38:42 -04:00
Jason McBrayer 9797b6f7c2 Add basic re-drafting without image support 2018-08-23 20:58:07 -04:00
Jason McBrayer fb6e1d6b7a Remove un-needed login check in get_mastodon() 2018-08-23 17:49:45 -04:00
Jason McBrayer 56114c251f Fix crash of privacy page for logged out user 2018-08-22 09:27:45 -04:00
Jason McBrayer fb2f9bc8a3 Fix crash of privacy page for logged out user 2018-08-22 09:25:57 -04:00
Jason McBrayer 7482617863 Improve handling of not-logged-in users 2018-08-22 09:21:09 -04:00
Jason McBrayer a07b6db3d3 Missed adding a mastodon to the pool 2018-08-21 22:11:27 -04:00
Jason McBrayer 81a705cba9 Refactor fullbrutalism_p 2018-08-21 22:01:34 -04:00
Jason McBrayer b851462b12 Add timezone handling to settings and middleware 2018-08-21 13:15:10 -04:00
Jason McBrayer 66861e7abd Add options to filter replies and boosts out of timelines 2018-08-17 14:50:37 -04:00
Jason McBrayer 03c4353476 Sort the emoji guide 2018-08-16 21:19:03 -04:00
Jason McBrayer 7ea5ecca89 Update version string, and move it into the config file 2018-08-16 13:10:45 -04:00
Jason McBrayer efcaa76130 Also catch AttributeError some places IndexError is caught
This should fix bug #36, user searches failing for some users (as far as I
know, for new users with less than one page of history).
2018-08-16 12:59:16 -04:00
Jason McBrayer 13f77c9cf8 Fix over-hasty push 2018-08-09 20:58:05 -04:00
Jason McBrayer 8389ffdf9d view for emoji reference 2018-08-09 19:39:23 -04:00
Jason McBrayer 3d21ed212e Go back to default scopes ask.
May need to drop and re-create database when doing this
2018-08-02 20:40:53 -04:00
Jason McBrayer c729956fab Fix swapped paging args 2018-07-23 13:37:24 -04:00
Jason McBrayer e86857f2cb Actually use paging args in user timeline 2018-07-23 13:35:38 -04:00
Jason McBrayer 0b69a12615 Fix permissions on oauth login.
Why is it not the same as password login?
2018-07-18 14:56:52 -04:00
Jason McBrayer 6b3b46dff0 Add user icon to various pages to identify which account you're using 2018-07-18 13:33:16 -04:00
Jason McBrayer 2bdfdeebca Add missing params to user view 2018-06-24 17:19:39 -04:00
Jason McBrayer dfd1db618d Fix typo on user paging 2018-06-24 17:13:31 -04:00
Jason McBrayer bdb6dc16fd Add paging for user pages 2018-06-24 17:07:43 -04:00
Jason McBrayer 025a6f736d Fix presence of newer link when no new notifications 2018-06-24 15:09:09 -04:00
Jason McBrayer f64f4f92cf Pass correct variables to notifications template 2018-06-24 14:33:44 -04:00
Jason McBrayer 52e83814b6 Add paging to notifications. Untested 2018-06-24 14:19:35 -04:00
Jason McBrayer 320164a5d3 Don't add blank line to replies with no mentions (self-replies) 2018-06-22 08:40:46 -04:00
Jason McBrayer 2ce118080d Work harder to not mention yourself. 2018-06-13 13:42:40 -04:00
Jason McBrayer 4d31412e75 Add blocking and muting 2018-06-11 19:38:49 -04:00
Jason McBrayer d0bed792b2 Add mention to user actions 2018-06-11 19:19:22 -04:00
Jason McBrayer 9122a44216 Implement follow/unfollow 2018-06-11 19:09:12 -04:00
Jason McBrayer 51f26e2b25 Template changes for user actions 2018-06-11 18:16:32 -04:00
Jason McBrayer b719cce139 URL routes and stub view functions 2018-06-11 14:34:38 -04:00
Jason McBrayer cce0fe0186 Complete searching feature for brutaldon 2018-06-09 13:49:04 -04:00
Jason McBrayer 5e2b025042 A bit more on search templates 2018-06-08 19:03:02 -04:00
Jason McBrayer f2c8036bc0 Fix tag timeline titles 2018-06-08 19:02:46 -04:00
Jason McBrayer dc5d5f4176 Remove a bit of debug logging 2018-06-06 15:25:10 -04:00
Jason McBrayer d2de96fceb Views and routes for search 2018-06-05 18:36:44 -04:00
Jason McBrayer e05601db22 Add extra debug logging to production 2018-06-05 08:24:07 -04:00
Jason McBrayer e63d6b86f5 Add connection pooling for Mastodon objects
brutaldon has really bad latency. Some part of it is reconnecting to the
mastodon server every request, even with a cached auth token. This commit
adds a singleton object that caches mastodon.Mastodon objects.
2018-06-05 08:08:12 -04:00
Jason McBrayer aa763cc1d0 Don't include self-mention when replying on a thread you're in. 2018-06-04 09:09:34 -04:00
Jason McBrayer e1c77dd483 Direct people to the about page if not logged in. 2018-06-01 09:22:17 -04:00
Jason McBrayer 3d95a65f53 Fill in about and privacy pages 2018-05-27 13:43:20 -04:00
Jason McBrayer 507c52bb96 Add about and privacy pages 2018-05-26 13:28:13 -04:00
Jason McBrayer 2895bae6bc Allow deleting your own toots 2018-05-22 09:41:11 -04:00
Jason McBrayer ac02b941c0 Fix bug with posting media on replies 2018-05-22 09:05:16 -04:00
Jason McBrayer 02f0ee560a Mini-post form and default post privacy 2018-05-22 08:57:45 -04:00
Jason McBrayer 7af72887e9 Change rate limit method from pace to throw
This will help with debugging.
2018-05-22 08:12:39 -04:00
Jason McBrayer 50a44d1a43 Don't show actions bar when you're only showing a toot for confirmation 2018-05-22 08:12:21 -04:00
Jason McBrayer bfa9e8e86b Add user's acct to session on login 2018-05-20 20:28:53 -04:00
Jason McBrayer dd88bcea29 Home, local, and public timelines have simple pagination.
Notification and tag timelines should also have pagination, but they have
to be done separately.
2018-05-18 09:22:27 -04:00
Jason McBrayer f40cc58852 Switch authentication over to OAuth.
Going to add fallback for running locally.
2018-05-14 15:35:10 -04:00
Jason McBrayer 2d9e06ac8f Fix crash on validation error in replies 2018-05-13 13:16:44 -04:00
Jason McBrayer 0191bc2f98 Support user timelines.
Other user stuff (profile info, follows/followers) and operations on users
(follow, block, report) are not added, but relatively easy.
2018-05-08 21:47:17 -04:00
Jason McBrayer 7b4c449179 Tag timelines implemented, but not reachable from anywhere
Except knowing the URL, of course.
2018-05-06 19:46:51 -04:00
Jason McBrayer d39593868d Respect FULLBRUTALISM flag when boosting or faving 2018-05-04 10:58:37 -04:00
Jason McBrayer 1004b88779 Make media posting work, with limitations.
Doesn't work with replies (for reasons I don't 100% understand yet).

Only one media field set in the form, though the rest could be added.
2018-05-01 14:44:56 -04:00
Jason McBrayer f3d34733fe Forgot one @never_cache 2018-05-01 10:32:21 -04:00
Jason McBrayer ae7362903a Make replies inherit visibility and spoiler text from parent 2018-05-01 09:34:14 -04:00
Jason McBrayer 511f5db546 Disable cacheing for most views 2018-05-01 09:28:57 -04:00
Jason McBrayer 99a021b5af Fix error when *not* canceling a boost or fav 2018-05-01 08:39:48 -04:00
Jason McBrayer 8d6ebfc0b2 Quick fix for a security issue with login form 2018-04-30 20:32:50 -04:00
Jason McBrayer 421d27ef07 Correctly cancel out of (un)boosting or faving toots 2018-04-30 18:53:11 -04:00
Jason McBrayer 804a4dfd67 Add boosting, with same caveats as faving 2018-04-30 18:49:06 -04:00
Jason McBrayer 1b561fa90e Enable favoriting toots.
The user flow for this is kind of crap right now; it will get better once some
intercooler is applied on top, but will stay the same in lynx and FULLBRUTALISM
2018-04-30 18:40:41 -04:00
Jason McBrayer d6fe609b29 Add replies 2018-04-30 14:31:59 -04:00
Jason McBrayer 2f448242f8 Add posting support 2018-04-30 08:58:10 -04:00
Jason McBrayer 3ce20bd91c Form and view for plain tooting.
Does not include media yet, although the form does.
2018-04-27 14:12:29 -04:00
Jason McBrayer 2e7fc810ac Add support for basic threading.
It works the same as the Mastodon web UI for now - active toot is highlighted,
ancestors displayed in order above, descendants in order below. I hope to
add actual full threading one day.
2018-04-26 18:49:43 -04:00
Jason McBrayer d199327d35 Refactor more things, make settings and notes respect theme. 2018-04-25 23:07:58 -04:00
Jason McBrayer 12d61820bf Add view for notifications. 2018-04-25 22:50:13 -04:00
Jason McBrayer 51cb1c42fe Refactor some more common stuff for views 2018-04-25 20:51:12 -04:00
Jason McBrayer e6f2734208 Add the remaining "easy" timeline views 2018-04-25 20:06:10 -04:00
Jason McBrayer 498f89b165 Add working logout link, slightly change login logic
On logging in, don't get a new access token if there's one in the database
for this user. Log out link wipes the user's session, but not their database
entry. Those can be cleaned up periodically (after I add a last-used stamp).

Misfeature: user's setting is deleted, too, because it was only in the session.
2018-04-25 17:02:59 -04:00
Jason McBrayer 0594fda487 Add a settings page, controlling whether FULLBRUTALISM is used 2018-04-25 16:45:46 -04:00
Jason McBrayer ba3cc9bbd9 Add FULLBRUTALISM mode (stylesheet resembling NCSA Mosaic).
Also, add new logo.
2018-04-25 09:31:55 -04:00
Jason McBrayer 43e4726c2f Add navbar to top of main template
Also, add stub functions to views to make all the links and reverse routes
work.
2018-04-24 19:20:22 -04:00
Jason McBrayer 267e94077f Add multiuser support
Currently, this uses anonymous sessions. You log in to your instance, and you
get associated with a session. Your client information and account information
are persisted (created only if needed, reattached if not). Passwords are never
stored, only access tokens.
2018-04-24 14:53:05 -04:00
Jason McBrayer f78d24ad07 Add title to timeline; dividers for text/non-css browsers 2018-04-24 08:09:16 -04:00
Jason McBrayer 73e105517c Log in to an instance and display a home timeline.
Only supports single user, lots of display elements not supported yet.
But it actually has something to show.

Actually display a home timeline.

Still only single user, doesn't correctly handle boosts, CWs, and
probably a lot of other things.
2018-04-23 20:01:40 -04:00