I'm trying without success to have a grid with two checkboxes.
The first checkbox (contactSelect) allows me to indicate which records
to select. the second indicates if the record is to be shared
(contactShare) (just something about the record).
My problem is that most checkbox clicks somehow affect the other
checkbox. This happens irrespectively of if I press contactSelect or
contactShare, and even affects records in different rows.
I can't seem to find a solution for this. Here's my bizobj code. Any ideas?
class ContactBizobj(dabo.biz.dBizobj):
def afterInit(self):
self.addFrom("contact")
self.addField("contact.mobile")
self.addField("contact.phone_ext")
self.addField("contact.title_id")
self.addField("contact.phone")
self.addField("contact.contact")
self.addField("contact.contact_status_id")
self.addField("contact.contact_type_id")
self.addField("contact.email")
self.addField("contact.job_title")
self.addField("contact.contact_id")
self.addField("contact.account_id")
self.addJoin("account", "contact.account_id =
account.account_id",
joinType="LEFT")
self.addField("account.account")
self.DataSource = "contact"
self.LinkField = "account_id"
self.KeyField = "contact_id"
self.NonUpdateFields=["contact_id"]
self.FillLinkFromParent = True
self.VirtualFields.update({'contactSelect': self.contactSelect,
'contactShare': self.contactShare})
def contactSelect(self):
if self.Record.contact_id in self.__selectedContactsToAssign:
# it's already selected, unselect
del
self.__selectedContactsToAssign[self.Record.contact_id]
return False
else:
# not selected, select it - "False" means it is not
shared
self.__selectedContactsToAssign[self.Record.contact_id]
= False
return True
def contactShare(self):
if self.Record.contact_id in self.__selectedContactsToAssign
and \
self.__selectedContactsToAssign[self.Record.contact_id] ==
False:
# not shared, share it - "True" means it is shared
self.__selectedContactsToAssign[self.Record.contact_id]
= True
return True
else:
return False
def validateRecord(self):
"""Returning anything other than an empty string from
this method will prevent the data from being saved.
"""
ret = ""
# Add your business rules here.
return ret
def initProperties(self):
self.__selectedContactsToAssign={}
TIA,
Miguel
_______________________________________________
Post Messages to: [email protected]
Subscription Maintenance: http://leafe.com/mailman/listinfo/dabo-users
Searchable Archives: http://leafe.com/archives/search/dabo-users
This message:
http://leafe.com/archives/byMID/[email protected]