예제 #1
0
def activate(request, uidb64, token):
    try:
        uid = force_text(urlsafe_base64_decode(uidb64))
        user = MyUser.objects.get(pk=uid)
    except(TypeError, ValueError, OverflowError, ObjectDoesNotExist):
        user = None
    if user is not None and user.is_active == False and account_activation_token.check_token(user, token):
        user.is_active = True
        user.created = timezone.now()
        user.save()
        return render(request, 'client/active_acc2.html')
    else:
        return HttpResponse('Activation link is invalid!')
예제 #2
0
def activate(request, uidb64, token):
    try:
        uid = force_text(urlsafe_base64_decode(uidb64))
        user = MyUser.objects.get(pk=uid)
    except (TypeError, ValueError, OverflowError, MyUser.DoesNotExist):
        user = None
    if user is not None and account_activation_token.check_token(user, token):
        user.is_active = True
        user.save()
        login(request, user)
        username = user.username

        return render(request, 'client/active_acc2.html',
                      {'content': username})
    else:
        return render(request, 'client/active_acc2.html',
                      {'content': ' Đường đẫn không hợp lệ'})
예제 #3
0
def resetpwd(request, uidb64, token):
    try:
        uid = force_text(urlsafe_base64_decode(uidb64).decode())
        user = MyUser.objects.get(id=uid)
    except(TypeError, ValueError, OverflowError):
        user = None
    if user is not None and account_activation_token.check_token(user, token):
        if request.method == 'POST':
            form = ResetForm(request.POST)
            if form.is_valid():
                user.set_password(form.cleaned_data)
                user.save()
                return redirect('/')
            else:
                return redirect('/')
        return render(request, 'client/form-reset-password.html')
    else:
        return HttpResponse('Activation link is invalid!')
예제 #4
0
def activate(request, uidb64, token):
    try:
        uid = force_text(urlsafe_base64_decode(uidb64))
        user = MyUser.objects.get(pk=uid)
    except (TypeError, ValueError, OverflowError, ObjectDoesNotExist):
        user = None
    if user is not None and account_activation_token.check_token(user, token):
        user.is_active = True
        user.created = timezone.now()
        user.save()

        # Tạo tk + project + phân quyền OPS
        connect = KeystoneClient(admin=True)
        try:
            connect.create_project(user.username, domain='default')
            connect.create_user(name=user.username,
                                domain='default',
                                email=user.email,
                                project=user.username,
                                password=user.username)
            connect.add_user_to_project(user=user.username,
                                        project=user.username)
        except Exception as e:
            logger.error(e)
            user.delete()
            return render(request, 'client/active_acc2.html',
                          {'content': ' Đã có lỗi vui lòng thử lại sau'})

        # Tạo private network
        connect_user = KeystoneClient(username=user.username,
                                      password=user.username,
                                      project_name=user.username)
        try:
            net_id = connect_user.create_network(
                network_name='private_network_1')
            net = connect_user.show_network(net_id)
            subnet = connect_user.show_subnet(net['network']['subnets'][0])
            if not net['network']['shared']:
                shared = 0
            else:
                shared = 1
            if not net['network']['admin_state_up']:
                admin_state_up = 0
            else:
                admin_state_up = 1
            if not net['network']['router:external']:
                external = 0
            else:
                external = 1
            Networks.objects.create(
                owner=user,
                name='private_network_1',
                subnets_associated=subnet['subnet']['cidr'],
                shared=shared,
                external=external,
                status=net['network']['status'],
                admin_state_up=admin_state_up)
        except Exception as e:
            logger.error(e)
            user.delete()
            return render(request, 'client/active_acc2.html',
                          {'content': ' Đã có lỗi vui lòng thử lại sau'})
        username = user.username
        return render(request, 'client/active_acc2.html',
                      {'content': username})
    else:
        return render(request, 'client/active_acc2.html',
                      {'content': ' Đường đẫn không hợp lệ'})