Commit Graph

57 Commits

Author SHA1 Message Date
Matt Baer e3323d11c8
Merge pull request #777 from writefreely/reset-password
Support resetting password via email

Closes T508
2023-10-03 12:03:08 -04:00
Matt Baer 8207a25fa9 Tweak style of "Forgot" link on login page 2023-10-03 11:39:41 -04:00
Matt Baer 8f02449ee8 Show friendly message on /reset when password-based login is disabled 2023-10-03 11:19:47 -04:00
Matt Baer 1e37f60d50 Hide "Reset?" link on login page when email disabled 2023-10-03 11:16:11 -04:00
Matt Baer c18987705c Display friendly message on /reset if email is disabled 2023-10-03 11:15:33 -04:00
Matt Baer c1609cdb90
Merge pull request #658 from jsoref/spelling
Spelling
2023-09-26 11:50:19 -04:00
Matt Baer f404f7b928 Support resetting password via email
This adds a self-serve password reset page. Users can enter their username
and receive an email with a link that will let them create a new password.
If they've never set a password, it will send them a one-time login link
(building on #776) that will then take them to their Account Settings page.
If they don't have an email associated with their account, they'll be
instructed to contact the admin, so they can manually reset the password.

Includes changes to the stylesheet and database, so run:

    make ui
    writefreely db migrate

Closes T508
2023-09-25 18:48:14 -04:00
Matt Baer d48262a6df Add a customizable Contact page 2023-09-22 12:37:15 -04:00
Matt Baer 83f230ddaf Instruct users to contact admin, not WF devevelopers on 500 page
Misconfigured or broken servers has directed people to the wrong place.

Fixes #684
2023-09-22 12:25:19 -04:00
Josh Soref 8834253502 spelling: into
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2023-03-05 02:24:29 -05:00
Eli Mellen 27f68ef0cf
Update 404-general.tmpl
Remove gaslighting error message and replace with one that is a wee bit more respectful to the human using the software.
2021-12-25 14:03:40 -05:00
Matt Baer 484d2736ce Update repo URL to writefreely org
From the writeas org on GitHub.
2021-04-06 17:24:07 -04:00
Matt Baer 00cceca104 Update signup-via-invite page
This updates signup.tmpl to include all supported OAuth methods and respect the new `DisablePasswordAuth` config value.
2020-08-19 13:35:21 -04:00
Matt Baer 4db2cb8986 Templatize OAuth buttons across signup and login pages
This moves fields into the `OAuthButtons` struct and puts the buttons into templates/includes/oauth.tmpl.
2020-08-19 13:31:07 -04:00
Matt Baer 04d404e61f Move text OAuth button styles to login.less 2020-08-19 12:38:44 -04:00
prichier ab285644a0 Fix: signup methods mutually exclusive 2020-08-16 20:42:55 +02:00
Pascal Richier d3f1e40010
Merge branch 'develop' into feature/generic-oauth 2020-08-16 19:58:01 +02:00
prichier f6aa99e591 Add disable_password_auth option 2020-06-14 00:27:25 +02:00
Keturah Dola-Borg cd01a4459d Fix login page variable name
Signed-off-by: prichier <pascoualito@gmail.com>
2020-05-31 00:29:40 +02:00
Keturah Dola-Borg cfd2165442 Add HTML for generic oauth login button
Signed-off-by: prichier <pascoualito@gmail.com>
2020-05-31 00:19:58 +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 308b1a7282 Remove "login" verbiage on OAuth signup page
Change it to reflect that this is the final step in the signup flow.
2020-04-22 09:27:19 -04:00
Matt Baer cf3d5588c2 Move unique OAuth username creation to client-side
Now, on OAuth signup form, we create a unique username with random appended string only if there's a conflict.
Previously, this was always happening during the Slack OAuth flow. This has the benefit of preventing username collisions for all OAuth providers.
2020-04-22 09:17:25 -04:00
Matt Baer ca4a576c31 Support OAuth registration with invite code
This adds any OAuth login buttons to the invite signup page, stores the invite code for the flow duration, and associates the new user with it once successfully registered.

It enables invite-only instances with OAuth-based registration.
2020-04-20 18:18:23 -04:00
gytisrepecka c798a44f69
Added Gitea OAuth login and account management. 2020-04-03 13:26:59 +03:00
Matt Baer dbd7eff7ea
Merge pull request #284 from writeas/high-load-error-page
Show 503 page on blogs under high load
2020-03-27 11:52:28 -04:00
Matt Baer c3400242f0
Merge pull request #274 from writeas/private-instance-improvements
Private instance cleanup
2020-03-27 09:05:45 -04:00
Matt Baer 0285a9b0bd Show 503 page on collections under high load
This acknowledges "too many connections" and "max user connections"
errors in MySQL and propagates the error up the chain so we can notify
the user and return the correct HTTP code.
2020-03-18 16:14:05 -04:00
Matt Baer 79a968f425 Fix login.tmpl rendering
This passes in the correct field named GitlabDisplayName.
2020-03-18 16:05:26 -04:00
Kyle Robbertze 26b6ed5f4f simplify gitlab oauth config 2020-03-16 15:11:03 +02:00
Kyle Robbertze c292512b9d add Gitlab OAuth 2020-03-12 10:50:55 +02:00
Matt Baer 2db6c33a41 Consolidate /signup page link logic
This moves logic for determining whether or not to show a "Sign up" page
on /signup (i.e. because the `/` route shows another, non-signup page)
into the AppCfg.SignupPath() method. It also changes various signup
links to use this value.
2020-03-02 16:34:44 -06:00
Matt Baer 803dd78df5 Remove Password field from OAuth signup page
This removes a bit of friction.

Ref T715 T712
2020-01-16 14:30:09 -05:00
Matt Baer 130c9eb747 Change Blog Title to Display Name in OAuth signup
Ref T712
2020-01-16 13:58:14 -05:00
Matt Baer 4d5c89e7ef Fix false login state on OAuth signup page
Having a `Username` field populated in the page data tells the base
template to display navigation that only a logged in user should see. So
this renames the field to `LoginUsername`, similar to our login.tmpl
page.

Ref T712
2020-01-16 13:37:44 -05:00
Matt Baer 33a6129d1e Add async username check on OAuth signup form
This checks the user's inputted username as they type it, and prevents
form submission if the name is taken.

Ref T712
2020-01-16 13:18:23 -05:00
Nick Gerakines 8ddfce4f19 oauth signup page changes per PR feedback. T712 2020-01-07 22:13:29 -05:00
Matt Baer 77e0126808 Move and restyle OAuth login links
- Move them above local login form
- Restyle as side-by-side buttons

Ref T712
2020-01-05 11:00:58 -05:00
Nick Gerakines 6429d495a2 Implemented /oauth/signup. T712 2020-01-03 13:50:21 -05:00
Nick Gerakines b985292b18 First take at template updates. T712 2020-01-02 15:33:39 -05:00
Matt Baer 4419632f83 Fix false login state on failed login
Previously, a failed login would change the site-wide navigation so that
it looked like the user was logged in, even though they weren't. This
fixes that.
2019-09-03 17:56:27 -04:00
Matt Baer 73ec3e3016 Support toning down WriteFreely promotion
This adds a new `wf_modesty` config option that removes the copious
mentions of WriteFreely in places like the About page and site
footers.

WriteFreely remains boastful and bumptious by default; but enabling
the modesty option will tone it down and likely lead to less confusion
among average users.

Ref T676
2019-07-31 22:53:10 -04:00
Matt Baer a72ce2ef29 Make landing page dynamic
This enables admins to customize their landing / home page via the Admin
dashboard -- including the text at the top of the page and the section
below it. It keeps the current default text, falling back to it if the
user hasn't overwritten it.

Ref T565
2019-06-27 17:06:37 -04:00
Matt Baer aedb05080c Support ?landing=1 to always show landing page
This supports admins previewing changes to the landing page.

Ref T565
2019-06-27 16:38:24 -04:00
Matt Baer 238a913ce3 Make WriteFreely spacing consistent 2019-04-11 21:33:33 -04:00
Matt Baer 9cb0f80921 Support changing instance page titles
Now admins can choose a title for their About and Privacy pages; now
editable through the instance page editor.

This adds `title` and `content_type` fields to the `appcontent` table,
requiring a migration by running `writefreely --migrate`

The content_type field specifies that items we're currently storing in
this table are all "page"s; queries for fetching these have been updated
to filter for this type. In the future, this field will be used to
indicate when an item is a stylesheet (ref T563) or other supported
type.

Ref T566
2019-04-11 13:56:07 -04:00
Matt Baer 70e823d6ab Support user invites
This includes:

- A new `user_invites` config value that determines who can generate
  invite links
- A new page for generating invite links, with new user navigation link
- A new /invite/ path that allows anyone to sign up via unique invite
  link, even if registrations are closed
- Tracking who (of registered users) has been invited by whom

It requires an updated database with `writefreely --migrate` in order to
work.

This closes T556
2019-01-18 00:05:50 -05:00
Matt Baer cb2b30b379 Show stats on About page if public_stats enabled
Previously, it would only show the stats if federation was enabled.
2018-12-03 18:49:12 -05:00
Matt Baer 77e79acd06 Include About/Privacy page content in page description 2018-11-21 15:04:47 -05:00
Matt Baer be2c7ef86b Show instance stats on About page
This also moves the stats database logic out of nodeinfo.go and into
database.go.
2018-11-21 14:08:47 -05:00