Changes for page ExternalApps
Last modified by bougault on 2019/09/12 12:46
Summary
-
Page properties (1 modified, 0 added, 0 removed)
Details
- Page properties
-
- Content
-
... ... @@ -1,31 +1,70 @@ 1 1 {{velocity}} 2 -{{html}} 2 +{{html clean="false"}} 3 3 ## space: $spaceDoc <br /> 4 4 ## children: $spaceDoc.getChildren() 5 5 6 -#set($query = 'select app.title, app.descriptionfrom Document doc, doc.object(ExternalApps.Code.ExternalAppsClass) as app')7 -#set($apps = $services.query.xwql($query).addFilter('hidden').execute()) 6 +#set($query = 'select doc from Document doc, doc.object(ExternalApps.Code.ExternalAppsClass) as app') 7 +#set($applications = $services.query.xwql($query).addFilter('hidden').execute()) 8 8 9 -#foreach($app in $apps) 10 - $app[0] 11 -#end 12 -#* 13 -#foreach($child in $spaceDoc.getChildren()) 14 - #set($childDoc = $xwiki.getDocument($child)) 15 - #set($URL = $childDoc.display('url')) 16 - #set($title = $childDoc.display('title')) 17 - <div> 18 - #if($childDoc.getAttachment('logo.png').isImage()) 19 - <img src="$childDoc.getAttachmentURL('logo.png')" width="75" height="75" alt="$title.replace('"', '\"')"> 20 - #else 21 - <img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mN89x8AAuEB74Y0o2cAAAAASUVORK5CYII=" width="75" height="75" alt=""> 22 - #end 23 - <h3>$title</h3> 24 - <a href="$URL">$URL</a> 25 - <p>$!childDoc.getValue('description')</p> 26 - <input id="$child.concat('-visibility')" type="checkbox" #if($childDoc.getValue('private') == 'Yes')checked#end disabled /><label for="$child.concat('-visibility')">Private</label> 27 - </div> 28 -#end 29 -*# 9 +<style> 10 +.application { 11 + border: 1px solid var(--color-support-light); 12 + padding: 1rem; 13 +} 14 + 15 +.application img { 16 + display: block; 17 + margin: 0 auto; 18 +} 19 + 20 +.application .title { 21 + text-align: center; 22 + height: 3em; 23 + margin-top: 2rem; 24 +} 25 + 26 +.application .tags { 27 + display: flex; 28 + justify-content: space-around; 29 +} 30 + 31 +.application .tags span { 32 + font-size: .8rem; 33 + background: var(--color-support-dark); 34 + color: var(--color-white); 35 + padding: .3rem .5rem; 36 + border-radius: var(--border-radius-default); 37 +} 38 +</style> 39 + 40 + 41 +<div class="row applications"> 42 + #foreach($application in $applications) 43 + #set($app = $xwiki.getDocument($application)) 44 + #set($URL = $app.display('url')) 45 + #set($title = $app.display('title')) 46 + #set($category = $app.display('category')) 47 + <div class="col-md-3"> 48 + <div class="application"> 49 + #if($app.getAttachment('logo.png').isImage()) 50 + <img src="$app.getAttachmentURL('logo.png')" width="75" height="75" alt="$title.replace('"', '\"')"> 51 + #else 52 + <img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mN89x8AAuEB74Y0o2cAAAAASUVORK5CYII=" width="75" height="75" alt=""> 53 + #end 54 + <div class="tags"><span>$category</span></div> 55 + <h3 class="title">$title</h3> 56 + <a href="$URL">$URL</a> 57 + <p>$!app.getValue('description')</p> 58 + ##<input id="$application.concat('-visibility')" type="checkbox" #if($app.getValue('private') == 1)checked#end disabled /><label for="$application.concat('-visibility')">Private</label> 59 + 60 + <div> 61 + ##$app.getValue('maintainers') 62 + ##$app.display('maintainers') 63 + </div> 64 + 65 + </div> 66 + </div> 67 + #end 68 +</div> 30 30 {{/html}} 31 31 {{/velocity}}