Profile tweaks
Build LinkLog Development Image / development-image (push) Successful in 11s

This commit is contained in:
2026-09-07 15:04:05 +02:00
parent 17c72f89bf
commit 24c4753093
6 changed files with 53 additions and 12 deletions
+1 -1
View File
@@ -10,7 +10,7 @@ APP_HEALTHCHECK_RETRIES=3
LINKLOG_APP_NAME=LinkLog LINKLOG_APP_NAME=LinkLog
LINKLOG_SECRET_KEY=replace-with-a-long-random-secret LINKLOG_SECRET_KEY=replace-with-a-long-random-secret
LINKLOG_DATA_ENCRYPTION_KEY=generate-with-python-cryptography-fernet-key LINKLOG_DATA_ENCRYPTION_KEY=generate-with-python-cryptography-fernet-key
LINKLOG_TOKEN_EXPIRY_MINUTES=15 LINKLOG_TOKEN_EXPIRY_MINUTES=300
LINKLOG_REFRESH_TOKEN_EXPIRY_DAYS=30 LINKLOG_REFRESH_TOKEN_EXPIRY_DAYS=30
LINKLOG_PUBLIC_URL=linklog.example.com LINKLOG_PUBLIC_URL=linklog.example.com
LINKLOG_SMTP_HOST= LINKLOG_SMTP_HOST=
+8
View File
@@ -1,4 +1,11 @@
# Changelog # Changelog
## Version v0.3.1
### Features
### Fixed
* Made the feed profile summary visually distinct with a contrasting background and slightly smaller text
### Modification
* Made the feed profile summary collapsible under a subdued `:profile` title
## Version v0.3.0 ## Version v0.3.0
### Features ### Features
* Implemented toolbar search functionality, using Google-like syntax (implicit AND, quoted phrases, `OR`, `-` exclusions, and the `site:` operator) * Implemented toolbar search functionality, using Google-like syntax (implicit AND, quoted phrases, `OR`, `-` exclusions, and the `site:` operator)
@@ -17,6 +24,7 @@
## Version v0.2.0 ## Version v0.2.0
### Features ### Features
* Users can edit or delete labels created by themselves on the labels page * Users can edit or delete labels created by themselves on the labels page
+6
View File
@@ -1616,4 +1616,10 @@ Implement the same functionality in the firefox plugin
### Assistant outcome ### Assistant outcome
Added the same live character-count warning to the Firefox extension popup: it fetches `/api/public/config` for the limit and the user's `/api/user/plugins/mastodon` post prefix, estimates the assembled Mastodon post length the same way as the New Entry page and backend plugin, and shows a localized `used/limit characters` counter (with an over-limit warning message) that updates on every relevant input and tag toggle. Added the `characterCount`/`characterCountOverLimit` translations to all five locale files (en-US, de, es, fr, nl) and verified all locale JSON files parse and `popup.js` passes a Node syntax check. Added the same live character-count warning to the Firefox extension popup: it fetches `/api/public/config` for the limit and the user's `/api/user/plugins/mastodon` post prefix, estimates the assembled Mastodon post length the same way as the New Entry page and backend plugin, and shows a localized `used/limit characters` counter (with an over-limit warning message) that updates on every relevant input and tag toggle. Added the `characterCount`/`characterCountOverLimit` translations to all five locale files (en-US, de, es, fr, nl) and verified all locale JSON files parse and `popup.js` passes a Node syntax check.
### User
Make those colors less outstanding, this should not stand out. In fact, give the box a title :profile and make it collapsable
### Assistant outcome
Made the feed profile summary use the normal subdued link-item colors and converted it to a native collapsible `<details>` section titled `:profile`. Template and stylesheet diagnostics passed.
# Chat Log # Chat Log
+8
View File
@@ -298,6 +298,10 @@ Where date format is like: 2026 August 29 - 21:10
## 2026-09-05 ## 2026-09-05
254. In firefox the search input field is wider (at 180px) then labe search control (at 135.5px) 254. In firefox the search input field is wider (at 180px) then labe search control (at 135.5px)
## 2026-09-07
255. Change bg color and slightly decrease the font for 'html body main.container section.link-item.profile-summary' so that it stands out
255. In the toolbar switch the search and tag filter's location 255. In the toolbar switch the search and tag filter's location
## 2026-09-06 ## 2026-09-06
@@ -316,6 +320,10 @@ If the user uses the filters and/or search in the toolbox then those should limi
261. In the new-entry form, provide a warning when the total ammount of characters is over LINKLOG_MAX_POST_CHARACTERS=500 (also indicat the number of characters used/500 count). This is to prevent Mastodon posts from failing - so all characters should be counted. 261. In the new-entry form, provide a warning when the total ammount of characters is over LINKLOG_MAX_POST_CHARACTERS=500 (also indicat the number of characters used/500 count). This is to prevent Mastodon posts from failing - so all characters should be counted.
262. Implement the same functionality in the firefox plugin 262. Implement the same functionality in the firefox plugin
## 2026-09-07
Make those colors less outstanding, this should not stand out. In fact, give the box a title :profile and make it collapsable
## Future entries ## Future entries
Append each new user prompt here with its date and preserve the chronological order. Append each new user prompt here with its date and preserve the chronological order.
+16
View File
@@ -946,6 +946,21 @@ button:disabled {
box-shadow: var(--shadow); box-shadow: var(--shadow);
} }
.profile-summary summary {
color: var(--subtext);
cursor: pointer;
font-size: 0.9rem;
font-weight: 600;
}
.profile-summary[open] summary {
margin-bottom: 8px;
}
.profile-summary-content {
font-size: 0.95rem;
}
.about-content { .about-content {
display: grid; display: grid;
gap: 14px; gap: 14px;
@@ -1012,6 +1027,7 @@ button:disabled {
.profile-summary p { .profile-summary p {
margin: 12px 0 0; margin: 12px 0 0;
color: var(--subtext); color: var(--subtext);
font-size: 0.95rem;
line-height: 1.65; line-height: 1.65;
} }
+14 -11
View File
@@ -73,19 +73,22 @@
<main class="container"> <main class="container">
{% if profile %} {% if profile %}
<section class="link-item profile-summary"> <details class="link-item profile-summary">
<div class="link-header"> <summary>Profile</summary>
<div class="avatar"> <div class="profile-summary-content">
{% if profile.avatar_url %} <div class="link-header">
<img src="{{ profile.avatar_url }}" alt="{{ profile.username }} avatar" /> <div class="avatar">
{% else %} {% if profile.avatar_url %}
{{ profile.username[:1].upper() }} <img src="{{ profile.avatar_url }}" alt="{{ profile.username }} avatar" />
{% endif %} {% else %}
{{ profile.username[:1].upper() }}
{% endif %}
</div>
<div class="user-name">{{ profile.username }}</div>
</div> </div>
<div class="user-name">{{ profile.username }}</div> <p>{{ profile.bio or 'No profile information provided.' }}</p>
</div> </div>
<p>{{ profile.bio or 'No profile information provided.' }}</p> </details>
</section>
{% endif %} {% endif %}
<section id="feed" class="feed" aria-live="polite"></section> <section id="feed" class="feed" aria-live="polite"></section>
<nav id="pagination" class="pagination" aria-label="Feed pages"></nav> <nav id="pagination" class="pagination" aria-label="Feed pages"></nav>