File tree Expand file tree Collapse file tree 5 files changed +85
-4
lines changed
Expand file tree Collapse file tree 5 files changed +85
-4
lines changed Original file line number Diff line number Diff line change 1+ package no .java .submit .template ;
2+
3+ import io .quarkus .qute .TemplateExtension ;
4+ import no .java .submit .service .TalksService ;
5+ import no .java .submit .util .SessionHelper ;
6+
7+ import java .util .List ;
8+
9+ @ TemplateExtension (namespace = "session" )
10+ public class SessionExtension {
11+
12+ public static List <String > tags (TalksService .Session session ) {
13+ return SessionHelper .getTags (session );
14+ }
15+ }
Original file line number Diff line number Diff line change 1+ package no .java .submit .util ;
2+
3+ import no .java .submit .service .TalksService ;
4+
5+ import java .util .ArrayList ;
6+ import java .util .List ;
7+ import java .util .Map ;
8+
9+ public interface SessionHelper {
10+
11+ @ SuppressWarnings ("unchecked" )
12+ static List <String > getTags (TalksService .Session session ) {
13+ var result = new ArrayList <String >();
14+
15+ if (session .data .containsKey ("tagswithauthor" )) {
16+ var tags = (List < Map <String , String >>) session .data .get ("tagswithauthor" ).value ;
17+ for (Map <String , String > tag : tags ) {
18+ if (tag .containsKey ("tag" )) {
19+ result .add (tag .get ("tag" ));
20+ }
21+ }
22+ }
23+
24+ if (session .data .containsKey ("tags" )) {
25+ result .addAll ((List <String >) session .data .get ("tags" ).value );
26+ }
27+
28+ return result ;
29+ }
30+ }
Original file line number Diff line number Diff line change @@ -36,18 +36,27 @@ <h2>Submitted talks</h2>
3636 {/if}
3737 {#else}
3838 {#for session in talks}
39- < div class ="session-item ">
39+ {#let tags=session:tags(session)}
40+ < div class ="session-item{#if tags.contains( "rejected ") || tags.contains("trukket") || tags.contains("withdrawn")} out{/if}">
4041 < a href ="/talk/{session.sessionId} "> {session.data["title"]}</ a >
4142
4243 < ul >
4344 < li > {Kind:of(session.data).name}</ li >
4445 < li > {Language:of(session.data).name}</ li >
45- {#if session.status == "APPROVED"}
46- < li > Approved</ li >
46+ {#if tags.contains("rejected")}
47+ < li > Rejected</ li >
48+ {#else if tags.contains("trukket") || tags.contains("withdrawn")}
49+ < li > Withdrawn</ li >
50+ {#else if tags.contains("accepted") && tags.contains("confirmed")}
51+ < li > Confirmed</ li >
52+ {#else if tags.contains("accepted")}
53+ < li > Accepted</ li >
54+ < li > < a href ="https://cakeredux.javazone.no/confirm.html?id={session.sessionId} "> Confirm</ a > </ li >
4755 {/if}
4856 < li > < a href ="/talk/{session.sessionId}/edit "> Edit</ a > </ li >
4957 </ ul >
5058 </ div >
59+ {/let}
5160 {/for}
5261 {/if}
5362 </ div >
Original file line number Diff line number Diff line change 11{#include partial/base}
2+ {#let tags=session:tags(session)}
23 < h1 > {session.data["title"]}</ h1 >
34
45 < ul class ="details ">
@@ -9,11 +10,31 @@ <h1>{session.data["title"]}</h1>
910 {#if session.conferenceId != conference:current.id}
1011 < li > {conferences.id(session.conferenceId).name}</ li >
1112 {/if}
13+ {#if tags.contains("rejected")}
14+ < li > Rejected</ li >
15+ {#else if tags.contains("trukket") || tags.contains("withdrawn")}
16+ < li > Withdrawn</ li >
17+ {#else if tags.contains("accepted") && tags.contains("confirmed")}
18+ < li > Confirmed</ li >
19+ {#else if tags.contains("accepted")}
20+ < li > Accepted</ li >
21+ < li > < a href ="https://cakeredux.javazone.no/confirm.html?id={session.sessionId} "> Confirm</ a > </ li >
22+ {/if}
1223 {#if session.conferenceId == conference:current.id}
1324 < li > < a href ="/talk/{session.sessionId}/edit "> Edit</ a > </ li >
1425 {/if}
1526 </ ul >
1627
28+ {#if tags.contains("accepted") && !tags.contains("confirmed")}
29+ < div class ="submit ">
30+ < form >
31+ < p > This proposal accepted but not yet confirmed.</ p >
32+
33+ < a href ="https://cakeredux.javazone.no/confirm.html?id={session.sessionId} " class ="button "> Confirm</ a >
34+ </ form >
35+ </ div >
36+ {/if}
37+
1738 {#if session.status == "DRAFT" && session.conferenceId == conference:current.id}
1839 < div class ="submit ">
1940 < form >
@@ -69,5 +90,6 @@ <h3>{speaker.name}</h3>
6990 < p style ="white-space: pre-wrap; "> {speaker.data["bio"]}</ p >
7091 {/if}
7192 {/for}
93+ {/let}
7294
7395{/include}
Original file line number Diff line number Diff line change @@ -312,10 +312,11 @@ div.submit {
312312 margin : 0 0 20pt ;
313313 }
314314
315- input , button {
315+ input , button , a . button {
316316 background-color : var (--submit-background-color );
317317 color : var (--submit-text-color );
318318 border : 2px solid var (--submit-text-color );
319+ text-decoration : none;
319320 padding : 10pt ;
320321 border-radius : 4pt ;
321322 font-size : 1.1em ;
@@ -329,6 +330,10 @@ div.submit {
329330div .session-item {
330331 margin-bottom : 10pt ;
331332
333+ & .out , & .out a {
334+ color : var (--subtext-color );
335+ }
336+
332337 ul {
333338 margin : 3pt 0 0 ;
334339 padding : 0 ;
You can’t perform that action at this time.
0 commit comments