Changes for page Per Year

From version 108.2
edited by Andrea Omicini
on 30/10/2021 17:27
Change comment: There is no comment for this version
To version 118.1
edited by Andrea Omicini
on 30/10/2021 18:14
Change comment: There is no comment for this version

Summary

Details

Page properties
Content
... ... @@ -43,6 +43,7 @@
43 43   #set( $yearList = [$lastYear..$firstYear] )
44 44   #end
45 45  #end
46 +## $selectedYear, $yearList and $oneYear set properly
46 46  ### END YEAR
47 47  ##
48 48  ### START USER
... ... @@ -72,35 +72,42 @@
72 72   #stop
73 73   #end
74 74  #end
76 +## $selectedUser and $oneUser set properly
75 75  ### END USER
76 -##if user selected, existing user page
78 +##
77 77  ### START CYCLE
78 78  #set( $oneCycle = false )
79 79  #set( $selectedCycle = '' )
82 +## cycle parameter
80 80  #if( $request.cycle )
81 81   #set( $cyclePar = $request.cycle.trim().toUpperCase() )
82 - $cyclePar
83 83  #end
86 +## set cycle
84 84  #if( $cyclePar != '' && $allThesisCycles.contains($cyclePar) )
85 85   #set( $oneCycle = true )
86 86   #set( $selectedCycle = $cyclePar )
87 87  #end
88 -## $oneUser and $oneCycle set properly
89 -$yearList
91 +## $selectedCycle and $oneCycle set properly
92 +### END CYCLE
90 90  #if( $oneYear )
91 91   $selectedYear
95 +#else
96 + $yearList
92 92  #end
93 93  #if( $oneUser )
94 94   $selectedUser
100 +#else
101 + ALL USERS
95 95  #end
96 96  #if( $oneCycle )
97 97   $selectedCycle
98 - {{thesisCycle short='no'}}$selectedCycle{{/thesisCycle}}
105 +#else
106 + ALL USERS
99 99  #end
100 100  ### END USER & CYCLE
101 101  ##
102 102  ## title
103 ->#if( $oneCycle ){{thesisCycle short='no'}}$selectedCycle{{/thesisCycle}}#else{{stringEngIta eng="Theses" ita="Tesi"/}}#end / #if( $oneYear )$selectedYear#else$firstYear–$lastYear#end#if( $oneUser ) / $userFirstName **$userLastName**#end{{id name='top'/}}
111 +>#if( $oneCycle ){{thesisCycle uppercase='yes' short='no'}}$selectedCycle{{/thesisCycle}}#else{{stringEngIta eng="Theses" ita="Tesi"/}}#end / #if( $oneYear )$selectedYear#else$firstYear–$lastYear#end#if( $oneUser ) / $userFirstName **$userLastName**#end{{id name='top'/}}
104 104  ## index
105 105  #if( !$oneYear )
106 106  (% style="font-size: smaller; padding:1em 1.5em 0.25em 1.5em; background-color:$theme.highlightColor" %)(((#foreach( $year in $yearList )#if ($velocityCount > 1) | #end[[$year>>||anchor="$year"]]#end)))
... ... @@ -121,12 +121,13 @@
121 121   #if( !$oneCycle || $selectedCycle == $cycle )
122 122  ## some selected cycle or all cycles / now $cycle
123 123   #if( $oneUser)
124 - #set ($sql = ", BaseObject as obj, StringProperty as prop0, DateProperty as prop1, LargeStringProperty as prop2, LargeStringProperty as prop3, LargeStringProperty as prop4
125 - where obj.name = doc.fullName and obj.className = 'Theses.ThesisClass' and obj.name <> 'Theses.ThesisClassTemplate' and obj.name <> 'Theses.ThesisTemplate' and prop0.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 prop0.name = 'cycle' and prop1.name = 'year' and prop2.name = 'supervisors' and prop3.name = 'cosupervisors' and prop4.name = 'contacts' and prop0.value = '$cycle' and year(prop1.value) = '$year' and ( prop2.value like '%$selectedUser%' or prop3.value like '%$selectedUser%' or prop4.value like '%$selectedUser%' ) order by prop1.value desc" )
132 + #set ($sql = ", BaseObject as obj, StringProperty as prop0, DateProperty as prop1, StringProperty as prop2, LargeStringProperty as prop3, LargeStringProperty as prop4, LargeStringProperty as prop5
133 + where obj.name = doc.fullName and obj.className = 'Theses.ThesisClass' and obj.name <> 'Theses.ThesisClassTemplate' and obj.name <> 'Theses.ThesisTemplate' and prop0.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 prop4.id.id = obj.id and prop0.name = 'cycle' and prop1.name = 'endDate' and prop2.name = 'status' and prop3.name = 'supervisors' and prop4.name = 'cosupervisors' and prop5.name = 'contacts' and prop0.value = '$cycle' and year(prop1.value) = '$year' and prop2.value = 'Completed' and ( prop3.value like '%$selectedUser%' or prop4.value like '%$selectedUser%' or prop5.value like '%$selectedUser%' ) order by prop1.value desc" )
126 126   #else
127 - #set ($sql = ", BaseObject as obj, StringProperty as prop0, DateProperty as prop1
128 - where obj.name = doc.fullName and obj.className = 'Theses.ThesisClass' and obj.name <> 'Theses.ThesisClassTemplate' and obj.name <> 'Theses.ThesisTemplate' and prop0.id.id = obj.id and prop1.id.id = obj.id and prop0.name = 'cycle' and prop1.name = 'year' and prop0.value = '$cycle' and year(prop1.value) = '$year' order by prop1.value desc" )
135 + #set ($sql = ", BaseObject as obj, StringProperty as prop0, DateProperty as prop1, StringProperty as prop2
136 + where obj.name = doc.fullName and obj.className = 'Theses.ThesisClass' and obj.name <> 'Theses.ThesisClassTemplate' and obj.name <> 'Theses.ThesisTemplate' and prop0.id.id = obj.id and prop1.id.id = obj.id and prop2.id.id = obj.id and prop0.name = 'cycle' and prop1.name = 'endDate' and prop2.name = 'status' and prop0.value = '$cycle' and year(prop1.value) = '$year 'and prop2.value = 'Completed' order by prop1.value desc" )
129 129   #end
138 + $sql
130 130   #set( $thesisFound = $xwiki.searchDocuments($sql) )
131 131   #set( $thesisFoundNo = $thesisFound.size() )
132 132   #set( $thesisYearCycleNo = $thesisYearCycleNo + $thesisFoundNo )