Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
33 commits
Select commit Hold shift + click to select a range
a57b8af
Automatically check HTML is valid
artragis Dec 27, 2025
128cd5e
Fix invalid html in some forum pages
artragis Dec 27, 2025
9926182
The real name is "tidy"
artragis Dec 28, 2025
b4e0c4b
Properly use django templatetags to avoid & in url
artragis Dec 28, 2025
c45e0e9
Use a valid button type
artragis Dec 28, 2025
2c32136
Handle streaming response and follow param
artragis Dec 28, 2025
0561808
Improve html of content creation links
artragis Dec 28, 2025
c9468ec
Ignore table attributes that are generated by ZMD in HTML
artragis Dec 28, 2025
48e75b9
Fix some attributes in galleries
artragis Dec 28, 2025
0946ab0
Fix some attributes in content
artragis Dec 28, 2025
8826345
remove div in h2 for edit/move/delete
artragis Dec 29, 2025
e368d1e
remove div in h2 for edit/move/delete
artragis Dec 29, 2025
0223817
Improve HTML & CSS for content, use JSONREsponse when necessary
artragis Dec 29, 2025
583dabf
Centralize bot creation to avoid empty profiles
artragis Jan 2, 2026
6d6351f
Use auto-id to avoid id duplication
artragis Jan 2, 2026
f50f470
Fix image factory bug
artragis Jan 2, 2026
8ab73ff
add trim filter to avoid white spaces and new lines in urls
artragis Jan 2, 2026
0cfc185
Better css for tables
artragis Jan 2, 2026
4c1e064
use profile for external user
artragis Jan 2, 2026
2a07114
Fix test factory
artragis Jan 2, 2026
540807c
Ignore some canvas elements
artragis Jan 2, 2026
9741fc5
Fix test
artragis Jan 2, 2026
89d1237
Fix test
artragis Jan 2, 2026
1aa3624
Fix test
artragis Jan 2, 2026
f511485
do not show solved_by if topic is not solved
artragis Jan 21, 2026
c7d4676
Meilleur html dans featured_resource_item.part.html
artragis Jan 21, 2026
60d2704
Bunch of HTML fixes
artragis Jan 21, 2026
e494516
Fix JsonResponse use
artragis Jan 21, 2026
8e9cc98
Fix test
artragis Jan 23, 2026
29ea35f
Fix test
artragis Jan 23, 2026
9aee327
Fix mp html
artragis Jan 23, 2026
355ebf7
Fix auto_id and missing href
artragis Jan 23, 2026
bf08987
Fix auto_id
artragis Jan 23, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -219,8 +219,8 @@ jobs:
with:
node-version: "${{ env.NODE_VERSION }}"

- name: Install Cairo
run: sudo apt-get update && sudo apt-get install libcairo2-dev
- name: Install Cairo and tidylib
run: sudo apt-get update && sudo apt-get install libcairo2-dev tidy

- name: Install Python dependencies
run: pip install -r requirements-ci.txt
Expand Down
2 changes: 1 addition & 1 deletion assets/js/ajax-actions.js
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@
const $act = $(this)
const $form = $(this).parents('form:first')
let $email = $(this).parents('li:first').next().find("[data-ajax-input='follow-topic-by-email']")
const $followText = $act.find('span#follow_text')
const $followText = $act.find('span.follow_text')
const $count = $form.find('span#subscriber_count')
const $plural = $act.find('span#subscriber_plural')
const $otherSubscriberCount = $($act.attr('data-raw-subscriber-count'))
Expand Down
6 changes: 6 additions & 0 deletions assets/scss/components/_topic-list.scss
Original file line number Diff line number Diff line change
Expand Up @@ -202,6 +202,9 @@
.topic-members {
margin: 0;
color: $grey-600;
.topic-author {
font-style: italic;
}
}

&.has-image a {
Expand Down Expand Up @@ -329,6 +332,9 @@
.topic-members-long-date {
display: none;
}
.topic-author {
font-style: italic;
}
}

.topic-answers {
Expand Down
123 changes: 100 additions & 23 deletions assets/scss/layout/_content.scss
Original file line number Diff line number Diff line change
Expand Up @@ -14,68 +14,74 @@
}

header {
>.title-block {
> .title-block {
display: flex;
flex-direction: row;

margin-bottom: $length-10;

>.content-thumbnail-group {
> .content-thumbnail-group {
flex-grow: 0;
flex-shrink: 0;

display:block;
display: block;
height: $length-64;
width: $length-64;

margin-right: $length-10;

background-size: contain;

>.thumbnail {
> .thumbnail {
width: 100%;
height: 100%;
border: $length-1 solid $grey-200;
box-sizing: border-box;
}

>.edit-thumbnail {
> .edit-thumbnail {
display: block;
width: $length-32;
height: $length-32;
margin-top: calc($length-64/2 - $length-32/2);
margin-left: calc($length-64/2 - $length-32/2);
margin-top: calc($length-64 / 2 - $length-32 / 2);
margin-left: calc($length-64 / 2 - $length-32 / 2);
border-radius: $radius-round;
background-color: rgba($grey-200, 0.7);

&.with-thumbnail {
position: relative;
top: -$length-64;
}
&.with-placeholder{

&.with-placeholder {
position: relative;
top: 0;
}

&::after {
content: " ";
display: block;
width: $length-16;
height: $length-16;
position: relative;
top: calc($length-32/2 - $length-16/2);
left: calc($length-32/2 - $length-16/2);
top: calc($length-32 / 2 - $length-16 / 2);
left: calc($length-32 / 2 - $length-16 / 2);
@include sprite;
@include sprite-position($edit-blue);
background-repeat: no-repeat;
}

transition: border-radius .005s ease-in-out;

&:hover {
border-radius: 0;
width: 100%;
height: 100%;
margin: 0;

&::after {
top: calc($length-64/2 - $length-16/2);
left: calc($length-64/2 - $length-16/2);
top: calc($length-64 / 2 - $length-16 / 2);
left: calc($length-64 / 2 - $length-16 / 2);
}
}
}
Expand All @@ -93,37 +99,37 @@
}
}

>.content-title-and-subtitle-group {
width:100%;
> .content-title-and-subtitle-group {
width: 100%;

padding-bottom: $length-4;

border-bottom: $length-1 solid $accent-500;

>.content-title-group {
>.title {
> .content-title-group {
> .title {
display: inline;
vertical-align: middle;
border: none;
margin: 0;
padding: 0;
}

>.edit-button {
> .edit-button {
display: inline-block;
vertical-align: middle;
}
}

>.content-subtitle-group {
>.subtitle {
> .content-subtitle-group {
> .subtitle {
display: inline;
vertical-align: middle;
margin: 0;
padding: 0;
}

>.edit-button {
> .edit-button {
display: inline-block;
vertical-align: middle;
}
Expand All @@ -135,11 +141,81 @@
}
}

section > h2 {
.content-header-container {
display: flex;
align-items: center;

margin-bottom: $length-20;
padding: $length-6 $length-1;

border-top: $length-1 solid $grey-100;

background: $true-white;

font-weight: 400;
font-size: $font-size-6;
border-bottom: $length-1 solid $accent-500;

h2.title-with-buttons {
margin-top: 0;
padding: 0;
margin-bottom: 0;
border: none;
}

.actions-title {
@include mobile {
flex-direction: column;
}
ul {
display: flex;
list-style: none;
margin: $length-1;

.btn {
height: $length-32;

margin: $length-2;

background-color: $grey-100;
color: $grey-600;

font-size: $font-size-9;
line-height: 2;

z-index: 1;

transition: color .1s ease-in-out,
background-color .1s ease-in-out;

&.ico-after:after {
margin-top: $length-8;
}

&:hover,
&:focus {
color: $grey-800;
background-color: $grey-200;
text-decoration: none;
}
}
}

}
}

section > h2,
.content-header-container {
display: flex;
flex-direction: row;
align-items: center;
flex-wrap: wrap;

h2,
span {
flex: 2;
margin: 0;
min-width: 200px;
}

.btn {
Expand Down Expand Up @@ -181,7 +257,7 @@
margin: $length-10 0;
padding: $length-6 0 $length-6 $length-16;

border-left: $length-6 solid$grey-200;
border-left: $length-6 solid $grey-200;
}
}

Expand Down Expand Up @@ -318,7 +394,8 @@
p,
figure,
blockquote,
.title-block {
.title-block,
.content-header-container {
margin-left: $length-10;
margin-right: $length-10;
}
Expand Down
Loading