# 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