Changes for page Supervisors

From version 93.1
edited by Andrea Omicini
on 29/01/2023 21:42
Change comment: There is no comment for this version
To version 105.1
edited by Andrea Omicini
on 30/06/2023 00:56
Change comment: There is no comment for this version

Summary

Details

Page properties
Title
... ... @@ -1,0 +1,1 @@
1 +#if($request.tag)$services.localization.render('supervisor').toLowerCase() : $xwiki.getUserName($request.tag,false)#else$services.localization.render('supervisors')#end
Default language
... ... @@ -1,1 +1,0 @@
1 -en
Content
... ... @@ -1,20 +1,13 @@
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 )
1 +{{velocity}}
2 +{{html clean="false" wiki="true"}}
3 +#template('apice_theses.vm')
6 6  ##
7 7  #### tag parameter possibly brings name to be used as tag
8 -## no tag parameter --> just the cloud
9 -## yes tag parameter --> the item list
10 -##
11 -## NO TAG PARAMETER
12 12  #if( !$request.tag )
13 -## subtitle
14 ->{{stringEngIta eng="$objectEngPlural" ita= "$objectItaPlural"/}}#if( $oneUser ) / $userFirstName $userLastName#{end}
7 +## no tag parameter --> just the cloud
15 15  ## set query
16 - #set( $query = ", BaseObject as obj, StringProperty as prop1, DateProperty as prop2
17 - where obj.name = doc.fullName and obj.className = '${objectSpace}.${objectClass}' and obj.name <> '${objectSpace}.${objectTemplate}' and prop1.id.id = obj.id and prop2.id.id = obj.id and prop1.name = 'status' and lower(prop1.value) = 'completed' and prop2.name = 'end' order by prop2.value desc" )
9 + #set( $query = ", BaseObject as objThesis, LargeStringProperty as propSupervisors, StringProperty as propStatus, DateProperty as propEnddate
10 + where objThesis.name = doc.fullName and objThesis.className = '${objectSpace}.${objectClass}' and objThesis.name <> '${objectSpace}.${objectTemplate}' 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" )
18 18  ## execute query
19 19   #set( $itemFound = $xwiki.searchDocuments($query) )
20 20   #set( $itemFoundNo = $itemFound.size() )
... ... @@ -24,7 +24,6 @@
24 24   #foreach( $item in $itemFound )
25 25  ## set $doc & $obj
26 26   #set( $itemDoc = $xwiki.getDocument($item) )
27 - #set( $itemObj = $itemDoc.getObject("${objectSpace}.${objectClass}") )
28 28   #set( $nameList = $itemDoc.getValue("supervisors").split(",") )
29 29  ## set user-item map
30 30   #foreach( $name in $nameList )
... ... @@ -46,8 +46,11 @@
46 46  ## END EACH ITEM IN MAP
47 47  ## final values: $nameMap
48 48   #set( $nameFoundNo = $nameMap.keySet().size() )
49 -## tag cloud
50 -(% style='text-align:center' %)(((
41 +### CLOUD PAGE / START
42 +<div class="mainheader">
43 + $services.localization.render('theses').toLowerCase()
44 +</div>
45 +<div style='text-align: center'>
51 51   #foreach( $name in $nameMap.keySet() )
52 52   #set( $nameItemNo = $nameMap[$name].size() )
53 53   #if( $nameItemNo > 40 )#set( $tagSize = "140%" )
... ... @@ -60,29 +60,39 @@
60 60   #elseif( $nameItemNo == 2 )#set( $tagSize = "100%" )
61 61   #else#set( $tagSize = "90%" )
62 62   #end
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 -)))
58 + #set( $urlEscapedName = $escapetool.url($name) )
59 +<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;
60 + #end
61 +</div>
65 65  ## cloud bottom
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
63 +<div class="menuqualifier" style="text-align: right">
64 +[ $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 ]
65 +</div>
66 +### CLOUD PAGE / END
70 70  #else
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" )
68 +## yes tag parameter --> the item list
69 +##
70 +#### TAG PAGE / START
71 + #set( $query = ", BaseObject as objThesis, LargeStringProperty as propSupervisors, StringProperty as propStatus, DateProperty as propEnddate
72 + where objThesis.name = doc.fullName and objThesis.className = '${objectSpace}.${objectClass}' and objThesis.name <> '${objectSpace}.${objectTemplate}' 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" )
74 74  ## execute query
75 75   #set( $itemFound = $xwiki.searchDocuments($query) )
76 - #set( $itemFoundNo = $itemFound.size() )
75 + #set( $itemNo = $itemFound.size() )
77 77  ## subtitle
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 -(((
77 +<div class="mainheader">
78 +$itemNo #if( $itemNo > 1)$services.localization.render('theses').toLowerCase()#{else}$services.localization.render('thesis').toLowerCase()#{end}
79 +</div>
80 +## thesis list
81 + #template('apice_thesis_macros.vm')
81 81   #foreach( $item in $itemFound )
82 -[[image:icon:book]] {{thesis}}$item{{/thesis}}
83 +<div>
84 +[[image:icon:book]] #thesislinked($item)
85 +</div>
83 83   #end
84 -)))
85 85  ## thesis list bottom
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()"/}} ])))(%%)
88 +<div class="menuqualifier" style="text-align: right">
89 +[ [[{{stringEngIta eng="supervisor cloud" ita="nuvola relatori" /}}>>$doc.name]] / $services.localization.render('theses').toLowerCase() ]
90 +</div>
87 87  #end
88 -{{/velocity}}
92 +{{/html}}
93 +{{/velocity}}{{pageDisplay sort="objectservice"/}}