def post(self): user = users.get_current_user() user_prefs = UserPrefs.all().filter('google_account =', user).get() if user_prefs is None: return self.error(404) bot_id = self.request.get('bot_id') if bot_id == '_custom': custom_bot_id = self.request.get('custom_bot_id') bot = BotPrefs.all().filter('bot_id =', custom_bot_id).get() logging.info('Custom Bot ID: %s' % custom_bot_id) else: bot = BotPrefs.all().filter('bot_id =', bot_id).get() logging.info('Bot ID: %s' % bot_id) if bot is not None: user_prefs.bot_prefs_key = bot.key() user_prefs.put() data = {'status': True, 'bot_id': bot.bot_id, 'nickname': bot.nickname} else: logging.error('bot_id is invalid.') data = {'status': False, 'message': 'Bot ID is invalid.'} json = simplejson.dumps(data, ensure_ascii=False) self.response.content_type = 'application/json' self.response.out.write(json)
def post(self): user = users.get_current_user() device_token = self.request.get('device_token') if device_token != '': logging.info('device_token: %s' % device_token) device_prefs = DevicePrefs.all().filter('device_token =', device_token).get() if device_prefs is None: device_prefs = DevicePrefs() device_prefs.google_account = user device_prefs.device_token = device_token device_prefs.delete_flg = False device_prefs.put() user_prefs = UserPrefs.all().filter('google_account =', user).get() if user_prefs is None: bot = BotPrefs.all().filter('bot_id =', 'test').get() user_prefs = UserPrefs() user_prefs.google_account = user user_prefs.daily_max_notify_count = 3 user_prefs.paid_quantity = 0 user_prefs.free_quantity = 100 user_prefs.timezone = 0.0 user_prefs.notify_probability = 0.0 user_prefs.delete_flg = False user_prefs.bot_prefs_key = bot.key() user_prefs.put() return self.redirect('/user/home') self.redirect('/user/home')
def get(self): bot_id = self.request.get('bot_id') bot_prefs = BotPrefs.all().filter('bot_id =', bot_id).get() if bot_prefs is None: return self.error(404) advance_flg = self.request.get('advance') if advance_flg == 'True': advance_flg = True else: advance_flg = False schedule_list = [] if advance_flg: for i in range(24): time_key = '%02d00-%02d00' % (i, i+1) time = '%02d:00 - %02d:00' % (i, i+1) bot_message_list = BotMessage.all().filter('bot_prefs_key =', bot_prefs.key()).filter('time =', time_key).order('created_at').fetch(20) schedule_list.append({'time':time, 'list': bot_message_list, 'hour': 0}) else: for i in [0, 3, 6, 9, 12, 15, 18, 21]: time = '%02d:00 - %02d:00' % (i, i+3) hour = i bot_message_list = [] message_list = [] for n in range(3): time_key = '%02d00-%02d00' % (hour, hour+1) bot_message = BotMessage.all().filter('bot_prefs_key =', bot_prefs.key()).filter('time =', time_key).order('created_at').fetch(20) for row in bot_message: if row.message not in message_list: bot_message_list.append(row) message_list.append(row.message) hour = hour + 1 schedule_list.append({'time':time, 'list': bot_message_list, 'hour': i}) template_values = { 'bot_id': bot_id, 'nickname': bot_prefs.nickname, 'public_flg': bot_prefs.public_flg, 'schedule_list': schedule_list, 'advance_flg': advance_flg } path = os.path.join(os.path.dirname(__file__), 'templates/bot/schedule_list.html') self.response.out.write(template.render(path, template_values))
def get(self): user = users.get_current_user() bot_list = BotPrefs.all().filter('google_account =', user).fetch(20) template_values = { 'bot_list': bot_list } path = os.path.join(os.path.dirname(__file__), 'templates/bot/list.html') self.response.out.write(template.render(path, template_values))
def get(self): user = users.get_current_user() user_prefs = UserPrefs.all().filter('google_account =', user).get() if user_prefs is None: return self.redirect('/user/welcome') new_bot_list = [] bot_id_list = [] bot_list = BotPrefs.all().filter('public_flg =', True).fetch(20) for row in bot_list: if row.bot_id not in bot_id_list: bot_id_list.append(row.bot_id) new_bot_list.append({'bot_id': row.bot_id, 'nickname': row.nickname}) bot_list = BotPrefs.all().filter('google_account =', user).fetch(20) for row in bot_list: if row.bot_id not in bot_id_list: bot_id_list.append(row.bot_id) new_bot_list.append({'bot_id': row.bot_id, 'nickname': row.nickname}) try: bot_id = user_prefs.bot_prefs_key.bot_id except: bot_id = '' template_values = { 'bot_list': new_bot_list, 'user_prefs': user_prefs, 'bot_id': bot_id } path = os.path.join(os.path.dirname(__file__), 'templates/user/bot.html') self.response.out.write(template.render(path, template_values))
def get(self): bot_id = self.request.get('bot_id') bot_prefs = BotPrefs.all().filter('bot_id =', bot_id).get() if bot_prefs is None: return self.error(404) template_values = { 'bot_id': bot_id, 'nickname': bot_prefs.nickname, 'public_flg': bot_prefs.public_flg, } path = os.path.join(os.path.dirname(__file__), 'templates/bot/edit.html') self.response.out.write(template.render(path, template_values))
def get(self): user= users.get_current_user() id = self.request.get('id') bot_id = self.request.get('bot_id') bot_prefs = BotPrefs.all().filter('google_account =', user).filter('bot_id =', bot_id).get() if bot_prefs is None: return self.error(404) bot_message = BotMessage.get_by_id(int(id)) if bot_message is None: return self.error(404) if bot_message.bot_prefs_key.key() != bot_prefs.key(): return self.error(404) advance_flg = self.request.get('advance') if advance_flg == 'True': advance_flg = True else: advance_flg = False hour = self.request.get('hour') try: hour = int(hour) except: hour = 0 template_values = { 'bot_message': bot_message, 'bot_id': bot_id, 'advance_flg': advance_flg, 'hour': hour } path = os.path.join(os.path.dirname(__file__), 'templates/bot/show_message.html') self.response.out.write(template.render(path, template_values))
def post(self): user = users.get_current_user() bot_id = self.request.get('bot_id') bot_prefs = BotPrefs.all().filter('bot_id =', bot_id).filter('google_account =', user).get() if bot_prefs is None: return self.error(404) mode = self.request.get('mode') if mode == 'delete_message': message_id = self.request.get('message_id') bot_message = BotMessage.get_by_id(int(message_id)) if bot_message is not None: advance_flg = self.request.get('advance') if advance_flg == 'True': bot_message.delete() else: try: hour = int(self.request.get('hour')) for i in range(3): time = '%02d00-%02d00' % (hour, hour + 1) bot_message_list = BotMessage.all().filter('time =', time).filter('message =', bot_message.message).fetch(20) if bot_message_list is not None: for row in bot_message_list: logging.info('Delete: %s -> %s' % (time, bot_message.message)) row.delete() hour = hour + 1 except: pass json = simplejson.dumps({'status': True}, ensure_ascii=False) self.response.content_type = 'application/json' self.response.out.write(json)
def post(self): user = users.get_current_user() bot_id = self.request.get('bot_id') bot_prefs = BotPrefs.all().filter('bot_id =', bot_id).filter('google_account =', user).get() if bot_prefs is None: return self.error(404) mode = self.request.get('mode') if mode == 'add_message': time = self.request.get('time') message = self.request.get('message') logging.info('time: %s' % time) if time.find('simple_') > -1: logging.info('Simple mode') hour = int(time[7:]) for i in range(3): time = '%02d00-%02d00' % (hour, hour + 1) logging.info('time: %s' % time) bot_message = BotMessage() bot_message.bot_prefs_key = bot_prefs.key() bot_message.time = time bot_message.message = message bot_message.put() hour = hour + 1 else: bot_message = BotMessage() bot_message.bot_prefs_key = bot_prefs.key() bot_message.time = time bot_message.message = message bot_message.put() json = simplejson.dumps({'status': True}, ensure_ascii=False) self.response.content_type = 'application/json' self.response.out.write(json)
def get(self): bot_id = self.request.get('bot_id') bot_prefs = BotPrefs.all().filter('bot_id =', bot_id).get() if bot_prefs is None: return self.error(404) advance_flg = self.request.get('advance') if advance_flg == 'True': advance_flg = True else: advance_flg = False hour_list = [] if advance_flg: for i in range(24): key = '%02d00-%02d00' % (i, i+1) value = '%02d:00 - %02d:00' % (i, i+1) logging.info('%s'%value) hour_list.append({'key':key, 'value':value}) else: for i in [0, 3, 6, 9, 12, 15, 18, 21]: key = 'simple_%d' % i value = '%02d:00 - %02d:00' % (i, i+3) logging.info('%s'%value) hour_list.append({'key':key, 'value':value}) template_values = { 'hour_list': hour_list, 'bot_id': bot_id, 'advance_flg': advance_flg } path = os.path.join(os.path.dirname(__file__), 'templates/bot/add_message.html') self.response.out.write(template.render(path, template_values))
def post(self): user = users.get_current_user() bot_id = self.request.get('bot_id') bot_prefs = BotPrefs.all().filter('bot_id =', bot_id).filter('google_account =', user).get() if bot_prefs is None: return self.error(404) mode = self.request.get('mode') if mode == 'modify': nickname = self.request.get('nickname') public_flg = self.request.get('public_flg') bot_prefs.nickname = nickname if public_flg == '1': bot_prefs.public_flg = True else: bot_prefs.public_flg = False bot_prefs.put() json = simplejson.dumps({'status': True}, ensure_ascii=False) self.response.content_type = 'application/json' self.response.out.write(json)
def post(self): user = users.get_current_user() bot_id = self.request.get('bot_id') nickname = self.request.get('nickname') if nickname == '': nickname = bot_id message = '' bot_prefs = BotPrefs.all().filter('bot_id =', bot_id).get() if bot_prefs is not None: message = '%s is already exists.' % bot_id data = {'status': False, 'message': message} else: bot_prefs = BotPrefs() bot_prefs.google_account = user bot_prefs.bot_id = bot_id bot_prefs.nickname = nickname bot_prefs.public_flg = False bot_prefs.delete_flg = False bot_prefs.put() data = {'status': True, 'message': None} template_values = { 'bot_id': bot_id, 'nickname': nickname, 'message': message } json = simplejson.dumps(data, ensure_ascii=False) self.response.content_type = 'application/json' self.response.out.write(json)