Coverage for gws-app/gws/plugin/gbd_geoservices/finder.py: 0%
22 statements
« prev ^ index » next coverage.py v7.8.0, created at 2025-04-17 01:37 +0200
« prev ^ index » next coverage.py v7.8.0, created at 2025-04-17 01:37 +0200
1"""GBD Geoservices finder.
2"""
4import gws
5import gws.base.search
6import gws.base.template
7import gws.config.util
8import gws.lib.net
11gws.ext.new.finder('gbd_geoservices')
13_DEFAULT_TEMPLATES = [
14 gws.Config(
15 subject='feature.teaser',
16 type='html',
17 text='''
18 <p>{title}</p>
19 '''
20 ),
21 gws.Config(
22 subject='feature.description',
23 type='html',
24 text='''
25 <p class="head2">{title}</p>
26 <table>
27 @for k, v in feature.attributes
28 <tr><td>{k}</td><td>{v | html}</td></tr>
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 )