def get(self): """ Verify that specified user exists for given account """ current_session = Session().get_current_session(self) email = current_session.get_email() edit_user = self.request.get("name") """ Generate links to see each widget for user """ import hashlib userhash = hashlib.sha1(email + '---' + edit_user).hexdigest() trophy_case_widget_url = "/api/1/getwidget?widget=trophy_case&u=" + userhash points_widget_url = "/api/1/getwidget?widget=points&u=" + userhash rank_widget_url = "/api/1/getwidget?widget=rank&u=" + userhash milestones_widget_url = "/api/1/getwidget?widget=milestones&u=" + userhash template_values = {'users_edit' : True, 'account_name' : current_session.get_email(), 'editusername': edit_user, 'view_trophy_case':trophy_case_widget_url, 'view_points':points_widget_url, 'view_rank':rank_widget_url, 'view_milestones':milestones_widget_url} self.response.out.write(template.render(constants.TEMPLATE_PATHS.CONSOLE_DASHBOARD, template_values))
def post(self): """ will handle change of password request, will return success/fail """ current_session = Session().get_current_session(self) email = current_session.get_email() old_password = self.request.get("oldpassword") new_password = self.request.get("newpassword") new_password_again = self.request.get("newpasswordagain") error_message = "" success = False if new_password != new_password_again: error_message = "Passwords do not match." else: """ Make sure that the account authenticates... this is a redundant check """ if accounts_dao.authenticate_web_account(email, old_password): changed = accounts_dao.change_account_password(email, new_password) if changed: success = True else: error_message = "Old password incorrect." template_values = {"preferences_main" : True, "password_change_attempted" : True, 'account_name' : email, "error_message": error_message, "password_changed" : success} self.response.out.write(template.render(constants.TEMPLATE_PATHS.CONSOLE_DASHBOARD, template_values))
def get(self): """ Render users template """ current_session = Session().get_current_session(self) email = current_session.get_email() template_values = {'users_main': True, 'account_name': email } self.response.out.write(template.render(constants.TEMPLATE_PATHS.CONSOLE_DASHBOARD, template_values))
def get(self): self.response.out.write("You should be able to see this page, logged in or not...") sess = Session().get_current_session(self) if sess == None: self.response.out.write("<br/>You are not logged in!!") else: self.response.out.write("<br/>You are logged in as:") email = sess.get_email() self.response.out.write("<br/>" + email)
def get(self): """ Render users template """ current_session = Session().get_current_session(self) email = current_session.get_email() error = self.request.get("error") has_error = False if error: has_error = True error = getErrorString(error) email = current_session.get_email() account = current_session.get_account_entity() badges = badges_dao.get_rendereable_badgeset(account) template_values = {'users_main': True, 'account_name': email, 'badges':badges, 'has_error': has_error, 'error': error} self.response.out.write(template.render(constants.TEMPLATE_PATHS.CONSOLE_DASHBOARD, template_values))
def get(self): self.response.out.write("<br/>If you reached here you are logged in!") sess = Session().get_current_session(self) if (sess == None): self.response.out.write("<br/>You are not logged in!!") else: self.response.out.write("<br/>You are logged in as:") email = sess.get_email() self.response.out.write("<br/>" + email)
def get(self): self.response.out.write("terminating the follow session:") sess = Session().get_current_session(self) if sess == None: self.response.out.write("<br/>You are not logged in!!") else: self.response.out.write("<br/>You are logged in as:") email = sess.get_email() self.response.out.write("<br/>" + email) sess.terminate()
def get(self): self.response.out.write("<br/>If you reached here you are logged in!") sess = Session().get_current_session(self) if sess == None: self.response.out.write("<br/>You are not logged in!!") else: self.response.out.write("<br/>You are logged in as:") email = sess.get_email() self.response.out.write("<br/>" + email)
def get(self): """ handler for change password template """ current_session = Session().get_current_session(self) template_values = { 'preferences_main': True, 'account_name': current_session.get_email() } self.response.out.write( template.render(constants.TEMPLATE_PATHS.CONSOLE_DASHBOARD, template_values))
def check_login(self, *args): if self.request.method != 'GET' and self.request.method != 'POST': self.response.out.write(template.render(TEMPLATE_PATHS.CONSOLE_LOGIN, None)) else: user_session = Session().get_current_session(self) if user_session == None: self.response.out.write(template.render(TEMPLATE_PATHS.CONSOLE_LOGIN, None)) else: logging.info("LEGIT user session! Email: " + user_session.get_email()) handler_method(self, *args)
def get(self): """ Sleep here... on PROD we hare having race condition, try this out... """ import time time.sleep(0.3) """ Look up value of "of" """ current_session = Session().get_current_session(self) requested_value = self.request.get("of") entity_type = self.request.get("entityType") value = widgets_dao.get_single_widget_value(current_session.get_email(), entity_type, requested_value) self.response.out.write(value)
def get(self): """ Render dashboard """ current_session = Session().get_current_session(self) account = current_session.get_account_entity() api_key = account.apiKey template_values = {'dashboard_main' : True, 'account_name': current_session.get_email(), 'api_key': api_key} self.response.out.write(template.render(constants.TEMPLATE_PATHS.CONSOLE_DASHBOARD, template_values))
def get(self): current_session = Session().get_current_session(self) email = current_session.get_email() account = current_session.get_account_entity() badgeset = badges_dao.get_rendereable_badgeset(account) upload_url = blobstore.create_upload_url('/badge/u') template_values = {'badges_main': True, 'account_name': email, 'badges': badgeset, 'upload_url': upload_url} self.response.out.write(template.render(constants.TEMPLATE_PATHS.CONSOLE_DASHBOARD, template_values))
def get(self): current_session = Session().get_current_session(self) account = current_session.get_account_entity() email = current_session.get_email() """ Get widgets values """ trophy_case_values = widgets_dao.get_trophy_case_properties_to_render(account) rank_values = widgets_dao.get_rank_properties_to_render(account) points_values = widgets_dao.get_points_properties_to_render(account) leaderboard_values = widgets_dao.get_leaderboard_properties_to_render(account) notifier_values = widgets_dao.get_notifier_properties_to_render(account) milestones_values = widgets_dao.get_milestones_properties_to_render(account) """ Preview urls """ trophy_case_preview_url = "" rank_preview_url = "" points_preview_url = "" """ Notifier """ if environment.is_dev(): widget_path = constants.CONSOLE_GET_WIDGET_DEV else: widget_path = constants.CONSOLE_GET_WIDGET_PROD widget_type = "notifier" userhash = hashlib.sha1(email + '---' + constants.ANONYMOUS_USER).hexdigest() notifier_str = "<div style='z-index:9999; overflow: hidden; position: fixed; bottom: 0px; right: 10px;'><iframe style='border:none;' allowtransparency='true' height='"+str(constants.NOTIFIER_SIZE_DEFAULT)+"px' width='"+str(constants.NOTIFIER_SIZE_DEFAULT)+"px' scrolling='no' src='" + widget_path + "?widget=" + widget_type + "&u=" + userhash + "&height=" +str(constants.NOTIFIER_SIZE_DEFAULT) + "&width="+str(constants.NOTIFIER_SIZE_DEFAULT)+"'>Sorry your browser does not support iframes!</iframe></div>" template_values = {'features_main' : True, 'account_name' : current_session.get_email(), 'trophy_case_values' : trophy_case_values, 'rank_values':rank_values, 'points_values':points_values, 'notifier_values': notifier_values, 'milestones_values': milestones_values, 'leaderboard_values':leaderboard_values, 'trophy_case_preview_url':trophy_case_preview_url, 'rank_preview_url':rank_preview_url, 'points_preview_url':points_preview_url, 'notifier': notifier_str} self.response.out.write(template.render(constants.TEMPLATE_PATHS.CONSOLE_DASHBOARD, template_values))
def get(self): """ Render users template """ current_session = Session().get_current_session(self) email = current_session.get_email() error = self.request.get("error") has_error = False if error: has_error = True error = getErrorString(error) email = current_session.get_email() account = current_session.get_account_entity() badges = badges_dao.get_rendereable_badgeset(account) template_values = { 'users_main': True, 'account_name': email, 'badges': badges, 'has_error': has_error, 'error': error } self.response.out.write( template.render(constants.TEMPLATE_PATHS.CONSOLE_DASHBOARD, template_values))
def check_login(self, *args): if self.request.method != 'GET' and self.request.method != 'POST': self.response.out.write( template.render(TEMPLATE_PATHS.CONSOLE_LOGIN, None)) else: user_session = Session().get_current_session(self) if user_session == None: self.response.out.write( template.render(TEMPLATE_PATHS.CONSOLE_LOGIN, None)) else: logging.info("LEGIT user session! Email: " + user_session.get_email()) handler_method(self, *args)
def post(self): """ Ajax call handler to save trophycase features """ current_session = Session().get_current_session(self) property = self.request.get("property") new_value = self.request.get("propertyValue") entity_type = self.request.get("entityType") success = widgets_dao.update_widget_property(current_session.get_email(), entity_type, property, new_value) if success: self.response.out.write("Success") else: self.response.out.write("Failed")
def get(self): current_session = Session().get_current_session(self) email = current_session.get_email() account = current_session.get_account_entity() error = self.request.get("error") has_error = False if error: has_error = True error = getErrorString(error) badgeset = badges_dao.get_rendereable_badgeset(account) upload_url = blobstore.create_upload_url('/badge/u') template_values = {'badges_main': True, 'account_name': email, 'badges': badgeset, 'upload_url': upload_url, 'has_error': has_error, 'error': error} self.response.out.write(template.render(constants.TEMPLATE_PATHS.CONSOLE_DASHBOARD, template_values))
def get(self): current_session = Session().get_current_session(self) email = current_session.get_email() account = current_session.get_account_entity() error = self.request.get("error") has_error = False if error: has_error = True error = getErrorString(error) badgeset = badges_dao.get_rendereable_badgeset(account) upload_url = blobstore.create_upload_url('/badge/u') template_values = { 'badges_main': True, 'account_name': email, 'badges': badgeset, 'upload_url': upload_url, 'has_error': has_error, 'error': error } self.response.out.write( template.render(constants.TEMPLATE_PATHS.CONSOLE_DASHBOARD, template_values))
def get(self): current_session = Session().get_current_session(self) template_values = {'downloads_main' : True, 'account_name' : current_session.get_email()} self.response.out.write(template.render(constants.TEMPLATE_PATHS.CONSOLE_DASHBOARD, template_values))
def get(self): """ handler for change password template """ current_session = Session().get_current_session(self) template_values = {'preferences_main' : True, 'account_name' : current_session.get_email()} self.response.out.write(template.render(constants.TEMPLATE_PATHS.CONSOLE_DASHBOARD, template_values))