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