def print_request(self, request, keyboard, stp, reply=None):
     stp = User.get(id=stp.user)
     self.tb.send_message(self.chat,
                          "Заявка /r%s:\nНомер: %s\nНовых сообщений: <b>%s</b>\nКатегория: %s\nТип: %s\nКомментарий: %s" % (
                              str(request.id) + ' ' + request.unicode_icons,
                              request.id,
                              self.count_request_messages(request, stp),
                              get_breadcrumb(request.type.section.id, Section, 'parent_section'),
                              get_breadcrumb(request.type.id, Type, 'parent_type'),
                              request.text,
                          ), reply_markup=keyboard, parse_mode='HTML')
 def _send_close_request(self, user):
     r = Request.get(id=user.additional_data.get('chat'))
     user_to_reiceve = r.user
     keyboard = generate_custom_keyboard(types.InlineKeyboardMarkup, [
         [get_button_inline("Да", "request_close_accept %s" % r.id),
          get_button_inline("Нет", "request_close_decline %s" % r.id)]])
     self.tb.send_message(user_to_reiceve.telegram_chat_id,
                          "Тех. поддержка посчитала, что заявка /r%s:\nНомер: %s\nКатегория: %s\nТип: %s\nКомментарий: %s\nЗавершена, Вы согласны?" % (
                              str(r.id) + ' ' + r.unicode_icons,
                              r.id,
                              get_breadcrumb(r.type.section.id, Section, 'parent_section'),
                              get_breadcrumb(r.type.id, Type, 'parent_type'),
                              r.text,
                          ), reply_markup=keyboard, parse_mode='HTML')
 def print_request(self, request):
     if not request.is_finished:
         keyboard = generate_custom_keyboard(types.InlineKeyboardMarkup, [
             [get_button_inline("Перейти в чат", 'start_chat %s' % request.id)],
             [get_button_inline("Заявка решена", "change_request_status %s" % request.id)]])
     else:
         keyboard = None
     self.tb.send_message(self.chat,
                          "Заявка /r%s:\nНомер: %s\nНовых сообщений: <b>%s</b>\nКатегория: %s\nТип: %s\nКомментарий: %s\nСтатус: %s" % (
                              str(request.id) + ' ' + request.unicode_icons,
                              request.id,
                              self.count_request_messages(request.id, User.get(id=request.user)),
                              get_breadcrumb(request.type.section.id, Section, 'parent_section'),
                              get_breadcrumb(request.type.id, Type, 'parent_type'),
                              request.text,
                              "Завершена" if request.is_finished else "Не завершена"
                          ), reply_markup=keyboard,
                          parse_mode='HTML')
 def save_selected_type(self, type, message):
     user = User.get(id=self.user)
     user.additional_data['type'] = type
     bread = get_breadcrumb(type, Type, 'parent_type')
     self.tb.edit_message_text("Вы выбрали тип вопроса: %s" % bread, chat_id=self.chat,
                               message_id=message)
     keyboard = generate_custom_keyboard(types.InlineKeyboardMarkup,
                                         [[get_button_inline("Изменить", "type_change")]])
     self.tb.edit_message_reply_markup(self.chat, message_id=message, reply_markup=keyboard)
     user.save()
 def save_selected_section(self, section, message):
     user = User.get(id=self.user)
     user.additional_data = dict()
     user.additional_data['section'] = section
     bread = get_breadcrumb(section, Section, 'parent_section')
     self.tb.edit_message_text("Вы выбрали раздел: %s" % bread, chat_id=self.chat,
                               message_id=message)
     keyboard = generate_custom_keyboard(types.InlineKeyboardMarkup,
                                         [[get_button_inline("Изменить", "section_change")]])
     self.tb.edit_message_reply_markup(self.chat, message_id=message, reply_markup=keyboard)
     user.save()
Esempio n. 6
0
def _notify_user(data):
    text = "Для ваших заявок есть новые сообщения:\n"
    keyboard = generate_custom_keyboard(
        types.InlineKeyboardMarkup,
        [[get_button_inline("Мои заявки", "show_requests")]])
    for user_id in data:
        user = User.get(id=user_id)
        if user.has_messages_after_notification:
            for chat in data[user_id]:
                request = Request.get()
                text += "Заявка /r%s:\nНомер: %s\n<b>Новых сообщений:" \
                        "%s</b>\nКатегория: %s\nТип: %s\nКомментарий: %s\n" % (
                            str(request.id) + ' ' + request.unicode_icons,
                            request.id,
                            chat['message_count'],
                            get_breadcrumb(request.type.section.id, Section, 'parent_section'),
                            get_breadcrumb(request.type.id, Type, 'parent_type'),
                            request.text)
            tb.send_message(user.telegram_chat_id,
                            text,
                            reply_markup=keyboard,
                            parse_mode='HTML')
            user.has_messages_after_notification = False
            user.save()
Esempio n. 7
0
 def __unicode__(self):
     return get_breadcrumb(self.id, Section, 'parent_section')