def get_template_context_showing_all_events(self): events = EventManager.get_event_list() + EventManager.get_event_list(recent = True) context = dict() context['events'] = events context['showingAllEvents'] = True context['sidebar_active'] = "allEvent" return context
def post(self): user_id = int(self.request.get('user_id')) event_keys = self.request.get('events', allow_multiple=True) email = self.request.get('email') already_sent = memcache.get_daily_sent_ids() if not user_id or not email: logging.debug('NO POST DATAS PROVIDED') return if user_id in already_sent: return events = filter(lambda event: event['key'] in event_keys, EventManager.get_event_list(filtered_by='today')) print(events) user = UserManager.get_user_friendly(id =user_id) if not user_id or not email: logging.debug('NO POST DATAS PROVIDED') return html_email = self.get_html_email(user, events) subject = self.get_subject(user) non_html_email = self.get_non_html_email(user) from main import debug if not debug: sender.send('EventBuck Rappel','*****@*****.**', subject, text=non_html_email, html=html_email, receiver_email=email, receiver_name=user['fullname']) memcache.add_daily_sent(user_id)
def get_user_event_dict(self): """ Get a dict of user_id as key and dict of list of events they are attending today and their email as value """ events = EventManager.get_event_list(filtered_by='today') user_event_dict = {} already_in_dict = [] no_send = [] for event in events: event_key = ndb.Key(urlsafe=event['key']) user_ids = AttendanceManager.get_users_id_attending(event_key) if user_ids: for an_id in user_ids: if an_id in already_in_dict: user_event_dict[an_id]['events'].append(event['key']) else: if not an_id in no_send: user_notif = NotifSettings.get_settings_for(user_id=an_id) if user_notif.daily_alert: user_event_dict[an_id] = {} user_event_dict[an_id]['email'] = user_notif.email_to_use user_event_dict[an_id]['events'] = [event['key']] already_in_dict.append(an_id) else: no_send.append(an_id) return user_event_dict
def get(self): weekly_events = EventManager.get_event_list(filtered_by='week') if weekly_events: taskqueue.add(url='/tasks/notification/weekly/start') self.render_template('ebdigest.html', {'event_list': weekly_events})
def get(self, *args, **kargs): filter_key = self.request.get('filter_key') sort_order = self.request.get('sort_order') tab = self.request.route_kwargs.get('page') if self.user: events = EventManager.get_events_not_attending( user_id=self.user_info['user_id'], category = tab, filtered_by = filter_key, ordered_by = sort_order) else: events = EventManager.get_event_list(category = tab, filtered_by = filter_key, ordered_by = sort_order) self.prepare_and_serve_events(events)
def get_index_context(self, tab=None): context = {} context['active_submenu'] = tab if tab else 'all' context['events'] = EventManager.get_event_list(category = tab) return context
def post(self): self.add_task() events = EventManager.get_event_list(filtered_by='today') self.render_template('ebdigest.html', {'event_list': events})
def get(self): today_events = EventManager.get_event_list(filtered_by = 'today') if today_events: task = taskqueue.add(url='/tasks/notification/daily/start') self.render_template('ebdigest.html', {'event_list': today_events})
def get_html_email(self, user): events = EventManager.get_event_list(filtered_by = 'week') return (jinja_environment.get_template('ebdigest.html').render({'event_list': events, 'user':user, 'subject':self.get_subject(user) }))