app/soc/logic/key_name.py
changeset 213 75a8cc0200ad
parent 206 832335761384
child 222 63e5f42e2e83
equal deleted inserted replaced
212:8e208e326adb 213:75a8cc0200ad
    17 """Functions for composing Model entity key names.
    17 """Functions for composing Model entity key names.
    18 """
    18 """
    19 
    19 
    20 __authors__ = [
    20 __authors__ = [
    21   '"Todd Larsen" <tlarsen@google.com>',
    21   '"Todd Larsen" <tlarsen@google.com>',
       
    22   '"Pawel Solyga" <pawel.solyga@gmail.com>',
    22   ]
    23   ]
    23 
    24 
    24 
    25 
       
    26 import soc.models.club
       
    27 import soc.models.group
       
    28 import soc.models.organization
       
    29 import soc.models.school
       
    30 import soc.models.sponsor
    25 import soc.models.document
    31 import soc.models.document
    26 import soc.models.site_settings
    32 import soc.models.site_settings
    27 import soc.models.user
    33 import soc.models.user
    28 
    34 
    29 
    35 
    49   return '%(type)s:%(email)s' % {
    55   return '%(type)s:%(email)s' % {
    50       'type': soc.models.user.User.__name__,
    56       'type': soc.models.user.User.__name__,
    51       'email': email,
    57       'email': email,
    52       }
    58       }
    53 
    59 
       
    60 
       
    61 def nameSponsor(link_name):
       
    62   """Returns a Sponsor key name constructed from a supplied link name."""
       
    63   return '%(group)s/%(type)s:%(link_name)s' % {
       
    64       'group': soc.models.group.Group.__name__,
       
    65       'type': soc.models.sponsor.Sponsor.__name__,
       
    66       'link_name': link_name,
       
    67       }
       
    68 
       
    69 
       
    70 def nameSchool(sponsor_ln, program_ln, link_name):
       
    71   """Returns a School key name constructed from a supplied sponsor,
       
    72      program and school link names.
       
    73   """
       
    74   return '%(group)s/%(type)s:%(sponsor)s/%(program)s/%(link_name)s' % {
       
    75       'group': soc.models.group.Group.__name__,
       
    76       'type': soc.models.school.School.__name__,
       
    77       'sponsor': sponsor_ln,
       
    78       'program': program_ln,
       
    79       'link_name': link_name,
       
    80       }
       
    81 
       
    82 
       
    83 def nameOrganization(sponsor_ln, program_ln, link_name):
       
    84   """Returns a Organization key name constructed from a supplied sponsor,
       
    85      program and organization link names.
       
    86   """
       
    87   return '%(group)s/%(type)s:%(sponsor)s/%(program)s/%(link_name)s' % {
       
    88       'group': soc.models.group.Group.__name__,
       
    89       'type': soc.models.organization.Organization.__name__,
       
    90       'sponsor': sponsor_ln,
       
    91       'program': program_ln,
       
    92       'link_name': link_name,
       
    93       }
       
    94 
       
    95 
       
    96 def nameClub(link_name):
       
    97   """Returns a Club key name constructed from a supplied link name."""
       
    98   return '%(group)s/%(type)s:%(link_name)s' % {
       
    99       'group': soc.models.group.Group.__name__,
       
   100       'type': soc.models.sponsor.Sponsor.__name__,
       
   101       'link_name': link_name,
       
   102       }
       
   103