Coverage for gws-app/gws/plugin/gbd_geoservices/finder.py: 0%
20 statements
« prev ^ index » next coverage.py v7.15.4, created at 2026-08-24 12:46 +0200
« prev ^ index » next coverage.py v7.15.4, created at 2026-08-24 12:46 +0200
1"""GBD Geoservices finder.
2"""
4import gws
5import gws.base.search
6import gws.config.util
9gws.ext.new.finder('gbd_geoservices')
11_DEFAULT_TEMPLATES = [
12 gws.Config(
13 subject='feature.teaser',
14 type='html',
15 text='''
16 <p class="uiLink">{title | html}</p>
17 '''
18 ),
19 gws.Config(
20 subject='feature.description',
21 type='html',
22 text='''
23 <p class="head2">{title | html}</p>
24 <table>
25 @for k, v in feature.attributes
26 @with v
27 <tr><td>{k}</td><td>{v | html}</td></tr>
28 @end
29 @end
30 </table>
31 '''
32 ),
33]
36class Config(gws.base.search.finder.Config):
37 """GBD Geoservices search"""
39 apiKey: str
40 """API key."""
42class Object(gws.base.search.finder.Object):
43 supportsKeywordSearch = True
44 supportsGeometrySearch = True
46 def configure(self):
47 self.configure_models()
48 self.configure_templates()
50 def configure_templates(self):
51 return gws.config.util.configure_templates_for(self, extra=_DEFAULT_TEMPLATES)
53 def configure_models(self):
54 return gws.config.util.configure_models_for(self, with_default=True)
56 def create_model(self, cfg):
57 return self.create_child(
58 gws.ext.object.model,
59 cfg,
60 type=self.extType,
61 apiKey=self.cfg('apiKey'),
62 )