Commit Graph

68 Commits

Author SHA1 Message Date
St John Karp 71ea1c3084 Fix #6 - Add error handling for deleting an already deleted status
Added a basic error page and implemented handling for deleting a
status that can't be found.
2019-03-25 16:23:19 +00:00
St John Karp 7fc59f1c58 Fix #5 - Implement deleting statuses
Added a link (and a confirmation page) that allows a user to delete
their own Statuses.
2019-03-24 19:45:36 +00:00
St John Karp 9a0fb86099 Issue 4 - Specify scopes for authorization
We were requesting read, write, and follow for the app, but not
for the user authorization. I've added these scopes to the oauth
redirect when logging in.
2019-03-16 10:39:42 +00:00
St John Karp 623a94d434 Merge branch 'master' of https://github.com/FuzzJunket/planiverse 2019-03-16 09:42:12 +00:00
St John Karp 23831c3c3d Fix #1 - Delete Node and Webpack files
Deleted Node and Webpack files because this project doesn't use
them.
2019-03-16 09:41:00 +00:00
St John Karp 4c1ff0d48f
Merge pull request #2 from Oreolek/views
Fix: unset status states
2019-03-16 04:23:19 -05:00
Alexander Yakovlev 82d7da2ba8 Fix: unset status states 2019-03-11 06:26:31 -04:00
St John Karp d3927063c5 Consolidate search logic into one method/route
Put both show search and run search into the same route. This prevents
Lynx from thinking the search results were from a GET request and
caching the contents of the search page.
2019-02-19 19:57:20 +00:00
St John Karp 912929cf02 Add search to the readme 2019-02-18 00:16:06 +00:00
St John Karp 98a5b744ed Don't duplicate original poster in mentions
Reply-to accounts were compiled by getting the original poster + all the
mentions returned by the API. The OP now seems to be included in the
mentions, which duplicated that account in the list. I've stripped
it down so it just uses the list of mentions returned by the API now.
2019-02-18 00:08:19 +00:00
St John Karp daa9343cb0 Implement searching for statuses and accounts
Implemented search across statuses and accounts. Replaced the old
search that was for accounts only and never quite worked right.

Don't load empty results when visiting the search page.
2019-02-18 00:08:02 +00:00
St John Karp e13542d4fd Merge branch 'master' of https://github.com/FuzzJunket/planiverse 2019-02-07 18:58:12 +00:00
St John Karp 92689fe8c3 Show statuses on the account page
Query an Account's Statuses and show them on the account page.
2019-02-07 18:53:25 +00:00
St John Karp 181c0717f1 Add content warnings to readme
Added content warnings to the list of features.
2018-10-10 22:41:59 -07:00
St John Karp 0b22855426 Add some features to the readme
Added some implemented and planned features to the readme.
2018-10-10 22:39:45 -07:00
St John Karp e60a0bcfaf Remove default readme
Deleted the default readme that came with Laravel.
2018-10-10 22:17:55 -07:00
St John Karp a620e06940
Add license
Popped a GPL v3 license in there because why not.
2018-10-10 22:17:05 -07:00
St John Karp 8941a4ed8b Readme and screenshots
Wrote a readme and added screenshots.
2018-10-10 22:06:47 -07:00
St John Karp 3d3f04ba90 Fix bug in accessing a property using a variable
Wrapped the variable in curly braces to force it to evaluate before
trying to access the property.
2018-10-10 17:59:10 -07:00
St John Karp 3d1747e13e Code clean-up, refactoring, commenting
Did an audit of the code to tidy things up, refactor, get rid of
some unused stuff that came with Laravel, and comment everything.
2018-10-10 17:58:51 -07:00
St John Karp 157b9eed48 Exclude the logged-in user from reply mentions
When posting a reply, exclude the current user from the automatically
populated list of mentions.
2018-10-10 15:09:51 -07:00
St John Karp 2bdea8f088 Close off unused routes
Commented out a few default routes that came with Laravel.
2018-10-10 02:01:20 -07:00
St John Karp 1758952667 Implemented searching for accounts, but commented out the nav link
Implemented searching for accounts using the /accounts/search API
end-point. For some reason Guzzle consistently throws an exception,
so for now I've commented out the nav link to the search page.
2018-10-09 20:12:14 -07:00
St John Karp 014228edc6 Wrap status contents in a div
Statuses don't always start/end with block elements, which can
cause them to join up with the previous or next lines of text.
I've wrapped them in a div to make sure they're properly separated.
2018-10-08 10:04:31 -07:00
St John Karp f873271675 Send token when querying a status
If the user is logged in, send their token when querying for a status.
This prevents the API returning a 404 when the status being queried
is private or direct.
2018-10-08 07:13:34 -07:00
St John Karp 24dc518fc3 Wrap a single status in a ul when replying
When showing a single status we still need to wrap it in a ul
or there'll be a weird dot.
2018-10-08 07:05:50 -07:00
St John Karp 52f0cf1fe7 Set visibility on new statuses
Allow setting the visibility when posting a status. For replies
this should default to the same visibility as the original.
2018-10-08 07:03:46 -07:00
St John Karp 6fa2c955fc Populate visibility for notifications
Populate visibility = null for notifications.
2018-10-08 06:43:38 -07:00
St John Karp c3e6b50f37 Show visibility of statuses
Added an icon to show the visibility of a status (public, unlisted,
private, or direct). This goes next to the up arrow indicating
a reply, so this area can be used for other symbols regarding the
status' properties.
2018-10-08 06:38:16 -07:00
St John Karp c0e7838308 Implement follow/unfollow accounts
Implemented basic follow/unfollow functionality. Probably needs
some styling, definitely needs other controls.
2018-10-07 21:37:09 -07:00
St John Karp d6b3c8eae1 Implement basic account page
Created a new page to display account info. Just shows a link
to the user's home instance and their bio, plus indicators showing
whether the user is a bot and whether their account is locked.
2018-10-07 20:50:15 -07:00
St John Karp a765bb5552 Fix sub-lists on notifications page
Created a new ul element for notifications that contain an
embedded status.
2018-10-07 19:33:41 -07:00
St John Karp 52a9cf68cd Fall back to URL for image alt text
If an attacment image has no description, use the URL for the
alt text instead. Having no description was causing image links
not to appear in Lynx.
2018-10-07 17:58:57 -07:00
St John Karp 457da06f22 Switch from hr dividers to list items
Switched from using horizontal rules to divide articles to
making each article a list item. This is invisible to graphical
browsers, but makes identifying posts and reposts much easier
in text browsers.
2018-10-07 17:51:22 -07:00
St John Karp 73d0123d69 Pass a string to createApp instead of an array
Fixed a bug where the argument was the wrong data type.
2018-09-09 21:13:30 -07:00
St John Karp b03b3ec100 Fix typo in Mastodon service configs
Fixed a typo preventing the creation of a new client app.
2018-09-09 21:09:03 -07:00
St John Karp 911edfa02e Tidy old link for posting a new status
Tidied up this link to point to the newer submission page
and to use a generated link.
2018-09-09 21:03:10 -07:00
St John Karp d0e5b5fe67 Use dynamically generated links
Removed hard-coded and relative links and replaced them with
dynamically generated ones. Should allow Planiverse to be served
from a subfolder.
2018-09-09 20:55:08 -07:00
St John Karp 0247f8b57e Favour redirects over re-using the same paths
I was re-using the same paths for a bunch of stuff in order to
minimise redirects (POSTing new statuses to the timeline, or performing
actions on a status), but then this breaks the behaviour of the
browser's refresh button. I've moved all those actions to their
own paths, which helps break up the code, makes the URLs more
semantic, and lets you use the refresh button without accidentally
performing an action.

This is at the expense of an additional HTTP request, but I've
tried to minimise the cost by passing through the status from the
previous action so we don't have to requery for it on the server
side.
2018-08-26 14:34:01 -07:00
St John Karp 96cb4ffcc6 Implement status context page
Implemented a new page that shows a status context, though I'm
calling it a "thread" in the UI because I think that makes more
sense for users. Also moved the action element from the notification
into the event info component itself because I also want to use it
to indicate when a status is a reply.
2018-08-26 13:37:55 -07:00
St John Karp d8c1ed6884 Implement notifications page
Created a new page that displays notifications and added it to the
global nav. Abstracted out the pagination methods from the timeline
controller and put it in a helper class. Abstracted out the event info
(account, timestamp, etc.) into its own component.
2018-08-25 17:29:36 -07:00
St John Karp 7e617469cc Style videos so they don't overflow their containers
Set a max width, same as with image attachments.
2018-08-25 15:50:23 -07:00
St John Karp 197d31da35 Add some hr elements for formatting in text-only browsers
Added some hr elements to separate statuses when viewing in
a text-only browser.
2018-08-25 15:48:58 -07:00
St John Karp b76a68cd7c Support showing video attachments
Added support for showing video and gifv attachment types.
2018-08-25 10:36:46 -07:00
St John Karp efcdf76c3e Prefix mentions with an @
Prefix mentions with an @ so they get parsed properly instead
of showing up as plain text.
2018-08-25 10:22:46 -07:00
St John Karp cfaf2009ab Display image attachments as previews
Display image attachments as previews with a link to the original.
2018-08-25 10:16:38 -07:00
St John Karp a134a6e383 Maybe a slightly more obvious retoot icon
Replaced the bi-directional arrows with a circular arrow.
2018-08-25 10:06:08 -07:00
St John Karp 48a758d45e Don't strip out content warnings in replies
By default include the original spoiler text in replies
so as not to accidentally strip out content warnings.
2018-08-25 10:01:44 -07:00
St John Karp 7d68f883ea Prepopulate mentions in replies
When posting a reply, pre-populate the account to which you're
replying, plus any mentions.
2018-08-25 09:53:40 -07:00
St John Karp 79800b3cc9 Only permit cookies to be sent over secure connections
Updated the session config to enforce secure cookies.
2018-08-19 15:34:46 -07:00