def handle(request): myself = siteaction.getLoggedInUser(request) if not myself: return HttpResponseRedirect( config.server_base_url + "/login.htm?returnUrl=" + config.server_base_url + "/me/editsettings.htm" ) settings = models.UserSettings.objects.get(user=myself) if request.method == "GET": action_result = "" if dataplus.dictGetVal(request.REQUEST, "flashId"): action_result = dataplus.dictGetVal( statix.action_messages, dataplus.dictGetVal(request.REQUEST, "flashId"), "" ) return siteaction.render_to_response( "me/editsettings.htm", { "fwd_messages_checked": dataplus.conditionalValue( lambda: settings.email_fwd_messages == True, 'checked="checked"', "" ), "fwd_jobrefs_checked": dataplus.conditionalValue( lambda: settings.email_fwd_jobrefs == True, 'checked="checked"', "" ), "fwd_alerts_checked": dataplus.conditionalValue( lambda: settings.email_fwd_alerts == True, 'checked="checked"', "" ), "action_result": action_result, "myself": myself, }, ) if request.method == "POST": result, errMsg = codejar_validation.validateName(dataplus.dictGetVal(request.REQUEST, "fullname")) if not result: return siteaction.render_to_response( "me/showmessage.htm", {"myself": myself, "msg_heading": "Error", "msg_html": "Invalid user input."} ) myself.name = dataplus.dictGetVal(request.REQUEST, "fullname") myself.account.name = dataplus.dictGetVal(request.REQUEST, "fullname") myself.account.save() myself.save() settings = models.UserSettings.objects.get(user=myself) settings.email_fwd_messages = dataplus.dictGetVal(request.REQUEST, "email_fwd_messages", False, lambda x: True) settings.email_fwd_jobrefs = dataplus.dictGetVal(request.REQUEST, "email_fwd_jobrefs", False, lambda x: True) settings.email_fwd_alerts = dataplus.dictGetVal(request.REQUEST, "email_fwd_alerts", False, lambda x: True) settings.save() return HttpResponseRedirect("/me/editsettings.htm?flashId=acctset_saved")
def validateRequest(request): if dataplus.dictGetVal(request.REQUEST,'username') == '' or dataplus.dictGetVal(request.REQUEST,'name') == '' or dataplus.dictGetVal(request.REQUEST,'email') == '' or dataplus.dictGetVal(request.REQUEST,'password1') == '' or dataplus.dictGetVal(request.REQUEST,'password2') == '': return False, errorResponse('All fields are required.', request) result, errMsg = dataplus.validateErrorConditions( [lambda : codejar_validation.validateUsername(dataplus.dictGetVal(request.REQUEST,'username')), lambda : codejar_validation.validateName(dataplus.dictGetVal(request.REQUEST,'name')), lambda : codejar_validation.validateEmail(dataplus.dictGetVal(request.REQUEST,'email')), lambda : dataplus.isLengthValid(dataplus.dictGetVal(request.REQUEST,'password1'), 6, 16, 'Password'), lambda : dataplus.isLengthValid(dataplus.dictGetVal(request.REQUEST,'email'), 5, 75, 'Email') ]) if not result: return result, errorResponse(errMsg, request) elif dataplus.dictGetVal(request.REQUEST,'password1') != dataplus.dictGetVal(request.REQUEST,'password2'): return False, errorResponse('Passwords do not match.', request) elif dataplus.dictGetVal(request.REQUEST,'captcha_text') != request.session['signup_captcha_text']: return False, errorResponse('The captcha text entered is incorrect.', request) else: return True, None
def validateRequest(request): if not dataplus.dictGetVal(request.REQUEST, 'acceptterms', False, lambda x:True): return False, errorResponse('Please accept the terms and conditions to continue.',request) if dataplus.dictGetVal(request.REQUEST,'user-name') == '' or dataplus.dictGetVal(request.REQUEST,'name') == '' or dataplus.dictGetVal(request.REQUEST,'email') == '' or dataplus.dictGetVal(request.REQUEST,'password1') == '' or dataplus.dictGetVal(request.REQUEST,'password2') == '' or dataplus.dictGetVal(request.REQUEST,'country') == '' or dataplus.dictGetVal(request.REQUEST,'industry_category') == '' or dataplus.dictGetVal(request.REQUEST,'experience') == '-1': return False, errorResponse('All fields are required.', request) result, errMsg = dataplus.validateErrorConditions( [lambda : codejar_validation.validateName(dataplus.dictGetVal(request.REQUEST,'name')), lambda : codejar_validation.validateUsername(dataplus.dictGetVal(request.REQUEST,'user-name')), lambda : codejar_validation.validateEmail(dataplus.dictGetVal(request.REQUEST,'email')), lambda : dataplus.isLengthValid(dataplus.dictGetVal(request.REQUEST,'password1'), 6, 16, 'Password'), lambda : dataplus.isLengthValid(dataplus.dictGetVal(request.REQUEST,'email'), 5, 75, 'Email') ]) if not result: return result, errorResponse(errMsg, request) elif dataplus.dictGetVal(request.REQUEST,'password1') != dataplus.dictGetVal(request.REQUEST,'password2'): return False, errorResponse('Passwords do not match.', request) elif models.Account.objects.filter(username=dataplus.dictGetVal(request.REQUEST, 'user-name')).count() > 0: return False, errorResponse('Username already exists. Please choose another.', request) else: return True, None