Changes for page Per Year

From version 6.1
edited by Andrea Omicini
on 16/06/2021 19:33
Change comment: There is no comment for this version
To version 17.3
edited by Andrea Omicini
on 25/10/2021 16:19
Change comment: There is no comment for this version

Summary

Details

Page properties
Title
... ... @@ -1,1 +1,1 @@
1 -SelectPerStatus
1 +Theses per Status
Syntax
... ... @@ -1,1 +1,1 @@
1 -XWiki 1.0
1 +XWiki 2.1
Content
... ... @@ -1,13 +1,32 @@
1 -#includeMacros("Main.MacroSheet")
2 -#includeMacros("Theses.MacroSheet")
3 -
1 +{{include reference="Theses.Environment"/}}{{include reference="Environment"/}}{{velocity}}
2 +#set( $thesisMenu = true )
4 4  #### get parameters
4 +## hypothesis: $thesisStatus set, default "Completed"
5 +## status parameter
6 +#set( $statusPar = $request.status.trim().toLowerCase() )
7 +#if( $statusPar != '' && $allThesisStatuses.contains($statusPar) )
8 + #set( $selectedStatus = $statusPar )
9 +#else
10 + #set( $selectedStatus = 'all' )
11 +#end
12 +##check velocity variable, takes precedence
13 +#if( $thesisStatus && $thesisStatus != '' && $allThesisStatuses.contains($thesisStatus.trim().toLowerCase()) )
14 + #set( $selectedStatus = $thesisStatus.trim().toLowerCase() )
15 +#end
16 +## set ordering field
17 +#if( $selectedStatus == "available" )
18 + #set( $orderingDateFieldName = "availabilityDate" )
19 +#elseif( $selectedStatus == "ongoing" )
20 + #set( $orderingDateFieldName = "startDate" )
21 +#else
22 + #set( $orderingDateFieldName = "endDate" )
23 +#end
24 +## invariant: $thesisStatus set, $orderingDateFieldName set correspondingly
5 5  ## who
6 -#set( $userNamePar = $context.getRequest().getParameter("user") )
7 -#set( $supervisorNamePar = $context.getRequest().getParameter("supervisor") )
8 -#set( $cosupervisorNamePar = $context.getRequest().getParameter("cosupervisor") )
9 -#set( $contactNamePar = $context.getRequest().getParameter("contact") )
10 -
26 +#set( $userNamePar = $request.user )
27 +#set( $supervisorNamePar = $request.supervisor )
28 +#set( $cosupervisorNamePar = $request.cosupervisor )
29 +#set( $contactNamePar = $request.contact )
11 11  #### set default values
12 12  #set( $userSelected = false )
13 13  #set( $roleSelected = false )
... ... @@ -22,7 +22,7 @@
22 22  #set( $contactName = "" )
23 23  #set( $contactFirstName = "" )
24 24  #set( $contactLastName = "" )
25 -
44 +##
26 26  #### handle who & roles
27 27  ##
28 28  #if ( $userName || $userNamePar ) ## a user is specified for all roles
... ... @@ -73,30 +73,25 @@
73 73   #set( $contactFirstName = $contactdoc.display("first_name") )
74 74   #set( $contactLastName = $contactdoc.display("last_name") )
75 75  #end
76 -
77 -## $userSelected true means one user for all roles
95 +##
96 +## $userSelected true and $roleSelected false means one user for all roles
78 78  ## $userSelected true and $roleSelected true for one user with one specific role
79 79  ## if $userSelected false and $roleSelected true mean at least one role with an assigned user
80 80  ## both false means all theses
81 -#if ($userSelected)
82 -1 #stringEnIt("Theses with ","Tesi con") $userFirstName $userLastName #if($supervisor)#stringEnIt("as a supervisor","come relatore")#end#if($cosupervisor)#stringEnIt("as a co-supervisor","come correlatore")#end#if($contact)#stringEnIt("as a contact","come contatto")#end #stringEnIt("in the #apice() space","nello spazio #apice()")
83 -#elseif ( $roleSelected )
84 -1 #stringEnIt("Theses","Tesi") #if($supervisorLastName != "") #stringEnIt("supervised by","con relatore") $supervisorFirstName $supervisorLastName#if($cosupervisorLastName != "" || $contactLastName != ""), #end#end#if($cosupervisorLastName != "") #stringEnIt("co-supervised by","con correlatore") $cosupervisorFirstName $cosupervisorLastName#if($contactLastName != ""), #end#end #if($contactLastName != "") #stringEnIt("with contact","con contatto") $contactFirstName $contactLastName#end #stringEnIt("in the #apice() space","nello spazio #apice()")
100 +#if( $userSelected )
101 + #if( $roleSelected ) // //
102 +> #FullThesisStatusesString($thesisStatus) / $userFirstName $userLastName / #if( $supervisor ){{stringEngIta eng="Supervisor" ita="Relatore"/}}#end#if( $cosupervisor ){{stringEngIta eng="Co-supervisor" ita="Correlatore"/}}#end#if( $contact ){{stringEngIta eng="Contact" ita="Contatto"/}}#end // //
103 + #else // //
104 +> #FullThesisStatusesString($thesisStatus) / $userFirstName $userLastName // //
105 + #end
85 85  #else
86 - 1 #stringEnIt("Theses","Tesi") #stringEnIt("in the #apice() space","nello spazio #apice()")
107 + #if( $roleSelected ) // //
108 +> #FullThesisStatusesString($thesisStatus)#if( $supervisorLastName != "" ) / $supervisorFirstName $supervisorLastName //({{stringEngIta eng="supervisor" ita="relatore"/}})//#end#if( $cosupervisorLastName != "" ) / $cosupervisorFirstName $cosupervisorLastName //({{stringEngIta eng="co-supervisor" ita="correlatore"/}})//#end#if( $contactLastName != "" ) / $contactFirstName $contactLastName //({{stringEngIta eng="Contact" ita="Contatto"/}})//#end // //
109 + #else // //
110 +## > #FullThesisStatusesString($thesisStatus) // //
111 + #end
87 87  #end
88 -
89 -## hypothesis: $thesisStatus set, default "Completed"
90 -## to do: get from parameter
91 -#if ($thesisStatus == "Available")
92 - #set ($orderingDateFieldName = "availabilityDate")
93 -#elseif ($thesisStatus == "Ongoing")
94 - #set ($orderingDateFieldName = "startDate")
95 -#else
96 - #set ($thesisStatus = "Completed")
97 - #set ($orderingDateFieldName = "endDate")
98 -#end
99 -##
113 +##
100 100  #if ( $cosupervisor )
101 101   #set ( $roleSelectedFieldName = "coSupervisors" )
102 102  #elseif ( $contact )
... ... @@ -104,9 +104,7 @@
104 104  #else
105 105   #set ( $roleSelectedFieldName = "supervisor" )
106 106  #end
107 -
108 -1.1 #ThesisStatusesString($thesisStatus)
109 -
121 +##
110 110  #if ($userSelected)
111 111   #if ( $roleSelected )
112 112   #set ($sql = ", BaseObject as obj, StringProperty as prop, LargeStringProperty as prop1, DateProperty as prop2
... ... @@ -176,9 +176,9 @@
176 176   order by prop1.value desc")
177 177  #end
178 178  #set($thesisFound = $xwiki.searchDocuments($sql))
179 -
191 +##
180 180  #foreach ($thesis in $thesisFound)#set($thesisDoc = $xwiki.getDocument($thesis))
181 -* #thesisTitleLink($thesis)#if( $thesisDoc.getValue("studentUserName") != "" || $thesisDoc.getValue("studentName") != "" ) ~~(#thesisAuthorLink($thesis))~~ #end
193 +* #thesisTitleLink($thesis)#if( $thesisDoc.getValue("studentUserName") != "" || $thesisDoc.getValue("studentName") != "" || ( $thesisDoc.getValue("studentFirstName") != "" && $thesisDoc.getValue("studentLastName") != "" ) ) //(#thesisAuthorLink($thesis)#if( $thesisDoc.display("endDate") != "" ), #thesisYear($thesis)#end)//#end
182 182  
183 183  #end
184 -
196 +{{/velocity}}