Example #1
0
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")
Example #2
0
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
Example #3
0
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