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')
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) )
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))
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))