diff --git a/symfony/assets/styles/general.scss b/symfony/assets/styles/general.scss index 57385bd43..e9de485a9 100644 --- a/symfony/assets/styles/general.scss +++ b/symfony/assets/styles/general.scss @@ -46,9 +46,7 @@ span.utc_datetime { text-underline-offset: 0.2ex; } -.new-creator, -#legend-modal .new-creator, // More precise selector, otherwise was overwritten by Bootstrap styles -{ +.new-creator { color: #4cae4c; } diff --git a/symfony/assets/styles/main.scss b/symfony/assets/styles/main.scss index 3481ebdf9..f5f4bb587 100644 --- a/symfony/assets/styles/main.scss +++ b/symfony/assets/styles/main.scss @@ -21,6 +21,29 @@ } } +span.maker-table-icon { + color: var(--maker-icon-color); + display: inline-flex; + flex-direction: column; + align-items: center; + justify-content: center; + + width: 40px; + height: 40px; + overflow: hidden; + background: color-mix(in srgb, var(--maker-icon-color), #fff 80%); + border-radius: 8px; + line-height: 12px; + + .fas { + font-size: 22px; + } + + .text { + font-size: 10px; + } +} + div#data-table-container { table .makerId, table .state, @@ -82,6 +105,16 @@ table#creators-table { vertical-align: middle; } + td.icons { + padding: 0 0.5rem; + + .icons-container { + display: flex; + justify-content: space-evenly; + gap: 0.5rem; + } + } + td.features, td.types, td.styles, diff --git a/symfony/src/Twig/AppExtensions.php b/symfony/src/Twig/AppExtensions.php index e0a66ca91..4714e4f33 100644 --- a/symfony/src/Twig/AppExtensions.php +++ b/symfony/src/Twig/AppExtensions.php @@ -68,6 +68,7 @@ public function getFunctions(): array new TwigFunction('get_cst_issue_text', $this->getCstIssueText(...)), new TwigFunction('has_good_completeness', $this->hasGoodCompleteness(...)), new TwigFunction('is_new', $this->isNew(...)), + new TwigFunction('is_minor', $this->isMinor(...)), new TwigFunction('unique_int', fn () => $this->uniqueInt++), new TwigFunction('unknown_value', $this->unknownValue(...), SafeFor::HTML), ]; @@ -108,6 +109,11 @@ public function isNew(Creator $creator): bool return NewArtisan::isNew($creator); } + public function isMinor(Creator $creator): bool + { + return Ages::MINORS === $creator->getAges(); + } + public function hasGoodCompleteness(Creator $creator): bool { return Completeness::hasGood($creator); diff --git a/symfony/templates/main/htmx/creators_in_table.html.twig b/symfony/templates/main/htmx/creators_in_table.html.twig index badc3c2e5..c9c2308b5 100644 --- a/symfony/templates/main/htmx/creators_in_table.html.twig +++ b/symfony/templates/main/htmx/creators_in_table.html.twig @@ -7,6 +7,17 @@ inactive: creator.isHidden, 'matched-maker-id': creator.hasMakerId(searched_creator_id), }) }}"> + +
+ {% if is_new(creator) %} + {{ include('main/htmx/maker_icon.html.twig', { text: 'New', fa_icon: 'leaf', color: '#4cae4c'}) }} + {% endif %} + + {% if is_minor(creator) %} + {{ include('main/htmx/maker_icon.html.twig', { text: 'Minor', fa_icon: 'child', color: '#E3963E'}) }} + {% endif %} +
+   @@ -15,12 +26,6 @@ {%- if creator.isHidden -%}  [hidden]{# grep-inactive-mark #} {%- endif -%} - - {{ ages_description(creator, false) }} - - {% if is_new(creator) %} -  recently added - {% endif %} diff --git a/symfony/templates/main/htmx/maker_icon.html.twig b/symfony/templates/main/htmx/maker_icon.html.twig new file mode 100644 index 000000000..b1d7e001b --- /dev/null +++ b/symfony/templates/main/htmx/maker_icon.html.twig @@ -0,0 +1,7 @@ + + + {{ text }} + diff --git a/symfony/templates/main/main.html.twig b/symfony/templates/main/main.html.twig index 2ee92546b..c5da69329 100644 --- a/symfony/templates/main/main.html.twig +++ b/symfony/templates/main/main.html.twig @@ -33,8 +33,6 @@ {{ include('main/parts/filters.html.twig') }} - {{ include('main/parts/legend_modal.html.twig') }} -