Skip to content

Commit 390104d

Browse files
authored
Merge pull request #38 from vesellov/master
updated rpc_client.cmd_contact_create() and rpc_client.cmd_contact_update() commands
2 parents 8349302 + 56abf04 commit 390104d

File tree

1 file changed

+74
-66
lines changed

1 file changed

+74
-66
lines changed

src/epp/rpc_client.py

+74-66
Original file line numberDiff line numberDiff line change
@@ -401,7 +401,7 @@ def cmd_contact_info(contact_id, auth_info=None, **args):
401401
return run(cmd, **args)
402402

403403

404-
def cmd_contact_create(contact_id, email=None, voice=None, fax=None, auth_info=None, contacts_list=[], **args):
404+
def cmd_contact_create(contact_id, email=None, voice=None, fax=None, auth_info=None, contacts_list=[], include_international=True, include_local=True, **args):
405405
"""
406406
contacts_list item :
407407
{
@@ -431,42 +431,46 @@ def cmd_contact_create(contact_id, email=None, voice=None, fax=None, auth_info=N
431431
cmd['args']['email'] = email
432432
if auth_info is not None:
433433
cmd['args']['auth_info'] = auth_info
434-
for cont in contacts_list[:]:
435-
international = copy.deepcopy(cont)
436-
international['type'] = 'int'
437-
if 'name' in international:
438-
international['name'] = '%s' % _tr(international['name'])
439-
if 'org' in international:
440-
international['org'] = '%s' % _tr(international['org'])
441-
if 'city' in international['address']:
442-
international['address']['city'] = '%s' % _tr(international['address']['city'])
443-
if 'sp' in international['address']:
444-
international['address']['sp'] = '%s' % _tr(international['address']['sp'])
445-
if 'pc' in international['address']:
446-
international['address']['pc'] = '%s' % _tr(international['address']['pc'])
447-
for i in range(len(international['address']['street'])):
448-
international['address']['street'][i] = '%s' % _tr(international['address']['street'][i])
449-
cmd['args']['contacts'].append(international)
450-
for cont in contacts_list[:]:
451-
loc = copy.deepcopy(cont)
452-
loc['type'] = 'loc'
453-
if 'name' in loc:
454-
loc['name'] = _enc(loc['name'])
455-
if 'org' in loc:
456-
loc['org'] = _enc(loc['org'])
457-
if 'city' in loc['address']:
458-
loc['address']['city'] = '%s' % _enc(loc['address']['city'])
459-
if 'sp' in loc['address']:
460-
loc['address']['sp'] = '%s' % _enc(loc['address']['sp'])
461-
if 'pc' in loc['address']:
462-
loc['address']['pc'] = '%s' % _enc(loc['address']['pc'])
463-
for i in range(len(loc['address']['street'])):
464-
loc['address']['street'][i] = '%s' % _enc(loc['address']['street'][i])
465-
cmd['args']['contacts'].append(loc)
434+
if not include_international and not include_local:
435+
include_international = True
436+
if include_international:
437+
for cont in contacts_list[:]:
438+
international = copy.deepcopy(cont)
439+
international['type'] = 'int'
440+
if 'name' in international:
441+
international['name'] = '%s' % _tr(international['name'])
442+
if 'org' in international:
443+
international['org'] = '%s' % _tr(international['org'])
444+
if 'city' in international['address']:
445+
international['address']['city'] = '%s' % _tr(international['address']['city'])
446+
if 'sp' in international['address']:
447+
international['address']['sp'] = '%s' % _tr(international['address']['sp'])
448+
if 'pc' in international['address']:
449+
international['address']['pc'] = '%s' % _tr(international['address']['pc'])
450+
for i in range(len(international['address']['street'])):
451+
international['address']['street'][i] = '%s' % _tr(international['address']['street'][i])
452+
cmd['args']['contacts'].append(international)
453+
if include_local:
454+
for cont in contacts_list[:]:
455+
loc = copy.deepcopy(cont)
456+
loc['type'] = 'loc'
457+
if 'name' in loc:
458+
loc['name'] = _enc(loc['name'])
459+
if 'org' in loc:
460+
loc['org'] = _enc(loc['org'])
461+
if 'city' in loc['address']:
462+
loc['address']['city'] = '%s' % _enc(loc['address']['city'])
463+
if 'sp' in loc['address']:
464+
loc['address']['sp'] = '%s' % _enc(loc['address']['sp'])
465+
if 'pc' in loc['address']:
466+
loc['address']['pc'] = '%s' % _enc(loc['address']['pc'])
467+
for i in range(len(loc['address']['street'])):
468+
loc['address']['street'][i] = '%s' % _enc(loc['address']['street'][i])
469+
cmd['args']['contacts'].append(loc)
466470
return run(cmd, **args)
467471

468472

469-
def cmd_contact_update(contact_id, email=None, voice=None, fax=None, auth_info=None, contacts_list=[], **args):
473+
def cmd_contact_update(contact_id, email=None, voice=None, fax=None, auth_info=None, contacts_list=[], include_international=True, include_local=True, **args):
470474
"""
471475
contacts_list item :
472476
{
@@ -496,38 +500,42 @@ def cmd_contact_update(contact_id, email=None, voice=None, fax=None, auth_info=N
496500
cmd['args']['email'] = email
497501
if auth_info is not None:
498502
cmd['args']['auth_info'] = auth_info
499-
for cont in contacts_list[:]:
500-
international = copy.deepcopy(cont)
501-
international['type'] = 'int'
502-
if 'name' in international:
503-
international['name'] = '%s' % _tr(international['name'])
504-
if 'org' in international:
505-
international['org'] = '%s' % _tr(international['org'])
506-
if 'city' in international['address']:
507-
international['address']['city'] = '%s' % _tr(international['address']['city'])
508-
if 'sp' in international['address']:
509-
international['address']['sp'] = '%s' % _tr(international['address']['sp'])
510-
if 'pc' in international['address']:
511-
international['address']['pc'] = '%s' % _tr(international['address']['pc'])
512-
for i in range(len(international['address']['street'])):
513-
international['address']['street'][i] = '%s' % _tr(international['address']['street'][i])
514-
cmd['args']['contacts'].append(international)
515-
for cont in contacts_list[:]:
516-
loc = copy.deepcopy(cont)
517-
loc['type'] = 'loc'
518-
if 'name' in loc:
519-
loc['name'] = _enc(loc['name'])
520-
if 'org' in loc:
521-
loc['org'] = _enc(loc['org'])
522-
if 'city' in loc['address']:
523-
loc['address']['city'] = '%s' % _enc(loc['address']['city'])
524-
if 'sp' in loc['address']:
525-
loc['address']['sp'] = '%s' % _enc(loc['address']['sp'])
526-
if 'pc' in loc['address']:
527-
loc['address']['pc'] = '%s' % _enc(loc['address']['pc'])
528-
for i in range(len(loc['address']['street'])):
529-
loc['address']['street'][i] = '%s' % _enc(loc['address']['street'][i])
530-
cmd['args']['contacts'].append(loc)
503+
if not include_international and not include_local:
504+
include_international = True
505+
if include_international:
506+
for cont in contacts_list[:]:
507+
international = copy.deepcopy(cont)
508+
international['type'] = 'int'
509+
if 'name' in international:
510+
international['name'] = '%s' % _tr(international['name'])
511+
if 'org' in international:
512+
international['org'] = '%s' % _tr(international['org'])
513+
if 'city' in international['address']:
514+
international['address']['city'] = '%s' % _tr(international['address']['city'])
515+
if 'sp' in international['address']:
516+
international['address']['sp'] = '%s' % _tr(international['address']['sp'])
517+
if 'pc' in international['address']:
518+
international['address']['pc'] = '%s' % _tr(international['address']['pc'])
519+
for i in range(len(international['address']['street'])):
520+
international['address']['street'][i] = '%s' % _tr(international['address']['street'][i])
521+
cmd['args']['contacts'].append(international)
522+
if include_local:
523+
for cont in contacts_list[:]:
524+
loc = copy.deepcopy(cont)
525+
loc['type'] = 'loc'
526+
if 'name' in loc:
527+
loc['name'] = _enc(loc['name'])
528+
if 'org' in loc:
529+
loc['org'] = _enc(loc['org'])
530+
if 'city' in loc['address']:
531+
loc['address']['city'] = '%s' % _enc(loc['address']['city'])
532+
if 'sp' in loc['address']:
533+
loc['address']['sp'] = '%s' % _enc(loc['address']['sp'])
534+
if 'pc' in loc['address']:
535+
loc['address']['pc'] = '%s' % _enc(loc['address']['pc'])
536+
for i in range(len(loc['address']['street'])):
537+
loc['address']['street'][i] = '%s' % _enc(loc['address']['street'][i])
538+
cmd['args']['contacts'].append(loc)
531539
return run(cmd, **args)
532540

533541

0 commit comments

Comments
 (0)