Changes for page Per Status

From version 90.1
edited by Andrea Omicini
on 22/06/2023 13:01
Change comment: There is no comment for this version
To version 91.1
edited by Andrea Omicini
on 22/06/2023 13:09
Change comment: There is no comment for this version

Summary

Details

Page properties
Content
... ... @@ -35,6 +35,7 @@
35 35  ## $oneStatus false gets a list of statuses, true just one
36 36  #set( $oneStatus = false )
37 37  #set( $showRejected = false )
38 +#set( $showPublished = false )
38 38  ## $statusList gets the list of statuses to be shown
39 39  #set( $statusList = $publicationStatuses )
40 40  ##
... ... @@ -42,12 +42,18 @@
42 42  #if( $statusPar.toLowerCase() == "all" )
43 43  ## 'all' value gets all unpublished papers including "Rejected" ones
44 44   #set( $showRejected = true )
45 -#else
46 - #if( $publicationStatuses.contains($statusPar) )
47 - ## 'status' parameter is an admissible publication status value
46 +#elseif( $statusPar.toLowerCase() == "published" )
47 + #set( $oneStatus = true )
48 + #set( $statusList = ["published"] )
49 + #set( $showPublished = true )
50 +#elseif( $statusPar.toLowerCase() == "rejected" )
51 + #set( $oneStatus = true )
52 + #set( $statusList = ["rejected"] )
53 + #set( $showRejected = true )
54 +#elseif( $publicationStatuses.contains($statusPar) )
55 +## 'status' parameter is an admissible publication status value
48 48   #set( $oneStatus = true )
49 49   #set( $statusList = [$statusPar] )
50 - #end
51 51  #end
52 52  ##
53 53  ## HANDLE STATUS / END
... ... @@ -108,6 +108,7 @@
108 108  #set( $itemNo = 0 )
109 109  ## cycle over statuses
110 110  #foreach( $status in $statusList )
118 + #if( $status != "published" && $status != "rejected" || $status == "published" && $showPublished || $status == "rejected" && $showRejected )
111 111   #set( $query = ", BaseObject as obj, #if( $oneUser ) LargeStringProperty as propAuthor, LargeStringProperty as propEditor, #end StringProperty as propStatus #if( !$hasEdit ), StringProperty as propAccess #end
112 112   where obj.name = doc.fullName and obj.className = '${objectSpace}.${objectClass}' and obj.name <> '${objectPool}.${objectTemplate}' #if( $oneUser ) and propAuthor.id.id = obj.id and propEditor.id.id = obj.id and propAuthor.name = 'author' and propEditor.name = 'editor' and ( propAuthor.value like '$userString' or ( propAuthor.value = '' and propEditor.value like '$userString' ) ) #end and propStatus.id.id = obj.id and propStatus.name = 'status' and propStatus.value = '$status' #if( !$hasEdit ) and propAccess.id.id = obj.id and propAccess.name = 'access' and propAccess.value <> 'hidden' #end" )
113 113   #set( $itemFound = $xwiki.searchDocuments($query) )
... ... @@ -118,7 +118,6 @@
118 118   #set( $itemNo = $itemNo + $itemStatusNo )
119 119   #end
120 120  #end
121 -$itemStatusNo
122 122  ##
123 123  ## output results
124 124  ## page subtitle