Ignore:
Timestamp:
24 Oct 2006, 16:32:10 (18 years ago)
Author:
joachim
Message:

added pay-hostel-maintainance fee

File:
1 edited

Legend:

Unmodified
Added
Removed
  • WAeUP_SRP/trunk/Widgets.py

    r714 r742  
    340340    prefix = ''
    341341    reference = ''
    342    
    343342    def prepare(self, datastructure, **kw): ###(
    344343        """Prepare datastructure from datamodel."""
     
    346345        v = datamodel[self.fields[0]]
    347346        widget_id = self.getWidgetId()
    348         if v and type(v) is StringType:
    349             p,b,n = v.split('-')
    350             v = ScratchCardPin(v,b,n)
     347        #import pdb;pdb.set_trace()
     348##        if v and type(v) is StringType:
     349##            p,b,n = v.split('-')
     350##            v = ScratchCardPin(v,b,n)
    351351        if v:
     352            p = '%s' % v.p
    352353            b = '%s' % v.b
    353354            n = '%s' % v.n
    354355        else:
     356            p = self.prefix
     357            if p.startswith('@'):
     358                p = getattr(self,self.prefix[1:])()
    355359            b = n = ''
     360            v = ScratchCardPin(p,b,n)
    356361        datastructure[widget_id] = v
     362        datastructure[widget_id+'_p'] = p
    357363        datastructure[widget_id+'_b'] = b
    358364        datastructure[widget_id+'_n'] = n
     
    362368    def validate(self, datastructure, **kw):
    363369        """Validate datastructure and update datamodel."""
     370        #import pdb;pdb.set_trace()
    364371        widget_id = self.getWidgetId()
    365372        v = datastructure[widget_id]
    366373        err = 0
    367         p = self.prefix
     374        prefix= self.prefix
     375        if prefix.startswith('@'):
     376            prefix= getattr(self,self.prefix[1:])()
    368377        b = datastructure[widget_id+'_b'].strip()
    369378        n = datastructure[widget_id+'_n'].strip()
    370379        pins = self.portal_pins
    371         pin = "%(p)s%(b)s%(n)s" % vars()
     380        pin = "%(prefix)s%(b)s%(n)s" % vars()
    372381        if self.reference == "":
    373382            ref = str(self.portal_membership.getAuthenticatedMember())
    374383        else:
    375384            ref = datastructure[self.reference]
    376         #import pdb;pdb.set_trace()
    377         ok = pins.searchAndSetRecord(pin,ref,self.prefix)
     385        ok = pins.searchAndSetRecord(pin,ref,prefix)
    378386        while 1:
    379387            if ok == -2:
     
    406414        else:
    407415            datamodel = datastructure.getDataModel()
    408             datamodel[self.fields[0]] = ScratchCardPin(self.prefix,b,n)
    409             datastructure[widget_id] = ScratchCardPin(self.prefix,b,n)
     416            datamodel[self.fields[0]] = ScratchCardPin(prefix,b,n)
     417            datastructure[widget_id] = ScratchCardPin(prefix,b,n)
     418            datastructure[widget_id+'_p'] = prefix
    410419            datastructure[widget_id+'_b'] = b
    411420            datastructure[widget_id+'_n'] = n
    412421            datastructure['s_id'] = s_id
    413         #import pdb;pdb.set_trace()
    414422        return not err
    415423
     
    428436        v = datamodel[self.fields[0]]
    429437        if v and type(v) is StringType:
    430             p,b,n = v.split('-')
    431             v = ScratchCardPin(p,b,n)
     438            prefix,b,n = v.split('-')
     439            v = ScratchCardPin(prefix,b,n)
    432440        if v:
     441            prefix= '%s' % v.p
    433442            b = '%s' % v.b
    434443            n = '%s' % v.n
    435444        else:
     445            prefix= self.prefix
     446            if prefix.startswith('@'):
     447                prefix= getattr(self,self.prefix[1:])()
    436448            b = n = ''
    437         if mode in ['edit', 'create']:
    438             widget_id = self.getWidgetId()
    439             datastructure[widget_id] = v
    440             datastructure[widget_id+'_b'] = b
    441             datastructure[widget_id+'_n'] = n
     449            v = ScratchCardPin(prefix,b,n)
     450        widget_id = self.getWidgetId()
     451        datastructure[widget_id] = v
     452        datastructure[widget_id+'_p'] = prefix
     453        datastructure[widget_id+'_b'] = b
     454        datastructure[widget_id+'_n'] = n
    442455        return meth(mode=mode,
    443456                    datastructure=datastructure,
    444                     prefix=self.prefix,
    445457                    )
    446458    ###)
Note: See TracChangeset for help on using the changeset viewer.