def account(request): session_key, r = warara.check_logged_in(request) server = warara_middleware.get_server() account = server.member_manager.get_info(session_key) account.last_logout_time = timestamp2datetime(account.last_logout_time) account.logged_in = True rendered = render_to_string('account/myaccount_frame.html', account.__dict__) return HttpResponse(rendered)
def get_user_info(request): if request.method == 'POST': session_key, ctx = warara.check_logged_in(request) server = warara_middleware.get_server() query_user_name = request.POST['query_user_name'] information = server.member_manager.query_by_username(session_key, query_user_name) information.last_logout_time = timestamp2datetime(information.last_logout_time) rendered = render_to_string('account/another_user_account.html', information.__dict__) return HttpResponse(rendered) else: return HttpResponse("Linear Algebra") assert ret, information
def get_user_info(request): if request.method == 'POST': session_key, ctx = warara.check_logged_in(request) server = warara_middleware.get_server() query_user_name = request.POST['query_user_name'] information = server.member_manager.query_by_username( session_key, query_user_name) information.last_logout_time = timestamp2datetime( information.last_logout_time) rendered = render_to_string('account/another_user_account.html', information.__dict__) return HttpResponse(rendered) else: return HttpResponse("Linear Algebra") assert ret, information
def add_welcome(self, session_key, notice_reg_dic): ''' 관리자용 welcome 추가 함수 >>> notice_reg_dic = { 'content':'hahahah', 'due_date':'2008,7,14', 'weight':'1' } >>> notice.add_welcome(SYSOP_session_key, notice_reg_dic) >>> notice.add_welcome(user_session_key, notice_reg_dic) Traceback (most recent calls top): ... InvalidOperation @type session_key: string @param session_key: 사용자 Login Session @type notice_reg_dic: dictionary @param notice_reg_dic: Notice Dictionary @rtype: void @return: 1. welcome 페이지 추가에 성공하였을 때: void 2. welcome 페이지 추가에 실패하였을 때: 1. 시삽이 아닐 때: InvalidOperation Exception 2. 데이터베이스 오류: InternalError Exception ''' notice_reg_dic = notice_reg_dic.__dict__ notice_reg_dic['due_date'] = timestamp2datetime( notice_reg_dic['due_date']) if not is_keys_in_dict(notice_reg_dic, NOTICE_ADD_WHITELIST): raise InvalidOperation('wrong dictionary') if not self.engine.member_manager.is_sysop(session_key): raise InvalidOperation('not sysop') session = model.Session() try: # Register welcome to db welcome= model.Welcome(**notice_reg_dic) session.save(welcome) session.commit() session.close() return except Exception, e: session.rollback() session.close() raise InternalError('database error')
def add_banner(self, session_key, notice_reg_dic): ''' 관리자용 배너 추가 함수 이 아래의 doctest 는 작동하지 않으니 무시할 것. >>> notice_reg_dic = { 'content':'hahahah', 'due_date':'2008,7,14', 'weight':'1' } >>> notice.add_banner(SYSOP_session_key, WrittenNotice(**notice_reg_dic)) >>> notice.add_banner(user_session_key, notice_reg_dic) Traceback (most recent calls top): ... InvalidOperation @type session_key: string @param session_key: 사용자 Login Session @type notice_reg_dic: ttypes.WrittenNotice @param notice_reg_dic: Notice Dictionary @rtype: int @return: 1. 배너 페이지 추가에 성공하였을 때: 추가된 배너의 id 2. 배너 페이지 추가에 실패하였을 때: 1. 시삽이 아닐 때: InvalidOperation Exception 2. 데이터베이스 오류: InternalError Exception ''' notice_reg_dic = notice_reg_dic.__dict__ notice_reg_dic['due_date'] = timestamp2datetime( notice_reg_dic['due_date']) if not is_keys_in_dict(notice_reg_dic, NOTICE_ADD_WHITELIST): raise InvalidOperation('wrong dictionary') if not self.engine.member_manager.is_sysop(session_key): raise InvalidOperation('not sysop') session = model.Session() try: # Register welcome to db banner = model.Banner(**notice_reg_dic) session.add(banner) session.commit() banner_id = banner.id session.close() return banner_id except Exception, e: session.rollback() session.close() raise InternalError('database error')
def add_welcome(self, session_key, notice_reg_dic): ''' 관리자용 welcome 추가 함수 >>> notice_reg_dic = { 'content':'hahahah', 'due_date':'2008,7,14', 'weight':'1' } >>> notice.add_welcome(SYSOP_session_key, notice_reg_dic) >>> notice.add_welcome(user_session_key, notice_reg_dic) Traceback (most recent calls top): ... InvalidOperation @type session_key: string @param session_key: 사용자 Login Session @type notice_reg_dic: dictionary @param notice_reg_dic: Notice Dictionary @rtype: void @return: 1. welcome 페이지 추가에 성공하였을 때: void 2. welcome 페이지 추가에 실패하였을 때: 1. 시삽이 아닐 때: InvalidOperation Exception 2. 데이터베이스 오류: InternalError Exception ''' notice_reg_dic = notice_reg_dic.__dict__ notice_reg_dic['due_date'] = timestamp2datetime( notice_reg_dic['due_date']) if not is_keys_in_dict(notice_reg_dic, NOTICE_ADD_WHITELIST): raise InvalidOperation('wrong dictionary') if not self.engine.member_manager.is_sysop(session_key): raise InvalidOperation('not sysop') session = model.Session() try: # Register welcome to db welcome = model.Welcome(**notice_reg_dic) session.save(welcome) session.commit() session.close() return except Exception, e: session.rollback() session.close() raise InternalError('database error')
def test_libs(self): result = libs.timestamp2datetime(0.0) self.assertEqual('1970-01-01 09:00:00', str(result))