Changes for page Per A.Y.

From version 43.1
edited by Andrea Omicini
on 06/10/2022 01:27
Change comment: There is no comment for this version
To version 45.2
edited by Andrea Omicini
on 08/02/2023 00:12
Change comment: There is no comment for this version

Summary

Details

Page properties
Content
... ... @@ -106,14 +106,15 @@
106 106   #set($aYear = $year + "/" + $year1 )
107 107   #end
108 108  #end
109 ->{{stringEngIta eng = "Courses" ita = "Corsi"/}} / **#if( $oneYear )$aYear#else$lastAYear**–**$firstAYear#end**#if( $userName != "" ) / $userFirstName $userLastName#elseif( $professorName != "" ) / $professorFirstName $professorLastName#elseif( $tutorName != "" ) / $tutorFirstName $tutorLastName (tutor)#end{{id name="top"/}}
109 +#### HANDLE PARAMETERS / END
110 110  ##
111 -#if( !$oneYear )
112 -(% style="font-size: smaller; padding:1em 1.5em 0.25em 1.5em; background-color:$theme.highlightColor" %)(((#foreach ($yearr in $yearList)#set($yearr1 = $yearr + 1)#set($ayearr = "$yearr/$yearr1")#if( $foreach.index > 0 ) | #end[[$ayearr>>$doc||anchor=$yearr]]#end)))
113 -#end
114 -##
115 -#if( $services.localization.currentLocale == "it" )#set( $sortField = "ita")#else#set( $sortField = "eng")#end
111 +### query to structures
112 +## map & counter initialisation
113 +#set( $courseMap = {} )
116 116  #set( $courseNo = 0 )
115 +#if( $services.localization.currentLocale == "it" )#set( $sortField = "ita")#else#set( $sortField = "eng")#end
116 +##
117 +##
117 117  #foreach( $yearr in $yearList)#set($yearr1 = $yearr + 1)#set($ayearr = $yearr + "/" + $yearr1 )
118 118   #set ($sql = ", BaseObject as obj, StringProperty as prop, LargeStringProperty as prop1, LargeStringProperty as prop2, LargeStringProperty as prop3, StringProperty as prop4
119 119   where obj.name = doc.fullName and obj.className = '${objectSpace}.${objectClass}' and obj.name <> '${objectSpace}.${objectTemplate}' and prop.id.id = obj.id and prop1.id.id = obj.id and prop2.id.id = obj.id and prop3.id.id = obj.id and prop4.id.id = obj.id and prop.name = 'ay' and prop1.name = 'professor' and prop2.name = 'otherProfessors' and prop3.name = 'tutors' and prop4.name = '$sortField' and prop.value = '$ayearr' and ( prop1.value like '%$professorName%' or prop2.value like '%$professorName%' or prop3.value like '%$tutorName%' ) order by prop4.value asc ")
... ... @@ -120,15 +120,36 @@
120 120   #set( $courseFound = $xwiki.searchDocuments($sql) )
121 121   #set( $courseYearNo = $courseFound.size() )
122 122   #if( $$courseYearNo >0 )
124 + #set( $courseMap[$yearr] = $courseFound )
123 123   #set( $courseNo = $courseNo + $courseYearNo )
124 - #if( !$oneYear )
125 -(% style="border-style:solid hidden hidden solid; border-color:$theme.borderColor; text-align:left; font-style:oblique" %)|{{id name='$yearr'/}}[[$ayearr>>$doc||queryString='year=$yearr#if( $userName != "" )&user=$userName#elseif( $professorName != "" )&professor=$professorName#elseif( $tutorName != "" )&tutor=$tutorName#end']]
126 - #end
127 - #foreach( $courseDoc in $courseFound )
128 -* {{courseName}}$courseDoc{{/courseName}}
129 - #end
130 -(% style="#if( !$oneYear )border-style:hidden solid solid hidden; border-color:$theme.borderColor;#end text-align:right; font-style:oblique; font-size:smaller" %)|($courseYearNo #if( $courseYearNo == 1 ){{stringEngIta eng='course in' ita='corso nel'/}}#else{{stringEngIta eng='courses in' ita='corsi nel'/}}#end $ayearr) [[[{{stringEngIta eng='top' ita='in cima'/}}]>>||anchor="top"]] [[[{{stringEngIta eng='bottom' ita='in fondo'/}}]>>||anchor="bottom"]]
131 131   #end
132 132  #end
133 -#if( !$oneYear )(% style="text-align:right; font-style:oblique; font-size:smaller; border-bottom-style:dotted; border-color:$theme.borderColor" %)|($courseNo #if( $courseNo == 1 ){{stringEngIta eng='course' ita='corso'/}}#else{{stringEngIta eng='courses' ita='corsi'/}}#end)#end
128 +### output results
129 +## page subtitle
130 +{{id name="top"/}}
131 +>(%%)$courseNo #if( $courseNo == 1 ){{stringEngIta eng="$objectEngSingular.toLowerCase()" ita="$objectItaSingular.toLowerCase()"/}}#{else}{{stringEngIta eng="$objectEngPlural.toLowerCase()" ita="$objectItaPlural.toLowerCase()"/}}#{end} / #if( $oneYear )$aYear#else$lastAYear–$firstAYear#end#if( $userName != "" ) / $userFirstName $userLastName#elseif( $professorName != "" ) / $professorFirstName $professorLastName#elseif( $tutorName != "" ) / $tutorFirstName $tutorLastName (tutor)#{end}
132 +## stop if no course are found
133 +#if( $courseNo == 0 || $courseMap.keySet().size() == 0 )
134 +## redundant double check
135 + #stop
136 +#end
137 +## some course found
138 +## page index
139 +#if( $courseMap.keySet().size() > 1 )
140 +## found more than one year
141 +{{id name="index"/}}
142 +(% style="font-size:smaller; text-align:right; padding:1em 1.5em 0.25em 1.5em; background-color:$theme.highlightColor" %)(((#foreach( $yearr in $courseMap.keySet() )#set($yearr1 = $yearr + 1)#set($ayearr = $yearr + "/" + $yearr1 )#if( !$foreach.first ) | #end[[$ayearr>>||anchor="$ayearr"]]#end)))
143 +#end
144 +## courses displayed per academic year
145 +#foreach( $yearr in $courseMap.keySet() )#set($yearr1 = $yearr + 1)#set($ayearr = $yearr + "/" + $yearr1 )
146 +(% style="border-style:solid hidden hidden solid; border-color:$theme.borderColor; text-align:left; font-style:oblique" %)|{{id name='$ayearr'/}}[[$ayearr>>$doc||style='text-decoration:none; color:$theme.textPrimaryColor' queryString='year=$yearr#if( $userName != "" )&user=$userName#elseif( $professorName != "" )&professor=$professorName#elseif( $tutorName != "" )&tutor=$tutorName#end']]
147 +(% style="border-style:hidden hidden hidden hidden; font-style:normal" %)
148 +#foreach( $course in $courseMap[$yearr] )
149 +* {{courseName}}$course{{/courseName}}
150 + #end
151 +(%%)
152 + #set( $courseYearNo = $courseMap[$yearr].size() )
153 +(% style="border-style:hidden solid solid hidden; border-color:$theme.borderColor; text-align:right; font-style:oblique; font-size:smaller" %)|($courseYearNo #if( $courseYearNo == 1 ){{stringEngIta eng='course in' ita='corso nel'/}}#{else}{{stringEngIta eng='courses in' ita='corsi nel'/}}#end $year) [[[{{stringEngIta eng='top' ita='in cima'/}}]>>||anchor="top"]] [[[{{stringEngIta eng='bottom' ita='in fondo'/}}]>>||anchor="bottom"]]
154 +#end
134 134  {{/velocity}}
156 +{{id name="bottom"/}}