Commit Graph

467 Commits

Author SHA1 Message Date
Jason McBrayer b6d2d38e7c Added some css to fullbrutalism.css
Brutalist or not, stuff overflowing boxes is not a good look.
2018-06-12 12:43:13 -04:00
Jason McBrayer d90d7cc648 Add some banners to fullbrutalism footer 2018-06-12 12:25:37 -04:00
Jason McBrayer eae810c15c In js-supporting browsers, use ctrl-enter to submit toots
This pulls in our first external javascript dependency! And thus a yarn.lock.
2018-06-12 08:35:23 -04:00
Jason McBrayer ccb5b52234 user page layout 2018-06-11 20:02:46 -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 6952c34aac User action icons 2018-06-11 14:45:04 -04:00
Jason McBrayer b719cce139 URL routes and stub view functions 2018-06-11 14:34:38 -04:00
Jason McBrayer 0ccd1e60e8 Fix up formatting 2018-06-11 14:25:13 -04:00
Jason McBrayer 315d875f9b Add search box to top of search results page just because. 2018-06-10 12:44:56 -04:00
Jason McBrayer cffa271394 Fix image style bug introduced in last commit 2018-06-09 14:02:53 -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 89584a01e5 Fixes to notifications template 2018-06-08 19:02:08 -04:00
Jason McBrayer 3390266b29 Work around bug(?) in BeautifulSoup entity handling 2018-06-06 17:13:26 -04:00
Jason McBrayer dc5d5f4176 Remove a bit of debug logging 2018-06-06 15:25:10 -04:00
Jason McBrayer 5bdd29f12e Merge branch 'master' of github.com:jfmcbrayer/brutaldon 2018-06-06 15:23:19 -04:00
Jason McBrayer d0770dbbe1 Fix unescaping of html in template filters.
This was not a security bug, because it was done before passing code to
sanitize, but it was totally an annoying UI bug.
2018-06-06 15:21:00 -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 9e04cf13ff Remove paging placeholder from user timeline 2018-06-04 10:11:14 -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 dd8eb95a42 More padding for media 2018-06-03 16:47:46 -04:00
Jason McBrayer 687de7e571 Add padding in fullbrutalism 2018-06-03 15:48:48 -04:00
Jason McBrayer 1bfeb80646 Add source link to footer 2018-06-01 18:46:44 -04:00
Jason McBrayer 2869d0a41f Leave the footer on in FULLBRUTALISM mode 2018-06-01 18:42:52 -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 097dd694fb Fix summary/details arrow styling in FULLBRUTALISM mode 2018-05-31 18:47:11 -04:00
Jason McBrayer 351c0ea2e2 Return max image preview dimension to 128px 2018-05-30 12:53:22 -04:00
Jason McBrayer 6c855dbaae Make image previews keep aspect ratio of original, and larger max size. 2018-05-30 12:44:53 -04:00
Jason McBrayer 3d95a65f53 Fill in about and privacy pages 2018-05-27 13:43:20 -04:00
Jason McBrayer 4fa527a4d8 Fix 'boost' note on fav notifications 2018-05-26 13:49:04 -04:00
Jason McBrayer 507c52bb96 Add about and privacy pages 2018-05-26 13:28:13 -04:00
Jason McBrayer 722a5c73fd Remove more boxes. 2018-05-23 14:31:35 -04:00
Jason McBrayer e9097a950d Fix one more place where I didn't update templates 2018-05-23 14:04:51 -04:00
Jason McBrayer b0a2657296 Link brand to home (useful on mobile) 2018-05-23 10:07:15 -04:00
Jason McBrayer 9ee6e3f5f7 Fix formatting of replies 2018-05-23 10:05:13 -04:00
Jason McBrayer 7e449992f4 Fix issue of mobile without javascript not having a menu 2018-05-23 09:52:15 -04:00
Jason McBrayer ff2754e33b Convert the navbar menu into a dropdown on mobile
This *may* break browsers that support css media types but not javascript.
This set appears to include dillo, evergreen browsers with js turned off.

One thought on how to fix this is to set is-active on the menu by default,
don't include the burger. Add the burger from javascript and remove is-active
from the menu.
2018-05-23 09:18:23 -04:00
Jason McBrayer 1ad74ffcef Fix class name typo 2018-05-23 09:03:15 -04:00
Jason McBrayer e566512a98 Fix things that got broken by mobile fixes 2018-05-23 08:56:34 -04:00
Jason McBrayer c2fe241281 Adjust fullbrutalism mode for media fix changes 2018-05-23 08:40:11 -04:00
Jason McBrayer 69a678a5ce Fix a bunch of mobile formatting issues 2018-05-23 08:27:45 -04:00
Jason McBrayer 9e1a82655e Put spoilers in details/summary element.
This gives us expandable CWs without JS. On Lynx, nothing actually changes.
2018-05-22 14:53:14 -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 dc82c5e9fd Remove stray bracket from home timeline 2018-05-18 09:28:00 -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 ad334315dc Support multi-image posting.
The javascript could be refactored a little cleaner, I think.
2018-05-18 08:00:12 -04:00
Jason McBrayer 22dde23e81 Fix link backgrounds in FULLBRUTALISM mode 2018-05-15 10:08:27 -04:00
Jason McBrayer 741304ee8c Be sure not to include inline scripts in FULLBRUTALISM mode 2018-05-15 10:06:09 -04:00
Jason McBrayer b465dc9870 Very basic support for sensitive images 2018-05-15 10:04:09 -04:00
Jason McBrayer 17769e952c Allow old login method with suitable warning. 2018-05-15 09:52:07 -04:00
Jason McBrayer f4ef673ab7 Missing file from last commit 2018-05-14 16:05:02 -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 df085c5956 Don't show boost button for toots that can't be boosted. 2018-05-13 20:19:34 -04:00
Jason McBrayer d5e224a063 Temporarily remove pagination dummy links 2018-05-13 13:18:56 -04:00
Jason McBrayer 2d9e06ac8f Fix crash on validation error in replies 2018-05-13 13:16:44 -04:00
Jason McBrayer c6e0c7d9c1 Fix up static links in base template 2018-05-13 12:18:09 -04:00
Jason McBrayer ea5f0244af Pretty up the file upload 2018-05-10 07:27:45 -04:00
Jason McBrayer 5bcca98c87 Link from user page to user profile page on home site 2018-05-09 14:52:45 -04:00
Jason McBrayer 0455c6d25f Add javascript to pretty version of media upload 2018-05-09 14:44:45 -04:00
Jason McBrayer 71aa4c0249 Use text-stroke instead of text-shadow in user page titles 2018-05-09 14:23:47 -04:00
Jason McBrayer 56d0ff2158 Add user information to header of user timeline 2018-05-09 14:17:39 -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 9c038a35dd Fix more formatting issues on tag relinking 2018-05-07 09:34:12 -04:00
Jason McBrayer d9de6d7c85 Fix some formatting issues introduced by hashtag parsing 2018-05-07 09:15:22 -04:00
Jason McBrayer 63cea9be14 Link in tags to tag timeline.
Currently, only tags in toots from Mastodon servers are relinked,
because they use a consistent and easy-to-support heuristic.
2018-05-07 08:46:59 -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 0090a31388 Change text for unboost/unfav submit button 2018-05-01 08:54:22 -04:00
Jason McBrayer 99a021b5af Fix error when *not* canceling a boost or fav 2018-05-01 08:39:48 -04:00
Jason McBrayer 25cbb258c6 Minor layout fix in toot partial 2018-05-01 08:37:08 -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 882b9db5cc Add cw to posts 2018-04-30 17:59:30 -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 bf3af37003 Add html sanitization.
Probably the html sent by your instance is already sanitized, but I haven't
checked the Mastodon source to be sure.
2018-04-26 20:36:48 -04:00
Jason McBrayer e773511726 Fix formatting on Lynx 2018-04-26 19:46:05 -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 af30107368 Add notification templates 2018-04-26 11:17:20 -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 5c48180a7c Add client field to Account 2018-04-24 12:55:44 -04:00
Jason McBrayer 358602edde Added (non-functional) thread link and pagination 2018-04-24 12:40:33 -04:00
Jason McBrayer 791c1aa88c Fix title attribute of image previews -- actually show description 2018-04-24 09:58:42 -04:00
Jason McBrayer 9b0b5e930a Show full @reference for remote users 2018-04-24 09:24:06 -04:00
Jason McBrayer 2310146b5b Little formatting tweak on toots with attachments 2018-04-24 09:16:57 -04:00
Jason McBrayer 651367c0d7 Display boosts correctly 2018-04-24 09:12:13 -04:00
Jason McBrayer b3e0eefba4 Add CWs to toots in timeline 2018-04-24 08:22:03 -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 2608b9ddea Rudimentary media display support 2018-04-23 22:01:37 -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
Jason McBrayer e48ac63cfe Initial project setup 2018-01-05 21:06:07 -05:00