Changes for page Supervisors

From version 109.1
edited by Andrea Omicini
on 03/07/2023 18:41
Change comment: There is no comment for this version
To version 91.1
edited by Andrea Omicini
on 29/01/2023 21:23
Change comment: There is no comment for this version

Summary

Details

Page properties
Title
... ... @@ -1,1 +1,0 @@
1 -#if($request.tag)$services.localization.render('supervisor').toLowerCase() : #if($request.tag.contains('XWiki.'))$xwiki.getUserName($request.tag,false)#else$request.tag#end#else$services.localization.render('supervisors')#end
Default language
... ... @@ -1,0 +1,1 @@
1 +en
Content
... ... @@ -1,14 +1,20 @@
1 -{{velocity}}
2 -{{html clean="false" wiki="true"}}
3 -#template('apice_macros.vm')
4 -#objectspace()
1 += {{velocity}}#if( $request.tag )(% style="color:$theme.textSecondaryColor" %)supervisor : (%%){{namesFromUsers linked='false'}}$request.tag{{/namesFromUsers}}#{else}{{stringEngIta eng="Supervisors" ita= "Supervisori"/}}#{end}{{/velocity}} =
2 +
3 +{{include reference="Theses.Environment" excludeFirstHeading="true"/}}{{velocity}}
4 +## thesis page with menus
5 +#set( $thesisMenu = true )
5 5  ##
6 6  #### tag parameter possibly brings name to be used as tag
7 -#if( !$request.tag )
8 8  ## no tag parameter --> just the cloud
9 +## yes tag parameter --> the item list
10 +##
11 +## NO TAG PARAMETER
12 +#if( !$request.tag )
13 +## subtitle
14 +>{{stringEngIta eng="$objectEngPlural" ita= "$objectItaPlural"/}}#if( $oneUser ) / $userFirstName $userLastName#{end}
9 9  ## set query
10 - #set( $query = ", BaseObject as objThesis, LargeStringProperty as propSupervisors, StringProperty as propStatus, DateProperty as propEnddate
11 - where objThesis.name = doc.fullName and objThesis.className = '${objectSpace}.Class' and objThesis.name <> '${objectSpace}.Template' and propSupervisors.id.id = objThesis.id and propStatus.id.id = objThesis.id and propEnddate.id.id = objThesis.id and propSupervisors.name = 'supervisors' and propSupervisors.value <> '' and propStatus.name = 'status' and lower(propStatus.value) = 'completed' and propEnddate.name = 'end' order by propEnddate.value desc" )
16 + #set( $query = ", BaseObject as obj, LargeStringProperty as prop0, StringProperty as prop1, DateProperty as prop2
17 + where obj.name = doc.fullName and obj.className = '${objectSpace}.${objectClass}' and obj.name <> '${objectSpace}.${objectTemplate}' and prop0.id.id = obj.id and prop1.id.id = obj.id and prop2.id.id = obj.id and prop0.name = 'supervisors' #if( $oneUser )and prop0.value like '$userString'#end and prop1.name = 'status' and lower(prop1.value) = 'completed' and prop2.name = 'end' order by prop2.value desc" )
12 12  ## execute query
13 13   #set( $itemFound = $xwiki.searchDocuments($query) )
14 14   #set( $itemFoundNo = $itemFound.size() )
... ... @@ -18,7 +18,8 @@
18 18   #foreach( $item in $itemFound )
19 19  ## set $doc & $obj
20 20   #set( $itemDoc = $xwiki.getDocument($item) )
21 - #set( $nameList = $itemDoc.getValue("supervisors").split(",") )
27 + #set( $itemObj = $itemDoc.getObject("${objectSpace}.${objectClass}") )
28 + #set( $nameList = $itemObj.getValue("supervisors").split(",") )
22 22  ## set user-item map
23 23   #foreach( $name in $nameList )
24 24  #### build name lists
... ... @@ -39,11 +39,8 @@
39 39  ## END EACH ITEM IN MAP
40 40  ## final values: $nameMap
41 41   #set( $nameFoundNo = $nameMap.keySet().size() )
42 -### CLOUD PAGE / START
43 -<div class="mainheader">
44 - $services.localization.render('theses').toLowerCase()
45 -</div>
46 -<div style='text-align: center'>
49 +## tag cloud
50 +(% style='text-align:center' %)(((
47 47   #foreach( $name in $nameMap.keySet() )
48 48   #set( $nameItemNo = $nameMap[$name].size() )
49 49   #if( $nameItemNo > 40 )#set( $tagSize = "140%" )
... ... @@ -56,44 +56,29 @@
56 56   #elseif( $nameItemNo == 2 )#set( $tagSize = "100%" )
57 57   #else#set( $tagSize = "90%" )
58 58   #end
59 - #set( $urlEscapedName = $escapetool.url($name) )
60 -<span style='font-size:$tagSize; white-space: nowrap'>&ensp;[[#if( $name.startsWith("XWiki.") )$xwiki.getUserName($name,false)#else$name#end>>$doc||queryString="tag=$urlEscapedName"]]</span><sub class='textprimary' style="font-size: .75em">$nameItemNo</sub>&ensp;
61 - #end
62 -</div>
63 +[[(% style='font-size:$tagSize; white-space: nowrap' %){{namesFromUsers linked='false'}}$name{{/namesFromUsers}}(%%)>>$doc||queryString='tag=$name']](% style='font-style:normal;color:$theme.textPrimaryColor;font-size:75%' %),,$nameItemNo,, (%%) #end
64 +)))
63 63  ## cloud bottom
64 -<div class="menuqualifier" style="text-align: right">
65 -[ $nameFoundNo #if( $nameFoundNo == 1 )$services.localization.render('supervisor').toLowerCase()#{else}$services.localization.render('supervisors').toLowerCase()#end / $itemFoundNo #if( $itemFoundNo == 1 )$services.localization.render('thesis').toLowerCase()#{else}$services.localization.render('theses').toLowerCase()#end ]
66 -</div>
67 -### CLOUD PAGE / END
66 +(% style='font-style:oblique;font-size:smaller;text-align:right;color:$theme.textSecondaryColor' %)(((
67 +[ $nameFoundNo #if( $nameFoundNo == 1 ){{stringEngIta eng="supervisor" ita="supervisore"/}}#else{{stringEngIta eng="supervisors" ita="supervisori"/}}#end / $itemFoundNo #if( $itemFoundNo == 1 ){{stringEngIta eng="$objectEngSingular.toLowerCase()" ita="$objectItaSingular.toLowerCase()"/}}#else{{stringEngIta eng = "$objectEngPlural.toLowerCase()" ita="$objectItaPlural.toLowerCase()"/}}#end ]
68 +)))
69 +#### YES TAG PARAMETER
68 68  #else
69 -## yes tag parameter --> the item list
70 -##
71 -#### TAG PAGE / START
72 - #set( $query = ", BaseObject as objThesis, LargeStringProperty as propSupervisors, StringProperty as propStatus, DateProperty as propEnddate
73 - where objThesis.name = doc.fullName and objThesis.className = '${objectSpace}.Class' and objThesis.name <> '${objectSpace}.Template' and propSupervisors.id.id = objThesis.id and propStatus.id.id = objThesis.id and propEnddate.id.id = objThesis.id and propSupervisors.name = 'supervisors' and propSupervisors.value like '%$request.tag%' and propStatus.name = 'status' and lower(propStatus.value) = 'completed' and propEnddate.name = 'end' order by propEnddate.value desc" )
71 +## set query
72 + #set( $query = ", BaseObject as obj, LargeStringProperty as prop0, StringProperty as prop1, DateProperty as prop2
73 + where obj.name = doc.fullName and obj.className = '${objectSpace}.${objectClass}' and obj.name <> '${objectSpace}.${objectTemplate}' and prop0.id.id = obj.id and prop1.id.id = obj.id and prop2.id.id = obj.id and prop0.name = 'supervisors' and prop0.value like '%$request.tag%' and prop1.name = 'status' and lower(prop1.value) = 'completed' and prop2.name = 'end' order by prop2.value desc" )
74 74  ## execute query
75 75   #set( $itemFound = $xwiki.searchDocuments($query) )
76 - #set( $itemNo = $itemFound.size() )
76 + #set( $itemFoundNo = $itemFound.size() )
77 77  ## subtitle
78 -<div class="mainheader">
79 - $itemNo
80 - #if( $itemNo > 1)
81 - $services.localization.render('theses').toLowerCase()
82 - #else
83 - $services.localization.render('thesis').toLowerCase()
84 - #end
85 -</div>
86 -## thesis list
87 - #template('apice_thesis_macros.vm')
78 +>$itemFoundNo #if( $itemFoundNo == 1 ){{stringEngIta eng="$objectEngSingular.toLowerCase()" ita="$objectItaSingular.toLowerCase()"/}}#else{{stringEngIta eng="$objectEngPlural.toLowerCase()" ita="$objectItaPlural.toLowerCase()"/}}#end#if( $request.user ) / {{namesFromUsers linked='false'}}$request.user{{/namesFromUsers}}#end#if( $request.name && $request.surname ) / {{namesFromUsers linked='false'}}$request.name $request.surname{{/namesFromUsers}}#end
79 +## talk list
80 +(((
88 88   #foreach( $item in $itemFound )
89 -<div>
90 -[[image:icon:book]] #thesislinked($item)
91 -</div>
82 +[[image:icon:book]] {{thesis}}$item{{/thesis}}
92 92   #end
84 +)))
93 93  ## thesis list bottom
94 -<div class="menuqualifier" style="text-align: right">
95 -[ [[{{stringEngIta eng="supervisor cloud" ita="nuvola relatori" /}}>>$doc.name]] / $services.localization.render('theses').toLowerCase() ]
96 -</div>
86 +(% style='font-style:oblique;font-size:smaller;text-align:right;color:$theme.textSecondaryColor' %)((([ [[{{stringEngIta eng="supervisor cloud" ita="nuvola supervisori" /}}>>$doc||]] / {{stringEngIta eng = "$objectEngPlural.toLowerCase()" ita = "$objectItaPlural.toLowerCase()"/}} ])))(%%)
97 97  #end
98 -{{/html}}
99 -{{/velocity}}{{pageDisplay sort="objectservice"/}}
88 +{{/velocity}}