def get_post_data(api, json_election_id, json_election_id_to_name):
    from candidates.cache import get_post_cached
    from candidates.election_specific import AREA_DATA, AREA_POST_DATA
    json_election_name = json_election_id_to_name[json_election_id]
    ynr_election_id = {
        'Pre-candidatos a Presidente':
        'presidentes-argentina-paso-2015',
        'Pre-candidatos a Gobernador de Buenos Aires':
        'gobernadores-argentina-paso-2015',
        'Pre-candidatos a Gobernador de Tucumán':
        'gobernadores-argentina-paso-2015',
        'Pre-candidatos a Gobernador de Entre Ríos':
        'gobernadores-argentina-paso-2015',
        'Pre-Candidatos a Gobernador de San Juan':
        'gobernadores-argentina-paso-2015',
    }[json_election_name]
    ynr_election_data = Election.objects.get_by_slug(ynr_election_id)
    province = None
    m = re.search(r'a Gobernador de (?P<province>.*)', json_election_name)
    if m:
        province = m.group('province')
        areas_by_name = AREA_DATA.areas_by_name[('PRV', '1')]
        area = areas_by_name[strip_accents(province).upper()]
        post_id = AREA_POST_DATA.get_post_id(
            ynr_election_id, area['type'], area['id']
        )
    else:
        # It must be the presidential election:
        post_id = 'presidente'
    post_data = get_post_cached(api, post_id)['result']
    return ynr_election_data, post_data
Beispiel #2
0
def get_post_data(api, origin_post, origin_district):
    from candidates.cache import get_post_cached
    from candidates.election_specific import AREA_DATA, AREA_POST_DATA
    if ("SUPLENTE" in origin_post):
        return False, False

    ynr_election_id = {
        'DIPUTADO NACIONAL TITULAR':
        'diputados-argentina-paso-2015',
        'SENADOR NACIONAL TITULAR':
        'senadores-argentina-paso-2015',
        'PARLAMENTARIO MERCOSUR DISTRITO REGIONAL TITULAR':
        'parlamentarios-mercosur-regional-paso-2015',
        'PARLAMENTARIO MERCOSUR DISTRITO NACIONAL TITULAR':
        'parlamentarios-mercosur-unico-paso-2015'
    }[origin_post]
    ynr_election_data = Election.objects.get_by_slug(ynr_election_id)
    province = None

    if origin_district == "PARLAMENTARIO MERCOSUR DISTRITO NACIONAL(1)":
        post_id = 'pmeu'

    else:
        areas_by_name = AREA_DATA.areas_by_name[('PRV', '1')]
        area = areas_by_name[origin_district]
        post_id = AREA_POST_DATA.get_post_id(ynr_election_id, area['type'],
                                             area['id'])

    post_data = get_post_cached(api, post_id)['result']
    return ynr_election_data, post_data
def get_post_data(api, origin_post,origin_district):
    from candidates.cache import get_post_cached
    from candidates.election_specific import AREA_DATA, AREA_POST_DATA
    if ("SUPLENTE" in origin_post):
        return False, False;

    ynr_election_id = {
        'DIPUTADO NACIONAL TITULAR':
        'diputados-argentina-paso-2015',
        'SENADOR NACIONAL TITULAR':
        'senadores-argentina-paso-2015',
        'PARLAMENTARIO MERCOSUR DISTRITO REGIONAL TITULAR':
        'parlamentarios-mercosur-regional-paso-2015',
        'PARLAMENTARIO MERCOSUR DISTRITO NACIONAL TITULAR':
        'parlamentarios-mercosur-unico-paso-2015'


    }[origin_post]
    ynr_election_data = Election.objects.get_by_slug(ynr_election_id)
    province = None

    if origin_district == "PARLAMENTARIO MERCOSUR DISTRITO NACIONAL(1)":
        post_id = 'pmeu'

    else:
        areas_by_name = AREA_DATA.areas_by_name[('PRV', '1')]
        area = areas_by_name[origin_district]
        post_id = AREA_POST_DATA.get_post_id(
            ynr_election_id, area['type'], area['id']
        )

    post_data = get_post_cached(api, post_id)['result']
    return ynr_election_data, post_data
def all_posts_in_all_elections():
    """A generator function to yield data on every post for every election

    The purpose of this generator function is to iterate over every
    post that should exist and yield the post ID along with the
    election and area data it should be associated with.

    It might not be obvious that posts can appear in multiple
    elections; this means that you might get the same post ID yielded
    more than once, but with different election and area data."""

    for election_data in Election.objects.all():
        for area_type in election_data.area_types.all():
            area_tuple = (area_type.name, election_data.area_generation)
            for area_id, area in AREA_DATA.areas_by_id[area_tuple].items():
                post_id = AREA_POST_DATA.get_post_id(
                    election_data.slug, area_type, area_id
                )
                yield {
                    'election': election_data.slug,
                    'election_data': election_data,
                    'area_type': area_type,
                    'area_id': area_id,
                    'area': area,
                    'post_id': post_id,
                }
Beispiel #5
0
def get_post_data(api, json_election_id, json_election_id_to_name):
    from candidates.cache import get_post_cached
    from candidates.election_specific import AREA_DATA, AREA_POST_DATA
    json_election_name = json_election_id_to_name[json_election_id]
    ynr_election_id = {
        'Pre-candidatos a Presidente':
        'presidentes-argentina-paso-2015',
        'Pre-candidatos a Gobernador de Buenos Aires':
        'gobernadores-argentina-paso-2015',
        'Pre-candidatos a Gobernador de Tucumán':
        'gobernadores-argentina-paso-2015',
        'Pre-candidatos a Gobernador de Entre Ríos':
        'gobernadores-argentina-paso-2015',
        'Pre-Candidatos a Gobernador de San Juan':
        'gobernadores-argentina-paso-2015',
    }[json_election_name]
    ynr_election_data = Election.objects.get_by_slug(ynr_election_id)
    province = None
    m = re.search(r'a Gobernador de (?P<province>.*)', json_election_name)
    if m:
        province = m.group('province')
        areas_by_name = AREA_DATA.areas_by_name[('PRV', '1')]
        area = areas_by_name[strip_accents(province).upper()]
        post_id = AREA_POST_DATA.get_post_id(ynr_election_id, area['type'],
                                             area['id'])
    else:
        # It must be the presidential election:
        post_id = 'presidente'
    post_data = get_post_cached(api, post_id)['result']
    return ynr_election_data, post_data
def get_post_data(api, json_election_id, json_election_id_to_name):
    json_election_name = json_election_id_to_name[json_election_id]
    ynr_election_id = {
        u'Pre-candidatos a Presidente':
        'presidentes-argentina-paso-2015',
        u'Pre-candidatos a Gobernador de Buenos Aires':
        'gobernadores-argentina-paso-2015',
        u'Pre-candidatos a Gobernador de Tucumán':
        'gobernadores-argentina-paso-2015',
        u'Pre-candidatos a Gobernador de Entre Ríos':
        'gobernadores-argentina-paso-2015',
        u'Pre-Candidatos a Gobernador de San Juan':
        'gobernadores-argentina-paso-2015',
    }[json_election_name]
    ynr_election_data = settings.ELECTIONS[ynr_election_id]
    ynr_election_data['id'] = ynr_election_id
    province = None
    m = re.search(r'a Gobernador de (?P<province>.*)', json_election_name)
    if m:
        province = m.group('province')
        mapit_areas_by_name = MAPIT_DATA.areas_by_name[('PRV', 1)]
        mapit_area = mapit_areas_by_name[strip_accents(province).upper()]
        post_id = AREA_POST_DATA.get_post_id(
            ynr_election_id, mapit_area['type'], mapit_area['id']
        )
    else:
        # It must be the presidential election:
        post_id = 'presidente'
    post_data = get_post_cached(api, post_id)['result']
    return ynr_election_data, post_data
 def handle_mapit_type(self, election, election_data, mapit_type, **options):
     post_label_format = _('{post_role} for {area_name}')
     if options['post_label']:
         post_label_format = options['post_label']
     mapit_tuple = (mapit_type, election_data['mapit_generation'])
     for id, area in MAPIT_DATA.areas_by_id[mapit_tuple].items():
         post_id = AREA_POST_DATA.get_post_id(
             election, mapit_type, id
         )
         role = election_data['for_post_role']
         area_mapit_url = settings.MAPIT_BASE_URL + 'area/' + str(area['id'])
         post_data = {
             'role': role,
             'id': post_id,
             'label': post_label_format.format(
                 post_role=role, area_name=area['name']
             ),
             'area': {
                 'name': area['name'],
                 'id': 'mapit:' + str(area['id']),
                 'identifier': area_mapit_url,
             },
             'organization_id': election_data['organization_id'],
         }
         create_or_update(self.api.posts, post_data)
Beispiel #8
0
def get_post_data(api, json_election_id, json_election_id_to_name):
    json_election_name = json_election_id_to_name[json_election_id]
    ynr_election_id = {
        u'Pre-candidatos a Presidente':
        'presidentes-argentina-paso-2015',
        u'Pre-candidatos a Gobernador de Buenos Aires':
        'gobernadores-argentina-paso-2015',
        u'Pre-candidatos a Gobernador de Tucumán':
        'gobernadores-argentina-paso-2015',
        u'Pre-candidatos a Gobernador de Entre Ríos':
        'gobernadores-argentina-paso-2015',
        u'Pre-Candidatos a Gobernador de San Juan':
        'gobernadores-argentina-paso-2015',
    }[json_election_name]
    ynr_election_data = settings.ELECTIONS[ynr_election_id]
    ynr_election_data['id'] = ynr_election_id
    province = None
    m = re.search(r'a Gobernador de (?P<province>.*)', json_election_name)
    if m:
        province = m.group('province')
        mapit_areas_by_name = MAPIT_DATA.areas_by_name[('PRV', 1)]
        mapit_area = mapit_areas_by_name[strip_accents(province).upper()]
        post_id = AREA_POST_DATA.get_post_id(ynr_election_id,
                                             mapit_area['type'],
                                             mapit_area['id'])
    else:
        # It must be the presidential election:
        post_id = 'presidente'
    post_data = get_post_cached(api, post_id)['result']
    return ynr_election_data, post_data
def get_post_data(api, election_id, province):
    ynr_election_data = Election.objects.get_by_slug(election_id)
    area_key = (ynr_election_data.area_types.first().name,
                 ynr_election_data.area_generation)
    areas_by_name = AREA_DATA.areas_by_name[area_key]
    if province != 'Burkina Faso':
        province = strip_accents(province).upper()
    area = areas_by_name[province]
    post_id = AREA_POST_DATA.get_post_id(
        election_id, area['type'], area['id']
    )
    post_data = get_post_cached(api, post_id)['result']
    return ynr_election_data, post_data
Beispiel #10
0
def get_post_data(api, election_id, province):
    from candidates.cache import get_post_cached
    from candidates.election_specific import AREA_DATA, AREA_POST_DATA
    ynr_election_data = Election.objects.get_by_slug(election_id)
    area_key = (ynr_election_data.area_types.first().name,
                ynr_election_data.area_generation)
    areas_by_name = AREA_DATA.areas_by_name[area_key]
    if province != 'Burkina Faso':
        province = strip_accents(province).upper()
    area = areas_by_name[province]
    post_id = AREA_POST_DATA.get_post_id(election_id, area['type'], area['id'])
    post_data = get_post_cached(api, post_id)['result']
    return ynr_election_data, post_data
 def handle_mapit_type(self, election, election_data, mapit_type):
     mapit_tuple = (mapit_type, election_data['mapit_generation'])
     for id, area in MAPIT_DATA.areas_by_id[mapit_tuple].items():
         post_id = AREA_POST_DATA.get_post_id(
             election, mapit_type, id
         )
         role = election_data['for_post_role']
         area_mapit_url = settings.MAPIT_BASE_URL + 'area/' + str(area['id'])
         post_data = {
             'role': role,
             'id': post_id,
             'label': role + u' por ' + area['name'],
             'area': {
                 'name': area['name'],
                 'id': 'mapit:' + str(area['id']),
                 'identifier': area_mapit_url,
             },
             'organization_id': election_data['organization_id'],
         }
         create_or_update(self.api.posts, post_data)