Changes for page Per Year
From version 23.1
edited by Andrea Omicini
on 25/10/2021 17:49
on 25/10/2021 17:49
Change comment:
There is no comment for this version
To version 20.13
edited by Andrea Omicini
on 25/10/2021 17:18
on 25/10/2021 17:18
Change comment:
There is no comment for this version
Summary
-
Page properties (1 modified, 0 added, 0 removed)
Details
- Page properties
-
- Content
-
... ... @@ -93,7 +93,52 @@ 93 93 #set( $contactFirstName = $contactdoc.display("first_name") ) 94 94 #set( $contactLastName = $contactdoc.display("last_name") ) 95 95 #end 96 +$selectedStatus 97 + 98 +$userSelected 99 + 100 +$roleSelected 101 + 102 +$supervisor 103 + 104 +$cosupervisor 105 + 106 +$contact 107 + 108 +$userFirstName $userLastName 109 + 110 +$supervisorFirstName $supervisorLastName 111 + 112 +$cosupervisorFirstName $cosupervisorLastName 113 + 114 +$contactFirstName $contactLastName 96 96 ## 116 +## $userSelected true and $roleSelected false means one user for all roles 117 +## $userSelected true and $roleSelected true for one user with one specific role 118 +## if $userSelected false and $roleSelected true mean at least one role with an assigned user 119 +## both false means all theses 120 +#if( $selectedStatus == 'all' ) 121 +ALLL 122 +#else 123 + #if( $userSelected ) 124 + #if( $roleSelected ) 125 +>{{thesisStatus plural='yes' uppercase='yes'}}$selectedStatus{{/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 126 + 127 + #else 128 +>{{thesisStatus plural='yes' uppercase='yes'}}$selectedStatus{{/thesisStatus}} / $userFirstName $userLastName 129 + 130 + #end 131 + #else 132 + #if( $roleSelected ) 133 +>{{thesisStatus plural='yes' uppercase='yes'}}$selectedStatus{{/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 134 + 135 + #else 136 +>{{thesisStatus plural='yes' uppercase='yes'}}$selectedStatus{{/thesisStatus}} 137 + 138 + #end 139 + #end 140 +#end 141 +## 97 97 #if( $cosupervisor ) 98 98 #set( $roleSelectedFieldName = "coSupervisors" ) 99 99 #elseif( $contact ) ... ... @@ -102,39 +102,37 @@ 102 102 #set( $roleSelectedFieldName = "supervisor" ) 103 103 #end 104 104 ## 105 -## $roleSelected has meaning only if $userSelected 106 -## if $userSelected, $roleSelected false means one user for all roles 107 -## if $userSelected, $roleSelected true means one specific role for one user selected 108 -## if $userSelected is false, $roleSelected means nothing -- so all users, all roles / just status 109 -#foreach( $status in $allThesisStatuses ) 110 - #if( $selectedStatus == 'all' || $selectedStatus == $status ) 111 -= $status = 112 -## some selected status or all statuses / now $status 113 - #if( $userSelected ) 114 -== $userName == 150 +#if( $selectedStatus == 'all' ) 151 + ALL STATUSES 152 +#else 153 +## some selected status 154 + #if( $userSelected ) 115 115 ## some user selected 116 - 156 + #if( $roleSelected ) 117 117 ## some specific role selected 118 -=== $roleSelectedFieldName === 119 - #set ($sql = ", BaseObject as obj, StringProperty as prop0, LargeStringProperty as prop1, DateProperty as prop2 120 - 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 = 'status' and prop1.name = '$roleSelectedFieldName' and prop2.name = '$orderingDateFieldName' and prop0.value = '$status' and prop1.value like '%$userName%' order by prop2.value desc" ) 121 - #else 122 -## no specific role selected 123 - #set ($sql = ", BaseObject as obj, StringProperty as prop0, LargeStringProperty as prop1, LargeStringProperty as prop2, LargeStringProperty as prop3, DateProperty as prop4 124 - 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 = 'status' and prop1.name = 'supervisor' and prop2.name = 'coSupervisors' and prop3.name = 'contact' and prop4.name = '$orderingDateFieldName' and lower(prop0.value) = '$status' and ( prop1.value like '%$userName%' or prop2.value like '%$userName%' or prop3.value like '%$userName%' ) order by prop4.value desc" ) 125 - #end 158 + #set ($sql = ", BaseObject as obj, StringProperty as prop0, LargeStringProperty as prop1, DateProperty as prop2 159 + 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 = 'status' and prop1.name = '$roleSelectedFieldName' and prop2.name = '$orderingDateFieldName' and prop0.value = '$selectedStatus' and prop1.value like '%$userName%' order by prop2.value desc" ) 126 126 #else 127 -## no user selected,norole selected128 - #set ($sql = ", BaseObject as obj, StringProperty as prop0, DateProperty as prop1129 - 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 = 'status' and prop1.name = '$orderingDateFieldName' and prop0.value = 1.value desc" )161 +## no specific role selected 162 + #set ($sql = ", BaseObject as obj, StringProperty as prop0, LargeStringProperty as prop1, LargeStringProperty as prop2, LargeStringProperty as prop3, DateProperty as prop4 163 + 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 = 'status' and prop1.name = 'supervisor' and prop2.name = 'coSupervisors' and prop3.name = 'contact' and prop4.name = '$orderingDateFieldName' and prop0.value = '$selectedStatus' and ( prop1.value like '%$userName%' or prop2.value like '%$userName%' or prop3.value like '%$userName%' ) order by prop4.value desc" ) 130 130 #end 165 + #elseif( $roleSelected ) 166 +## no user selected, some role selected 167 + #set ($sql = ", BaseObject as obj, StringProperty as prop0, LargeStringProperty as prop1, LargeStringProperty as prop2, LargeStringProperty as prop3, DateProperty as prop4 168 + 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 = 'status' and prop1.name = 'supervisor' and prop2.name = 'coSupervisors' and prop3.name = 'contact' and prop4.name = '$orderingDateFieldName' and prop1.value like '%$supervisorName%' and prop2.value like '%$cosupervisorName%' and prop3.value like '%$contactName%' order by prop4.value desc") 169 + #else 170 +## no user selected, some role selected 171 + #set ($sql = ", BaseObject as obj, StringProperty as prop0, DateProperty as prop1 172 + 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 = 'status' and prop1.name = '$orderingDateFieldName' and prop0.value = '$selectedStatus' order by prop1.value desc" ) 131 131 #end 132 - #set( $thesisFound = $xwiki.searchDocuments($sql) ) 133 - #set( $thesisFoundNo = $thesisFound.size() ) 174 +#end 175 +$sql 176 +#set( $thesisFound = $xwiki.searchDocuments($sql) ) 177 +$thesisFound.size() 134 134 ## 135 - #foreach ($thesis in $thesisFound)#set($thesisDoc = $xwiki.getDocument($thesis)) 136 -* [[$thesisDoc.getValue("title")>>$thesisDoc]]#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 137 - 138 - #end 179 +#foreach ($thesis in $thesisFound)#set($thesisDoc = $xwiki.getDocument($thesis)) 180 +##* #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 181 +* $thesis 139 139 #end 140 140 {{/velocity}}