+2
-2
src/oauth.py
+2
-2
src/oauth.py
···
23
23
@oauth.get("/start")
24
24
def oauth_start():
25
25
# Identity
26
-
username = request.args.get("username")
26
+
username = request.args.get("username") or request.args.get("authserver")
27
27
if not username:
28
-
return "missing ?username", 400
28
+
return redirect(url_for("page_login"), 303)
29
29
30
30
if is_valid_handle(username) or is_valid_did(username):
31
31
login_hint = username
+2
-1
src/static/style.css
+2
-1
src/static/style.css
···
138
138
color: var(--color-text);
139
139
font: inherit;
140
140
font-size: 14px;
141
-
padding: 0.25em;
141
+
padding: 0.5em;
142
142
width: 100%;
143
143
}
144
144
···
146
146
input[type="submit"] {
147
147
font-weight: 600;
148
148
cursor: pointer;
149
+
padding: 0.25em;
149
150
}
150
151
151
152
input[type="submit"]:last-child {
+6
-2
src/templates/login.html
+6
-2
src/templates/login.html
···
15
15
</header>
16
16
<form action="{{ url_for('auth_login') }}" method="post">
17
17
<label>
18
-
<span>handle</span>
19
-
<input type="text" name="username" required />
18
+
<span>Handle</span>
19
+
<input type="text" name="username" placeholder="username.example.com" required />
20
20
</label>
21
+
<span class="caption">
22
+
Use your AT Protocol handle to log in.
23
+
If you're unsure you can <a href="{{ url_for('oauth.oauth_start', authserver='https://bsky.social') }}">log in with Bluesky</a>.
24
+
</span>
21
25
<input type="submit" value="log in" />
22
26
</form>
23
27
<footer>