# coding: utf-8
import ru.curs.lyra.BasicCardForm as BasicCardForm
class CardForm(BasicCardForm):
u'''Basic class for a card form'''
def __init__(self, context):
BasicCardForm.__init__(self, context)
def setContext(self, session, main, add, elemetId):
self.session = session
self.main = main
self.add = add
self.elemetId = elemetId
def _beforeShow(self, context):
'''Override this method to implement some actions
to be performed before the grid is shown or refreshed,
e. g. position cursor to a certain record'''
pass
typedict = {'INT': 'int',
'REAL': 'decimal',
'VARCHAR': 'string',
'TEXT': 'string',
'BLOB': 'string',
'DATETIME': 'dateTime',
'BIT': 'boolean'
}
hdr = '''
Lyra form
'''
body1 = '''
'''
body2 = '''
'''
def _buildBinds(self, formTemplate):
formTemplate += '''
'''
return formTemplate
def _buildControls(self, formTemplate):
for c in self.getFieldsMeta().values():
if c.isVisible():
formTemplate += """\n"""
tag = 'textarea' if c.getType().toString() == 'TEXT' else 'input'
formTemplate += ''' \n''' % (tag, c.getName())
formTemplate += ' %s\n' % c.getCaption()
formTemplate += '
\n' % tag
return formTemplate
def _buildForm(self):
formTemplate = self.hdr
formTemplate += ''
# БИНДЫ ТУТ
formTemplate = self._buildBinds(formTemplate)
formTemplate += '''
'''
formTemplate += "\n"
formTemplate += self.body1
formTemplate = self._buildControls(formTemplate)
formTemplate += self.body2
return formTemplate
def getActions(self):
return u''
def _beforeSending(self, c):
'''Override this method to implement some actions
to be performed before data XML serialization and sending to client'''
pass
def _afterReceiving(self, c):
'''Override this method to implement some actions
to be performed after XML data being received from client and deserialized'''
pass