def addressbook_add_contact_to_group(group_id, contact_id): contact = Contact.get(id=int(contact_id)) group = Group.get(id=int(group_id)) data = {'contact': contact.to_dict(), 'group': group.to_dict()} subst = {'contact': contact.display_name(), 'group': group.display_name()} if ContactGroup.filter(contact=contact, group=group).count(): dict_return(data, INFO, u"%(contact)s fait déjà parti du groupe %(group)s." % subst, message_html=u"<strong>%(contact)s</strong> fait déjà " u"parti du groupe " u"<strong>%(group)s</strong>." % subst) else: cg = ContactGroup(contact=contact, group=group) try: cg.save() dict_return(data, SUCCESS, u"%(contact)s a été ajouté au groupe %(group)s." % subst, message_html=u"<strong>%(contact)s</strong> a été " u"ajouté au groupe " u"<strong>%(group)s</strong>." % subst) except Exception as e: subst.update({'err': e.message}) dict_return(data, ERROR, u"Impossible d'ajouter %(contact)s au groupe " u"%(group)s: %(err)r" % subst, message_html=u"Impossible d'ajouter " u"<strong>%(contact)s</strong> au " u"groupe <strong>%(group)s</strong>:<br />" u"<em>%(err)r</em>" % subst) return json.dumps(data)