예제 #1
0
파일: views.py 프로젝트: ZheYuan/gitshell
def bind(request, ref_hash):
    userViaRef = None
    if ref_hash:
        userViaRef = GsuserManager.get_userViaRef_by_refhash(ref_hash)
        GsuserManager.handle_user_via_refhash(request.user, ref_hash)
    if userViaRef:
        is_verify = 1
        if userViaRef.ref_type == REF_TYPE.VIA_REPO_MEMBER:
            GsuserManager.add_useremail(request.user, userViaRef.email, is_verify)
            return HttpResponseRedirect('/%s/%s/' % (userViaRef.first_refname, userViaRef.second_refname))
        elif userViaRef.ref_type == REF_TYPE.VIA_TEAM_MEMBER:
            GsuserManager.add_useremail(request.user, userViaRef.email, is_verify)
            return HttpResponseRedirect('/%s/' % (userViaRef.first_refname))
    return HttpResponseRedirect('/dashboard/')
예제 #2
0
def bind(request, ref_hash):
    userViaRef = None
    if ref_hash:
        userViaRef = GsuserManager.get_userViaRef_by_refhash(ref_hash)
        GsuserManager.handle_user_via_refhash(request.user, ref_hash)
    if userViaRef:
        is_verify = 1
        if userViaRef.ref_type == REF_TYPE.VIA_REPO_MEMBER:
            GsuserManager.add_useremail(request.user, userViaRef.email,
                                        is_verify)
            return HttpResponseRedirect(
                '/%s/%s/' %
                (userViaRef.first_refname, userViaRef.second_refname))
        elif userViaRef.ref_type == REF_TYPE.VIA_TEAM_MEMBER:
            GsuserManager.add_useremail(request.user, userViaRef.email,
                                        is_verify)
            return HttpResponseRedirect('/%s/' % (userViaRef.first_refname))
    return HttpResponseRedirect('/dashboard/')
예제 #3
0
        return False
    user = auth_authenticate(username=user.username, password=password)
    auth_login(request, user)
    userprofile = Userprofile(id=user.id,
                              username=user.username,
                              email=user.email,
                              imgurl=hashlib.md5(
                                  user.email.lower()).hexdigest())
    userprofile.save()
    userEmail = UserEmail(user_id=user.id,
                          email=user.email,
                          is_verify=is_verify,
                          is_primary=1,
                          is_public=1)
    userEmail.save()
    if ref_hash:
        GsuserManager.handle_user_via_refhash(user, ref_hash)
    return True


def _get_client_ip(request):
    x_forwarded_for = request.META.get('X-Forwarded-For')
    if x_forwarded_for:
        ip = x_forwarded_for.split(',')[0]
    else:
        ip = request.META.get('REMOTE_ADDR')
    return ip


# Note: add email unique support ! UNIQUE KEY `email` (`email`) #
예제 #4
0
파일: views.py 프로젝트: ZheYuan/gitshell
    return recommends_vo

def _create_user_and_authenticate(request, username, email, password, ref_hash, is_verify):
    user = None
    try:
        user = User.objects.create_user(username, email, password)
        if user is None or not user.is_active:
            return False
    except IntegrityError, e:
        logger.exception(e)
        return False
    user = auth_authenticate(username=user.username, password=password)
    auth_login(request, user)
    userprofile = Userprofile(id = user.id, username = user.username, email = user.email, imgurl = hashlib.md5(user.email.lower()).hexdigest())
    userprofile.save()
    userEmail = UserEmail(user_id = user.id, email = user.email, is_verify = is_verify, is_primary = 1, is_public = 1)
    userEmail.save()
    if ref_hash:
        GsuserManager.handle_user_via_refhash(user, ref_hash)
    return True

def _get_client_ip(request):
    x_forwarded_for = request.META.get('X-Forwarded-For')
    if x_forwarded_for:
        ip = x_forwarded_for.split(',')[0]
    else:
        ip = request.META.get('REMOTE_ADDR')
    return ip

# Note: add email unique support ! UNIQUE KEY `email` (`email`) #