Better infrastructure
[handlerosm.git] / ModuleOsm.py
blob845b4b6836c360692c813f05024cbbd865b6165c
1 from Form import *
2 from Table import *
3 from Module import *
4 from validations import *
6 NOTE_READ_ONLY = 'Never write to the database.'
7 NOTE_DB_HOSTNAME = 'The hostname of your database server.'
8 NOTE_DB_PORT = 'The port your database server listens on.'
9 NOTE_DB_USERNAME = 'The username you want to connect to your database.'
10 NOTE_DB_PASSWORD = 'The password to connect to your database (warning security risk).'
11 NOTE_DB_NAME = 'The database you want to connect to.'
13 class ModuleOsmBase (Module, FormHelper):
14 PROPERTIES = [
15 'read_only',
16 'db_hostname',
17 'db_port',
18 'db_username',
19 'db_password',
20 'db_name'
23 def __init__ (self, cfg, prefix, name, submit_url):
24 FormHelper.__init__ (self, name, cfg)
25 Module.__init__ (self, name, cfg, prefix, submit_url)
27 def _op_render (self):
28 txt = "<h2>Osm options</h2>"
30 table = TableProps()
31 self.AddPropEntry (table, "DB Hostname", "%s!db_hostname" % (self._prefix), NOTE_DB_HOSTNAME)
32 self.AddPropEntry (table, "DB Port", "%s!db_port" % (self._prefix), NOTE_DB_PORT)
33 self.AddPropEntry (table, "DB Username", "%s!db_username" % (self._prefix), NOTE_DB_USERNAME)
34 self.AddPropEntry (table, "DB Password", "%s!db_password" % (self._prefix), NOTE_DB_PASSWORD)
35 self.AddPropEntry (table, "DB Name", "%s!db_name" % (self._prefix), NOTE_DB_NAME)
36 self.AddPropCheck (table, "Read Only", "%s!read_only" % (self._prefix), True, NOTE_READ_ONLY)
37 txt += self.Indent(table)
39 return txt
41 def _op_apply_changes (self, uri, post):
42 checkboxes = ['read_only']
43 self.ApplyChangesPrefix (self._prefix, checkboxes, post)
45 class ModuleOsm (ModuleOsmBase):
46 def __init__ (self, cfg, prefix, submit_url):
47 ModuleOsmBase.__init__ (self, cfg, prefix, 'osm', submit_url)
49 def _op_render (self):
50 return ModuleOsmBase._op_render (self)
52 def _op_apply_changes (self, uri, post):
53 return ModuleOsmBase._op_apply_changes (self, uri, post)