Commit Graph

194 Commits

Author SHA1 Message Date
Matt Baer 9d0ba2bed4 Add contextual blog menu 2020-08-19 17:09:47 -04:00
Matt Baer 0ed9c9c746 Add inter-blog navigation
This makes it easier to navigate between different blog sections: Customize, Stats, View.
2020-08-19 16:24:37 -04:00
Matt Baer 455e50c9a8 Use branded OAuth buttons
This includes the platform mark with each login button and uses
brand colors. It also uses the same style on the Account Settings
page. And it wraps buttons on login / signup pages.
2020-08-19 15:14:29 -04:00
Matt Baer a78b36b871 Fix whitespace in user/settings.tmpl 2020-08-19 14:55:16 -04:00
Pascal Richier d3f1e40010
Merge branch 'develop' into feature/generic-oauth 2020-08-16 19:58:01 +02:00
Matt Baer b2382b5422
Merge pull request #293 from gytisrepecka/oauth-gitea
Added Gitea OAuth login and account management.
2020-08-13 10:41:29 -04:00
Matt Baer fd3a6399b3
Merge pull request #355 from writeas/accessible-dropdowns
Add menu hover delay
2020-08-12 13:51:08 -04:00
Matt Baer 09e70e07f8 Support loading more draft posts
This adds a "load more" button to the bottom of the draft posts page,
which calls /api/me/posts with new parameters and the current page
number. It then populates the page accordingly.

Ref T696 - load anon. posts with ?anonymous=1&page=1
Ref T401 - completes UI for post loading
2020-07-30 16:46:01 -04:00
Matt Baer fee44e7c8d Add menu hover delay on user pages + editor 2020-07-30 11:26:29 -04:00
Matt Baer a25664bb97 Support post signatures
This enables users to add a signature to all blog posts, and update it from a single location.

Requires database migration with: writefreely db migrate

Closes T582
2020-06-23 16:24:45 -04:00
prichier f6aa99e591 Add disable_password_auth option 2020-06-14 00:27:25 +02:00
prichier 724ab34006 Fix: option name from allow_logout to allow_disconnect 2020-06-06 23:52:26 +02:00
prichier fe7ff38bd8 Manage generic Oauth buttons on Account Settings
Add generic Oauth allow_logout option
2020-05-31 04:09:14 +02:00
gytisrepecka 8675eb0f95
Merge develop branch into oauth-gitea and resolve pages/login.tmpl conflict. 2020-04-23 14:24:17 +03:00
Matt Baer 37ccf69d81 Increase App Settings checkbox and select sizes 2020-04-21 13:01:08 -04:00
Matt Baer 0127e38ed0 Reorder App Settings page and improve descriptions 2020-04-21 13:00:36 -04:00
gytisrepecka c798a44f69
Added Gitea OAuth login and account management. 2020-04-03 13:26:59 +03:00
Matt Baer 491a1148ee Restyle OAuth account management section
- Break up linked / to-link sections
- Add logos for all services
- Lay out buttons horizontally
- Tweak the copy

Ref T713
2020-03-24 10:41:53 -04:00
Matt Baer 5d01f49ce9 Move /me/oauth/remove endpoint to /api/me/oauth/remove 2020-03-24 10:33:45 -04:00
Matt Baer b25e80bb1b Show configured GitLab name on Account page
This includes the chosen GitLab display name in the button text.
2020-03-24 09:07:27 -04:00
Nick Gerakines 048e8a5e13
Added error messaging when user attempts to attach a slack account to a user that already has the slack account attached. Added GitLab to settings page as oauth option. 2020-03-20 18:07:35 -04:00
Matt Baer cf4f08b264 Merge branch 'develop' into T713-oauth-account-management 2020-03-19 12:02:33 -04:00
Matt Baer 4595d480ae
Merge pull request #264 from writeas/admin-dashboard-redesign
Admin dashboard redesign

Closes T694
2020-03-01 13:59:50 -05:00
Matt Baer 46dbb10433 Make Admin Settings page more user-friendly
- Add a description to each config item
- Change item names to make more sense

Ref T694
2020-02-25 14:28:34 -05:00
Matt Baer 8933076296 Add invite button to admin Users page header
Ref T694
2020-02-25 13:06:55 -05:00
Matt Baer 37b7755c08 Tell admin that automated check failed when necessary
This keeps track when automated update check fails, and displays a
relevant message to the admin on /admin/updates

Ref T572
2020-02-15 12:56:33 -05:00
Matt Baer c2ece926e0 Show update notification in admin nav bar
When a WriteFreely update is available, indicate this on the "Updates"
navigation item

Ref T572
2020-02-15 12:53:47 -05:00
Matt Baer 389dc8b9db Show functional Updates page when checks are disabled
Ref T572
2020-02-15 12:19:06 -05:00
Matt Baer a06bb457de Change copy and design on WF Updates page
- Tweak the copy
- Include link to download latest release
- Change the version status design a bit
- Restyle some text
2020-02-15 11:59:47 -05:00
Matt Baer 48ca695c46 Show last update check time in local timezone 2020-02-15 11:57:55 -05:00
Matt Baer 68e992a55e Fix bad #status anchor in view-user.tmpl 2020-02-15 11:28:06 -05:00
Matt Baer 04a76c4120
Merge pull request #262 from writeas/consistent-backend-pages
Consistent backend page design
2020-02-15 09:47:38 -05:00
Matt Baer 602cd80020 Fix mismatched span in user/admin/users.tmpl 2020-02-14 16:26:13 -05:00
Matt Baer 0d79057bae Rename ReleaseURL() to ReleaseNotesURL() 2020-02-14 16:13:54 -05:00
Matt Baer 84ab41697b Merge branch 'develop' into admin-dashboard-redesign 2020-02-14 14:50:23 -05:00
Matt Baer 8364dce398 Merge branch 'develop' into T572-check-updates 2020-02-14 14:27:22 -05:00
Matt Baer b58464addb Optionally hide Monitor page in Admin nav
This adds a new config option that signifies the admin doesn't need to
see deeply technical things, like application resource usage. In the
[app] section, set forest = true to enable this.

Ref T694
2020-02-14 14:12:28 -05:00
Matt Baer 92da069ce4 Move admin dashboard sections into subpages
This moves app config to a "Settings" page and the application monitor
to a "Monitor" page. It also reworks the admin navigation bar a bit and
adds some instance stats on the dashboard.

Ref T694
2020-02-14 13:55:24 -05:00
Matt Baer 5d754176e0 Use h1 consistently on user pages
instead of h2s. This also removes odd one-time class usages on Account
Settings page.
2020-02-10 15:08:14 -05:00
Matt Baer f846cada4b Merge branch 'develop' into T713-oauth-account-management 2020-02-09 14:05:12 -05:00
Matt Baer f406f894c5 Merge branch 'develop' into T319-user-delete-acct 2020-02-09 11:53:24 -05:00
Matt Baer d6c0026644 Merge branch 'develop' into T319-admin-delete-acct 2020-02-09 11:51:39 -05:00
Matt Baer 7023b74d12 Update calls and vars for Invites and elsewhere
Ref T661
2020-02-09 11:24:48 -05:00
Matt Baer f70c1dfaa5 Merge branch 'develop' into rename-account-suspend 2020-02-09 11:14:51 -05:00
Matt Baer 468bbf2187 Merge branch 'develop' into rename-account-suspend 2020-02-09 11:14:14 -05:00
Matt Baer 252d59d3f7
Merge pull request #208 from writeas/silence-invites
add silenced warning on invites page

Ref T661
2020-02-09 11:02:42 -05:00
Matt Baer 8cfffb5650 Disable form items on Invite page when silenced
Ref T661
2020-02-09 10:51:34 -05:00
Matt Baer 6d3803bfe8
Merge pull request #241 from writeas/post-time-fix
fixes imported post times
2020-02-09 10:23:15 -05:00
Matt Baer 30032e74a0 Add helpful text on Drafts page 2020-01-20 15:25:37 -05:00
Matt Baer b336e95e12 Render HTML entities in Drafts list
Previously, we'd show the raw HTML entities in the summaries of Draft
posts, instead of rendering them. This fixes that.
2020-01-20 15:20:45 -05:00
Nick Gerakines 5d834c1cd2 Minor code cleanup on settings page to improve oauth account management UI. T713 2020-01-15 13:37:57 -05:00
Nick Gerakines c0317b4e93 Implemented oauth attach functionality, oauth detach functionality, and required data migration. T713 2020-01-15 13:16:59 -05:00
Rob Loranger 571460f08d
move timezone correction to client side 2020-01-15 09:04:38 -08:00
Rob Loranger 0766e6cb36
fixes imported post times
changes the client side to round the unix time to avoid floats

alters the time to match the client time zone on the server side
2020-01-14 10:44:56 -08:00
Matt Baer 3e97625cca Fix Unix timestamps on client during import
File API gives timestamp in milliseconds, not seconds, so this converts
it on the client-side and sends it the correct time to the server.

Ref T609
2020-01-14 12:26:02 -05:00
Rob Loranger aae2f28bb6
pass original file modified date for imports 2020-01-14 08:59:30 -08:00
Matt Baer 5b7f37aed8 Restyle Import page
- Changes Import link location in dropdown menu
- Makes design consistent with Invite People page (and extracts some
  common CSS into core.less)
- Selects the user's first blog by default in the dropdown
- Changes the copy a bit

Ref T609
2020-01-09 11:16:26 -05:00
Matt Baer af6e5dea3a Merge branch 'develop' into import-text 2019-11-26 17:41:29 -05:00
Matt Baer 3d49baf39a Improve non-chorus site-wide header
This adds a Reader tab when necessary while logged in, and generally
keeps the navigation consistent for logged-in users, particularly in
regard to the Reader:

- Now includes user buttons and dropdown
- Makes header on user pages consistent with Reader page
2019-11-12 16:49:38 +09:00
Rob Loranger 7e014ca659
Rename Suspend status to Silence
This changes all variables and functions from using Suspend{ed} to using
Silence{d} as well as documentation, errors and logging.
2019-11-11 15:25:19 -08:00
Rob Loranger 9b69de166f
add silenced warning on invites page 2019-11-11 14:25:34 -08:00
Matt Baer 53586d9cb8 Merge branch 'develop' into T661-disable-accounts 2019-11-12 01:46:37 +09:00
Matt Baer 7f96e8c384 Rename UserSuspended to UserSilenced
Some of the work needed to have the backend match user-facing wording.

Ref T661
2019-11-12 00:41:25 +09:00
Matt Baer c3f76a3ab8 Change "suspend" to "silence" where user-facing
This puts the verbiage more in line with what the feature does, and
leaves room for other moderation controls in the future.

NOTE: this includes no backend refactoring, which may be confusing. We
should rename things to fit ASAP.

Ref T661
2019-11-12 00:22:33 +09:00
Matt Baer a9b5bb2f6b Fix reset user's email address display
Previously, this had bad template logic and showed the wrong email address.

Ref T695
2019-11-11 21:40:49 +09:00
Matt Baer d5dd007ff7 Change Reset Password button style
Ref T695
2019-11-11 21:37:02 +09:00
Matt Baer 3e8d1014d9 Tweak admin reset confirmation copy
Also updates some whitespace in the JS.

Ref T695
2019-11-11 18:04:20 +09:00
Matt Baer 422c16f39a Tweak admin user pass reset success copy
This also adjusts the style and includes the user's password, so the
admin can easily notify them.

Ref T695
2019-11-11 18:03:19 +09:00
Matt Baer 6d4ec0b17d Remove extra OwnUserPage field
Move logic into template, rather than add another field to the page.

Ref T695
2019-11-11 16:06:03 +09:00
Matt Baer 6e09fcb9e2 Change password reset endpoint to /admin/user/{Username}/passphrase
Ref T695
2019-11-11 16:02:22 +09:00
Matt Baer 38f3eec8e0 Merge branch 'develop' into T572-check-updates 2019-11-11 15:45:47 +09:00
Matt Baer 2c2ee0c00c Tweak "suspended" notification copy 2019-11-11 15:16:04 +09:00
Matt Baer 280c32afdc Confirm suspension before submitting the form
This also includes a bit of explanation about what suspending a user
actually does.

Ref T661
2019-11-07 16:59:02 +09:00
Matt Baer c9f7219831 Move user status in list out of <a>
The link here is a little redundant, and might make people think that it
actually changes the status by clicking on it.
2019-11-07 16:49:52 +09:00
Matt Baer da7dcfee6a Move admin template IsSuspended logic into method
This adds a User.IsSuspended() method and uses it when displaying the
user's status on admin pages, instead of doing a magic number check.
This should also help in the future, in case this logic ever changes.

Ref T661
2019-11-07 14:07:00 +09:00
Rob Loranger fc553d277f
add admin user account deletion
this adds a section to the admin user view to delete the account and a
handler to process the request.
2019-11-05 12:22:58 -08:00
Rob Loranger 482e632ca9
add user account delete UI 2019-11-05 12:22:27 -08:00
Rob Loranger f85f0751a3
address PR comments
- update error messages to be correct
- move suspended message into template and include for other pages
- check suspended status on all relevant pages and show message if
logged in user is suspended.
- fix possible nil pointer error
- remove changes to db schema files
- add version comment to migration
- add UserStatus type with UserActive and UserSuspended
- change database table to use status column instead of suspended
- update toggle suspended handler to be toggle status in prep for
possible future inclusion of further user statuses
2019-10-25 12:04:24 -07:00
Matt Baer 9873fc443f Merge branch 'develop' into T661-disable-accounts 2019-10-24 13:22:26 -04:00
Rob Loranger aa9efc7b37
allow admin to reset user passwords
this adds a new button when viewing a user as an admin, that will
generate and store a new password for the user
2019-10-03 13:53:04 -07:00
Matt Baer c6564b3d16 Shorten invite-instructions.tmpl filename 2019-09-23 10:31:38 -04:00
Matt Baer ddce177784 Fix invite input box size in non-Firefox browsers
font-size-adjust is still a flag-enabled feature in Chrome 77, and
doesn't have widespread support across browsers. So instead this uses
font-size to make the text large enough.

Ref T690
2019-09-23 10:21:03 -04:00
Matt Baer 26a4f48e8b Add expiration information to invite help
This uses the Invite fetched from the database to explain a bit more
about how the invite URL expires. It also reduces some space around the
input box.

Ref T690
2019-09-23 10:06:12 -04:00
Matt Baer f01b439ff5 Tweak invite page title and intro
Ref T690
2019-09-23 10:02:36 -04:00
Matt Baer 7e9e3cb7eb Show status on logged-in expired invite links
Ref T690
2019-09-23 09:45:36 -04:00
Rob Loranger d954b7c8e3
add user invite instructions
this adds a new page with instructions for sharing user invites

if a user clicks the link for one of their own invite codes they are
directed to a page with clear instructions for it's use.

if a user clicks another users link they are redirectec to their account
settings witha flash telling them they do not need to register.
2019-09-13 10:58:17 -07:00
Matt Baer c7a90d2ace Fix blog post links when `chorus` enabled
This ensures the "new post" link under each blog on the user Blogs page
goes to /new instead of /.

Ref T681
2019-09-10 22:07:14 +02:00
Rob Loranger eae4097677
add update checks
includes cache of latest version and page to view if updates are
available with a link to the latest update's release notes and a link to
check for the latest update now, refreshing the cache manually.
2019-08-29 15:30:27 -07:00
Rob Loranger 77f7b4a522
Add account suspension features
This renders all requests for that user's posts, collections and related
ActivityPub endpoints with 404 responses.

While suspended, users may not create or edit posts or collections.

User status is listed in the admin user page

Admin view of user details shows status and now has a button to activate
or suspend a user.
2019-08-29 09:09:11 -07:00
Rob Loranger 2fa2086654
newline in import.tmpl 2019-08-26 15:04:00 -07:00
Rob Loranger 7fb3c4cafe
allow markdown extensions in import form 2019-08-21 15:42:48 -07:00
Rob Loranger 6c5d89ac86
move import post handler under /api
handler for post request to import is now under /api/me/import
form target updated

also allow all plaintext files in form
2019-08-19 09:05:52 -07:00
Rob Loranger 0ca198c715
include nice alert message on success
different template action for partial or complete import success
2019-08-17 16:18:40 -07:00
Rob Loranger ee4fe2f4ad
add basic text file imports
this adds basic support for importing files as blog posts.

.txt and .md are supported at this time and the
collection is selectable, defaulting to draft.

if a collection is specified the post is federated.
2019-08-16 14:27:24 -07:00
Matt Baer 55808233fd Fix logic for showing sign up link
This prevents the link from showing when an instance lands on the sign
up page anyway.

Ref T681
2019-08-14 23:25:02 -04:00
Matt Baer 047ad0323b Don't show user pages in nav when unauth'd
Ref T681 T680
2019-08-09 14:58:43 -04:00
Matt Baer fda2929aed Show New Post button when Chorus, not SimpleNav
Ref T681
2019-08-09 13:59:55 -04:00
Matt Baer df56060f99 Add DisableDrafts option and adjust nav
This shows Drafts in the SimpleNav menu, when both enabled. It also
hides Drafts in the non-SimpleNav menu when disabled.

Ref T679
2019-08-09 13:53:41 -04:00
Matt Baer 9dc15f569c Move About nav link next to Home
Ref T681
2019-08-09 13:52:07 -04:00
Matt Baer da423fa1bc Move Reader to Home link in nav when chorus
Also, refactor navigation bar template logic to be simpler and easier to
understand.

Ref T681
2019-08-09 13:45:19 -04:00