Changeset 112

Show
Ignore:
Timestamp:
10/23/07 07:19:47 (1 year ago)
Author:
David Rousselie <dax@happycoders.org>
Message:

Pre-fill registration form when registering IMAP folder

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • src/jmc/jabber/component.py

    r110 r112  
    8080            query = info_query.new_query("jabber:iq:register") 
    8181            if _account is not None: 
    82                 self.generate_registration_form_init(lang_class, 
    83                                                      _account).as_xml(query
     82                result = self.generate_registration_form_init(lang_class, 
     83                                                              _account
    8484            else: 
    85                 result = self.generate_registration_form(\ 
    86                     lang_class, 
    87                     IMAPAccount, 
    88                     bare_from_jid) 
     85                _account = account.get_account(bare_from_jid, name, 
     86                                               IMAPAccount) 
     87                if _account is not None: 
     88                    result = self.generate_registration_form_init(lang_class, 
     89                                                                  _account) 
     90                    result["name"].value = None 
     91                    result["name"].type = "text-single" 
     92                else: 
     93                    result = self.generate_registration_form(\ 
     94                        lang_class, 
     95                        IMAPAccount, 
     96                        bare_from_jid) 
    8997                result["mailbox"].value = imap_dir 
    90                 result.as_xml(query) 
     98            result.as_xml(query) 
    9199            return [info_query] 
    92100 
  • src/jmc/jabber/tests/component.py

    r111 r112  
    713713                                    jid="account11@jcl.test.com") 
    714714        account11.mailbox = "INBOX/dir1" 
     715        account11.password = "pass1" 
     716        account11.port = 993 
     717        account11.host = "host1" 
     718        account11.login = "login1" 
     719        account11.ssl = True 
     720        account11.interval = 1 
     721        account11.store_password = False 
     722        account11.live_email_only = True 
     723        account11.chat_action = PresenceAccount.DO_NOTHING 
     724        account11.online_action = PresenceAccount.DO_NOTHING 
     725        account11.away_action = PresenceAccount.DO_NOTHING 
     726        account11.xa_action = PresenceAccount.DO_NOTHING 
     727        account11.dnd_action = PresenceAccount.DO_NOTHING 
     728        account11.offline_action = PresenceAccount.DO_NOTHING         
    715729        account21 = MockIMAPAccount(user=User(jid="user2@test.com"), 
    716730                                    name="account21", 
     
    746760        self.assertEquals(field.children.content, "account11") 
    747761        self.assertEquals(field.children.next.name, "required") 
     762        field = fields[1] 
     763        self.assertEquals(field.prop("type"), "list-single") 
     764        self.assertEquals(field.prop("var"), "chat_action") 
     765        self.assertEquals(field.prop("label"), Lang.en.field_chat_action) 
     766        self.assertEquals(field.children.name, "value") 
     767        self.assertEquals(field.children.content, "0") 
     768        field = fields[2] 
     769        self.assertEquals(field.prop("type"), "list-single") 
     770        self.assertEquals(field.prop("var"), "online_action") 
     771        self.assertEquals(field.prop("label"), Lang.en.field_online_action) 
     772        self.assertEquals(field.children.name, "value") 
     773        self.assertEquals(field.children.content, "0") 
     774        field = fields[3] 
     775        self.assertEquals(field.prop("type"), "list-single") 
     776        self.assertEquals(field.prop("var"), "away_action") 
     777        self.assertEquals(field.prop("label"), Lang.en.field_away_action) 
     778        self.assertEquals(field.children.name, "value") 
     779        self.assertEquals(field.children.content, "0") 
     780        field = fields[4] 
     781        self.assertEquals(field.prop("type"), "list-single") 
     782        self.assertEquals(field.prop("var"), "xa_action") 
     783        self.assertEquals(field.prop("label"), Lang.en.field_xa_action) 
     784        self.assertEquals(field.children.name, "value") 
     785        self.assertEquals(field.children.content, "0") 
     786        field = fields[5] 
     787        self.assertEquals(field.prop("type"), "list-single") 
     788        self.assertEquals(field.prop("var"), "dnd_action") 
     789        self.assertEquals(field.prop("label"), Lang.en.field_dnd_action) 
     790        self.assertEquals(field.children.name, "value") 
     791        self.assertEquals(field.children.content, "0") 
     792        field = fields[6] 
     793        self.assertEquals(field.prop("type"), "list-single") 
     794        self.assertEquals(field.prop("var"), "offline_action") 
     795        self.assertEquals(field.prop("label"), Lang.en.field_offline_action) 
     796        self.assertEquals(field.children.name, "value") 
     797        self.assertEquals(field.children.content, "0") 
     798        field = fields[7] 
     799        self.assertEquals(field.prop("type"), "text-single") 
     800        self.assertEquals(field.prop("var"), "login") 
     801        self.assertEquals(field.prop("label"), Lang.en.field_login) 
     802        self.assertEquals(field.children.name, "value") 
     803        self.assertEquals(field.children.content, "login1") 
     804        self.assertEquals(field.children.next.name, "required") 
     805        field = fields[8] 
     806        self.assertEquals(field.prop("type"), "text-private") 
     807        self.assertEquals(field.prop("var"), "password") 
     808        self.assertEquals(field.prop("label"), Lang.en.field_password) 
     809        self.assertEquals(field.children.name, "value") 
     810        self.assertEquals(field.children.content, "pass1") 
     811        field = fields[9] 
     812        self.assertEquals(field.prop("type"), "text-single") 
     813        self.assertEquals(field.prop("var"), "host") 
     814        self.assertEquals(field.prop("label"), Lang.en.field_host) 
     815        self.assertEquals(field.children.name, "value") 
     816        self.assertEquals(field.children.content, "host1") 
     817        self.assertEquals(field.children.next.name, "required") 
     818        field = fields[10] 
     819        self.assertEquals(field.prop("type"), "text-single") 
     820        self.assertEquals(field.prop("var"), "port") 
     821        self.assertEquals(field.prop("label"), Lang.en.field_port) 
     822        self.assertEquals(field.children.name, "value") 
     823        self.assertEquals(field.children.content, "993") 
     824        field = fields[11] 
     825        self.assertEquals(field.prop("type"), "boolean") 
     826        self.assertEquals(field.prop("var"), "ssl") 
     827        self.assertEquals(field.prop("label"), Lang.en.field_ssl) 
     828        self.assertEquals(field.children.name, "value") 
     829        self.assertEquals(field.children.content, "1") 
     830        field = fields[12] 
     831        self.assertEquals(field.prop("type"), "boolean") 
     832        self.assertEquals(field.prop("var"), "store_password") 
     833        self.assertEquals(field.prop("label"), Lang.en.field_store_password) 
     834        self.assertEquals(field.children.name, "value") 
     835        self.assertEquals(field.children.content, "0") 
     836        field = fields[13] 
     837        self.assertEquals(field.prop("type"), "boolean") 
     838        self.assertEquals(field.prop("var"), "live_email_only") 
     839        self.assertEquals(field.prop("label"), Lang.en.field_live_email_only) 
     840        self.assertEquals(field.children.name, "value") 
     841        self.assertEquals(field.children.content, "1") 
     842        field = fields[14] 
     843        self.assertEquals(field.prop("type"), "text-single") 
     844        self.assertEquals(field.prop("var"), "interval") 
     845        self.assertEquals(field.prop("label"), Lang.en.field_interval) 
     846        self.assertEquals(field.children.name, "value") 
     847        self.assertEquals(field.children.content, "1") 
    748848        field = fields[15] 
    749849        self.assertEquals(field.prop("type"), "text-single") 
     
    762862                                   jid="account1@jcl.test.com") 
    763863        account1.maildir = "INBOX" 
     864        account1.password = "pass1" 
     865        account1.port = 993 
     866        account1.host = "host1" 
     867        account1.login = "login1" 
     868        account1.ssl = True 
     869        account1.interval = 1 
     870        account1.store_password = False 
     871        account1.live_email_only = True 
     872        account1.chat_action = PresenceAccount.DO_NOTHING 
     873        account1.online_action = PresenceAccount.DO_NOTHING 
     874        account1.away_action = PresenceAccount.DO_NOTHING 
     875        account1.xa_action = PresenceAccount.DO_NOTHING 
     876        account1.dnd_action = PresenceAccount.DO_NOTHING 
     877        account1.offline_action = PresenceAccount.DO_NOTHING         
    764878        account11 = MockIMAPAccount(user=user1, 
    765                                    name="account11", 
    766                                    jid="account11@jcl.test.com") 
     879                                    name="account11", 
     880                                    jid="account11@jcl.test.com") 
    767881        account11.maildir = "INBOX/dir1" 
    768882        account21 = MockIMAPAccount(user=User(jid="user2@test.com"), 
     
    798912        self.assertEquals(field.children.name, "required") 
    799913        self.assertEquals(field.children.next, None) 
     914        field = fields[1] 
     915        self.assertEquals(field.prop("type"), "list-single") 
     916        self.assertEquals(field.prop("var"), "chat_action") 
     917        self.assertEquals(field.prop("label"), Lang.en.field_chat_action) 
     918        self.assertEquals(field.children.name, "value") 
     919        self.assertEquals(field.children.content, "0") 
     920        field = fields[2] 
     921        self.assertEquals(field.prop("type"), "list-single") 
     922        self.assertEquals(field.prop("var"), "online_action") 
     923        self.assertEquals(field.prop("label"), Lang.en.field_online_action) 
     924        self.assertEquals(field.children.name, "value") 
     925        self.assertEquals(field.children.content, "0") 
     926        field = fields[3] 
     927        self.assertEquals(field.prop("type"), "list-single") 
     928        self.assertEquals(field.prop("var"), "away_action") 
     929        self.assertEquals(field.prop("label"), Lang.en.field_away_action) 
     930        self.assertEquals(field.children.name, "value") 
     931        self.assertEquals(field.children.content, "0") 
     932        field = fields[4] 
     933        self.assertEquals(field.prop("type"), "list-single") 
     934        self.assertEquals(field.prop("var"), "xa_action") 
     935        self.assertEquals(field.prop("label"), Lang.en.field_xa_action) 
     936        self.assertEquals(field.children.name, "value") 
     937        self.assertEquals(field.children.content, "0") 
     938        field = fields[5] 
     939        self.assertEquals(field.prop("type"), "list-single") 
     940        self.assertEquals(field.prop("var"), "dnd_action") 
     941        self.assertEquals(field.prop("label"), Lang.en.field_dnd_action) 
     942        self.assertEquals(field.children.name, "value") 
     943        self.assertEquals(field.children.content, "0") 
     944        field = fields[6] 
     945        self.assertEquals(field.prop("type"), "list-single") 
     946        self.assertEquals(field.prop("var"), "offline_action") 
     947        self.assertEquals(field.prop("label"), Lang.en.field_offline_action) 
     948        self.assertEquals(field.children.name, "value") 
     949        self.assertEquals(field.children.content, "0") 
     950        field = fields[7] 
     951        self.assertEquals(field.prop("type"), "text-single") 
     952        self.assertEquals(field.prop("var"), "login") 
     953        self.assertEquals(field.prop("label"), Lang.en.field_login) 
     954        self.assertEquals(field.children.name, "value") 
     955        self.assertEquals(field.children.content, "login1") 
     956        self.assertEquals(field.children.next.name, "required") 
     957        field = fields[8] 
     958        self.assertEquals(field.prop("type"), "text-private") 
     959        self.assertEquals(field.prop("var"), "password") 
     960        self.assertEquals(field.prop("label"), Lang.en.field_password) 
     961        self.assertEquals(field.children.name, "value") 
     962        self.assertEquals(field.children.content, "pass1") 
     963        field = fields[9] 
     964        self.assertEquals(field.prop("type"), "text-single") 
     965        self.assertEquals(field.prop("var"), "host") 
     966        self.assertEquals(field.prop("label"), Lang.en.field_host) 
     967        self.assertEquals(field.children.name, "value") 
     968        self.assertEquals(field.children.content, "host1") 
     969        self.assertEquals(field.children.next.name, "required") 
     970        field = fields[10] 
     971        self.assertEquals(field.prop("type"), "text-single") 
     972        self.assertEquals(field.prop("var"), "port") 
     973        self.assertEquals(field.prop("label"), Lang.en.field_port) 
     974        self.assertEquals(field.children.name, "value") 
     975        self.assertEquals(field.children.content, "993") 
     976        field = fields[11] 
     977        self.assertEquals(field.prop("type"), "boolean") 
     978        self.assertEquals(field.prop("var"), "ssl") 
     979        self.assertEquals(field.prop("label"), Lang.en.field_ssl) 
     980        self.assertEquals(field.children.name, "value") 
     981        self.assertEquals(field.children.content, "1") 
     982        field = fields[12] 
     983        self.assertEquals(field.prop("type"), "boolean") 
     984        self.assertEquals(field.prop("var"), "store_password") 
     985        self.assertEquals(field.prop("label"), Lang.en.field_store_password) 
     986        self.assertEquals(field.children.name, "value") 
     987        self.assertEquals(field.children.content, "0") 
     988        field = fields[13] 
     989        self.assertEquals(field.prop("type"), "boolean") 
     990        self.assertEquals(field.prop("var"), "live_email_only") 
     991        self.assertEquals(field.prop("label"), Lang.en.field_live_email_only) 
     992        self.assertEquals(field.children.name, "value") 
     993        self.assertEquals(field.children.content, "1") 
     994        field = fields[14] 
     995        self.assertEquals(field.prop("type"), "text-single") 
     996        self.assertEquals(field.prop("var"), "interval") 
     997        self.assertEquals(field.prop("label"), Lang.en.field_interval) 
     998        self.assertEquals(field.children.name, "value") 
     999        self.assertEquals(field.children.content, "1") 
    8001000        field = fields[15] 
    8011001        self.assertEquals(field.prop("type"), "text-single")