Пример #1
0
 def delete_message_post(self, current_uid = -1):
     # XXX: 현재는 메시지 번호를 Query String에 담아서 전달한다.
     # 차후 정규 표현식을 고쳐서 다른 게시판처럼 만들어야 한다.
     message_id = -1
     qs = web.ctx.query
     if len(qs) > 0:
         qs = qs[1:]
         qs = parse_qs(qs)
     if qs:
         message_id = int(qs['message_id'][0])
     else:
         raise web.notfound(util.render().error(error_message=_('NO_SUCH_MESSAGE'), help_context='error'))
     mail = pm.get_mail(message_id)
     result = pm.delete_mail(message_id)
     if result[0]:
         raise web.seeother(util.link('/+u/+inbox'))
     else:
         return util.render().error(error_message = ret[1],
                 help_context = 'error')
Пример #2
0
 def read_message_get(self, current_uid = -1):
     # XXX: 현재는 메시지 번호를 Query String에 담아서 전달한다.
     # 차후 정규 표현식을 고쳐서 다른 게시판처럼 만들어야 한다.
     message_id = -1
     qs = web.ctx.query
     if len(qs) > 0:
         qs = qs[1:]
         qs = parse_qs(qs)
     if qs:
         message_id = int(qs['message_id'][0])
     else:
         raise web.notfound(util.render().error(error_message=_('NO_SUCH_MESSAGE'), help_context='error'))
     mail = pm.get_mail(message_id)
     if mail.mReceiverSerial != current_uid:
         raise web.unauthorized(util.render().error(error_message=_('NO_PERMISSION'), help_context='error'))
     pm.mark_as_read(message_id)
     return util.render().mail(mail = mail, 
             title = '%s - %s' % (_('Read Message'), mail.mTitle)
             )
Пример #3
0
    def reply_message_get(self, current_uid = -1):
        user_id = current_uid
        usr = user.get_user(user_id)[1]

        message_id = -1
        qs = web.ctx.query
        if len(qs) > 0:
            qs = qs[1:]
            qs = parse_qs(qs)
        if qs:
            message_id = int(qs['message_id'][0])
        else:
            raise web.notfound(util.render().error(error_message=_('NO_SUCH_MESSAGE'), help_context='error'))
        mail = pm.get_mail(message_id)
        if mail.mReceiverSerial != current_uid:
            raise web.unauthorized(util.render().error(error_message=_('NO_PERMISSION'), help_context='error'))
        quote_text = _('From message \"%s\":') % mail.mTitle
        return util.render().mail_edit(
            title = _('Write Reply'),
            mail_title = 'Re: %s' % mail.mTitle,
            mail_body = '\n\n[quote=%s]%s\n[/quote]' % (quote_text, mail.mContent),
            mail_receiver = user._get_username_from_uid(mail.mSenderSerial))
Пример #4
0
 def delete_message_get(self, current_uid = -1):
     # XXX: 현재는 메시지 번호를 Query String에 담아서 전달한다.
     # 차후 정규 표현식을 고쳐서 다른 게시판처럼 만들어야 한다.
     message_id = -1
     qs = web.ctx.query
     if len(qs) > 0:
         qs = qs[1:]
         qs = parse_qs(qs)
     if qs:
         message_id = int(qs['message_id'][0])
     else:
         raise web.notfound(util.render().error(error_message=_('NO_SUCH_MESSAGE'), help_context='error'))
     mail = pm.get_mail(message_id)
     if mail.mReceiverSerial != current_uid:
         raise web.unauthorized(util.render().error(error_message=_('NO_PERMISSION'), help_context='error'))
     default_referer = posixpath.join(util.link('/+u'), '+inbox')
     action='%s?message_id=%s' % (posixpath.join(util.link('/+u'), '+delete_message'), message_id)
     return util.render().question(
             question=_('Do you want to delete the message?'),
             board_path = '', 
             board_desc = _('Confirmation'), 
             title=_('Confirmation'),
             action = action,
             referer=web.ctx.env.get('HTTP_REFERER', default_referer))