def __init__(self, *args, **kwargs): self.meeting = kwargs.pop('meeting', None) super(MediaParticipantBaseForm, self).__init__(*args, **kwargs) lang = flask.request.args.get('lang', 'en') category_values = [ (c.data['id'], c.decoded_data['name_%s' % LANG.get(lang, 'E')]) for c in self.meeting.get_categories('media') ] self.personal_category.choices = category_values countries_query = Country.select().order_by( ("(data -> '%s')" % lang, "ASC")) countries = [ (c.data['iso'], c.decoded_data.get(lang)) for c in countries_query] countries.insert(0, ('', _('Please select a country'))) self.personal_country.choices = countries locale = LOCALE.get(lang, 'en') self.attending_dates.choices = [ (day.strftime("%Y-%m-%d"), format_date(day, format="EEEE, MMMM d", locale=locale),) for day in daterange(self.meeting.data['info_date_start'], self.meeting.data['info_date_end'])]
def test_check_request_funding_categ_and_country_request_funding_fails(self): self.create_category(1, { 'name_E': 'Category', 'id': '2000', 'room': 'NULL', 'badge_color': 'blue stripe', 'form_type': 'country', 'request_funding_with_country': '1', }).category.id country_code = Country.select().get().data['iso'] resp = self.client.post( '/meeting/1/participant/form/check_request_funding', data={ 'category_id': '2000', 'country_code': country_code }) self.assertEqual(200, resp.status_code) self.assertFalse(json.loads(resp.data)['request_funding'])
def __init__(self, *args, **kwargs): meeting = kwargs.pop('meeting', None) lang = flask.request.args.get('lang', 'en') super(ParticipantForm, self).__init__(*args, **kwargs) if meeting: category_values = [(c.data['id'], c) for c in meeting.get_categories('person')] countries = [(c.data['iso'], c.decoded_data.get(lang, 'en')) for c in Country.select(). order_by(("(data -> '%s')" % lang, "ASC"))] countries.insert(0, ('', _('Please select a country'))) self.personal_category.choices = category_values self.personal_country.choices = countries self.representing_country.choices = countries
def _get_meeting_description(meeting, lang): lang_codes = {'E': 'en', 'S': 'es', 'F': 'fr'} meeting_description_pattern = u"{description}\n{city} ({country}), {start}-{end} {year}" if (meeting.data.get('info_date_start') and meeting.data.get('info_date_end')): date_start = datetime.strptime(meeting.data['info_date_start'], '%Y-%m-%d') date_end = datetime.strptime(meeting.data['info_date_end'], '%Y-%m-%d') meeting_month_start = int(date_start.strftime('%m')) - 1 meeting_month_end = int(date_end.strftime('%m')) - 1 if meeting_month_start == meeting_month_end: start = date_start.strftime('%d') end = '%s %s %s' % ( date_end.strftime('%d'), ('de' if lang=='S' else ''), refdata.i18n_months[meeting_month_start][lang]) else: start = '%s %s %s' % ( date_start.strftime('%d'), ('de' if lang=='S' else ''), refdata.i18n_months[meeting_month_start][lang]) end = '%s %s %s' % ( date_end.strftime('%d'), ('de' if lang=='S' else ''), refdata.i18n_months[meeting_month_end][lang]) year = date_start.strftime('%Y') else: start = end = month = year = '' country = Country.select().where(data__contains={'iso': meeting.decoded_data['info_venue_country'] }).get() return meeting_description_pattern.format( description=meeting.decoded_data['info_description_' + lang], city=meeting.decoded_data['info_venue_city_' + lang], country=country.decoded_data[lang_codes[lang]], start=start, end=end, year=year)
def get_country_name(eval_ctx, country_code): try: country = Country.select().get(data__contains={'iso': country_code}) except Country.DoesNotExist: return country_code return country