github.com/PDOK/gokoala@v0.50.6/internal/ogc/common/core/templates/landing-page.go.html (about) 1 {{- /*gotype: github.com/PDOK/gokoala/internal/engine.TemplateData*/ -}} 2 {{define "content"}} 3 <hgroup> 4 <h1 class="title" id="title">{{ .Config.Title }} (OGC API)</h1> 5 </hgroup> 6 <div class="row py-3"> 7 {{ if and .Config.Thumbnail .Config.Resources }} 8 <div class="col-md-8"> 9 {{ else }} 10 <div class="col-md-12"> 11 {{ end }} 12 {{ markdown .Config.Abstract }} 13 <table class="table table-borderless table-sm w-100"> 14 <caption class="visually-hidden">Dataset details</caption> 15 <tbody> 16 {{ if .Config.Keywords }} 17 <tr> 18 <td class="w-25 text-nowrap fw-bold"> 19 {{ i18n "Keywords" }} 20 </td> 21 <td> 22 {{ .Config.Keywords | join ", " }} 23 </td> 24 </tr> 25 {{ end }} 26 <tr> 27 <td class="w-25 text-nowrap fw-bold"> 28 {{ i18n "License" }} 29 </td> 30 <td> 31 <a href="{{ .Config.License.URL }}" target="_blank" aria-label="{{ i18n "To" }} {{ i18n "License" }} {{ .Config.License.Name }}">{{ .Config.License.Name }}</a> 32 </td> 33 </tr> 34 {{ if .Config.Support}} 35 <tr> 36 <td class="w-25 text-nowrap fw-bold"> 37 {{ i18n "Support" }} 38 </td> 39 <td> 40 <a href="{{ .Config.Support.URL }}" target="_blank" aria-label="{{ i18n "To" }} {{ i18n "Support" }}">{{ .Config.Support.Name }}</a> 41 </td> 42 </tr> 43 {{ end }} 44 {{ if .Config.DatasetDetails }} 45 {{ range $detailField := .Config.DatasetDetails }} 46 <tr> 47 <td class="w-25 text-nowrap fw-bold"> 48 {{ $detailField.Name }} 49 </td> 50 <td> 51 {{ markdown $detailField.Value }} 52 </td> 53 </tr> 54 {{ end }} 55 {{ end }} 56 </tbody> 57 </table> 58 </div> 59 {{ if and .Config.Thumbnail .Config.Resources }} 60 <div class="col-md-4"> 61 <img src="resources/{{ .Config.Thumbnail }}" class="img-fluid" alt="{{ .Config.Title }} Thumbnail"/> 62 </div> 63 {{ end }} 64 </div> 65 66 <div class="row row-cols-md-4 g-4"> 67 <div class="col-md-4 col-sm-12"> 68 <div class="card h-100"> 69 <h2 class="card-header h5"> 70 <a href="api" aria-label="{{ i18n "To" }} OpenAPI {{ i18n "Specification" }}">OpenAPI {{ i18n "Specification" }}</a> 71 </h2> 72 <div class="card-body"> 73 <p> 74 {{ i18n "SpecificationText" }} 75 {{ i18n "AvailableIn" }} 76 </p> 77 <small class="text-body-secondary">{{ i18n "ViewAs" }} <a href="api?f=json" target="_blank" aria-label="OpenAPI {{ i18n "Specification" }} {{ i18n "As" }} JSON">JSON</a></small> 78 </div> 79 </div> 80 </div> 81 82 <div class="col-md-4 col-sm-12"> 83 <div class="card h-100"> 84 <h2 class="card-header h5"> 85 <a href="conformance" aria-label="{{ i18n "To" }} {{ i18n "Conformance" }}">{{ i18n "Conformance" }}</a> 86 </h2> 87 <div class="card-body"> 88 <p> 89 {{ i18n "ConformanceText" }} 90 {{ i18n "AvailableIn" }} 91 </p> 92 <small class="text-body-secondary">{{ i18n "ViewAs" }} <a href="conformance?f=json" target="_blank" aria-label="{{ i18n "Conformance" }} {{ i18n "As" }} JSON">JSON</a></small> 93 </div> 94 </div> 95 </div> 96 97 {{ if .Config.HasCollections }} 98 <div class="col-md-4 col-sm-12"> 99 <div class="card h-100"> 100 <h2 class="card-header h5"> 101 <a href="collections" aria-label="{{ i18n "To" }} {{ i18n "Collections" }}">{{ i18n "Collections" }}</a> 102 </h2> 103 <div class="card-body"> 104 <p> 105 {{ i18n "CollectionsText" }} 106 {{ i18n "AvailableIn" }} 107 </p> 108 <small class="text-body-secondary">{{ i18n "ViewAs" }} <a href="collections?f=json" target="_blank" aria-label="{{ i18n "Collections" }} {{ i18n "As" }} JSON">JSON</a></small> 109 </div> 110 </div> 111 </div> 112 {{ end }} 113 114 {{ if .Config.OgcAPI.Tiles }} 115 <div class="col-md-4 col-sm-12"> 116 <div class="card h-100"> 117 <h2 class="card-header h5"> 118 <a href="tiles" aria-label="{{ i18n "To" }} {{ i18n "Tiles" }}">{{ i18n "Tiles" }}</a> 119 </h2> 120 <div class="card-body"> 121 <p> 122 {{ i18n "TilesTextHTML" }} 123 {{ i18n "AvailableIn" }} 124 </p> 125 <small class="text-body-secondary">{{ i18n "ViewAs" }} <a href="tiles?f=json" target="_blank" aria-label="{{ i18n "Tiles" }} {{ i18n "As" }} JSON">JSON</a></small> 126 </div> 127 </div> 128 </div> 129 {{ end }} 130 131 {{ if .Config.OgcAPI.Styles }} 132 <div class="col-md-4 col-sm-12"> 133 <div class="card h-100"> 134 <h2 class="card-header h5"> 135 <a href="styles" aria-label="{{ i18n "To" }} {{ i18n "Styles" }}">{{ i18n "Styles" }}</a> 136 </h2> 137 <div class="card-body"> 138 <p> 139 {{ i18n "StylesText" }} 140 {{ i18n "AvailableIn" }} 141 </p> 142 <small class="text-body-secondary">{{ i18n "ViewAs" }} <a href="styles?f=json" target="_blank" aria-label="{{ i18n "Styles" }} {{ i18n "As" }} JSON">JSON</a></small> 143 </div> 144 </div> 145 </div> 146 {{ end }} 147 148 {{ if .Config.OgcAPI.Tiles }} 149 <div class="col-md-4 col-sm-12"> 150 <div class="card h-100"> 151 <h2 class="card-header h5"> 152 <a href="tileMatrixSets" aria-label="{{ i18n "To" }} {{ i18n "TileMatrixSets" }}">{{ i18n "TileMatrixSets" }}</a> 153 </h2> 154 <div class="card-body"> 155 <p> 156 {{ i18n "TileMatrixSetsText" }} 157 {{ i18n "AvailableIn" }} 158 </p> 159 <small class="text-body-secondary">{{ i18n "ViewAs" }} <a href="tileMatrixSets?f=json" target="_blank" aria-label="{{ i18n "TileMatrixSets" }} {{ i18n "As" }} JSON">JSON</a></small> 160 </div> 161 </div> 162 </div> 163 {{ end }} 164 </div> 165 {{end}}