Ejemplo n.º 1
0
def profile(request):
    if request.method == 'GET':
        form = UserForm(request.GET)
        user = form.data[u'user']

        context = {'user': user, 'logged_in': True}

        if User.objects.filter(username=user):
            context['user_exists'] = "true"
            context['username'] = user
            context['user_stagecount'] = Stage.objects.filter(
                owner=user).count()

            context['user_stages'] = []
            for stage in Stage.objects.filter(owner=user):
                context['user_stages'].append(stage)
            #context['user_result'] = "USER EXISTS"
        else:
            context['user_exists'] = "false"
            #context['user_result'] = "USER DOES NOT EXIST"

        return render(request, 'users/profile.html', context)
    else:
        context = {}
        return render(request, 'users/profile.html', context)
Ejemplo n.º 2
0
def get_login(request):
    context = {'message': ""}
    if request.method == 'POST':
        form = UserForm(request.POST)
        if u'logout' in form.data:
            logout(request)
            return redirect('/')
        username = form.data[u'username']
        password = form.data[u'passwd']
        if u'login' in form.data:
            user = authenticate(username=username, password=password)
            if user is not None and user.is_active:
                login(request, user)
                result = UsersModel.SUCCESS
            else:
                result = UsersModel.ERR_BAD_CREDENTIALS
        elif u'adduser' in form.data:
            if User.objects.filter(username=username):
                result = UsersModel.ERR_USER_EXISTS
            elif len(username
                     ) == 0 or len(username) > UsersModel.MAX_USERNAME_LENGTH:
                result = UsersModel.ERR_BAD_USERNAME
            elif len(password) > UsersModel.MAX_PASSWORD_LENGTH:
                result = UsersModel.ERR_BAD_PASSWORD
            else:
                new_user = User.objects.create_user(username, '', password)
                new_user.save()
                new_user = authenticate(username=username, password=password)
                login(request, new_user)
                result = UsersModel.SUCCESS
        else:
            result = None  # This should never be reached

        if result == UsersModel.SUCCESS:
            return redirect('/game')
        elif result == UsersModel.ERR_BAD_USERNAME:
            context['message'] = "ADD USER ERROR: Username is " + (
                "empty" if len(username) == 0 else "too long")
        else:
            context['message'] = errors[result]
    elif request.user.is_authenticated():
        return redirect('/')
    else:
        form = UserForm()

    context['form'] = form
    return render(request, 'static_pages/index.html', context)
Ejemplo n.º 3
0
def edit_user(request, username):
    profile = None
    try:
        user = User.objects.get(username=username)
        try:
            profile = user.profile
        except Profile.DoesNotExist:
            pass # ! Just go ahead !
    except User.DoesNotExist:
        return redirect(home)

    if request.user.has_perm('auth.change_user') or request.user.username == username:
        if request.method == 'POST':
            form = UserForm(request.POST, instance=user)

            if profile:
                profile_form = ProfileForm(request.POST, instance = profile)
            else:
                profile_form = ProfileForm(request.POST)

            if form.is_valid():
                updated_user = form.save()
                if profile_form.is_valid():
                    new_profile = profile_form.save(commit=False)
                    new_profile.user = updated_user
                    new_profile.save()

                return redirect(user_profile, username=username)
        else:
            form = UserForm(instance=user)
            if profile:
                profile_form = ProfileForm(instance=profile)
            else:
                profile_form = ProfileForm()

        context = {'form': form,
                    'username': username,
                    'profile_form': profile_form,
        }

        return render(request, "edit_user.html", context)

    return redirect(home)
Ejemplo n.º 4
0
def personal_data(request):
    results = {}
    if request.is_ajax():
        form = DoctorForm(request.POST, instance=request.user.userprofile.current_doctor)
        user_form = UserForm(request.POST, instance=request.user.userprofile.current_doctor.refer_userprofile.user)
        if form.is_valid() and user_form.is_valid():
            form.save()
            user_form.save()
            results['return'] = True
        else:
            print
            results['errors'] = form.errors + user_form.errors
            results['return'] = False
    else:
        results['return'] = False
    return HttpResponse(json.dumps(results))
Ejemplo n.º 5
0
def user_settings(request):
    up = request.user.userprofile
    doc = up.current_doctor
    c = {'userprofile_id': request.user.userprofile.id,
         'user_form': UserForm(instance=doc.refer_userprofile.user),
         'personal_data_form': DoctorForm(instance=doc),
         'settings_form': SettingsForm(instance=doc), 'avatar': doc.picture,
         'text_form': TextForm(instance=doc), 'color_forms': [],
         'password_change_form': PasswordChangeForm(user=request.user),
         'invoice': doc.get_active_invoice(),
         'collaborator_form': CollaboratorForm(),
         'collaborators1': UserProfile.objects.filter(doctors=doc),
         'collaborators2': Collaborator.objects.filter(doctor=doc),
         'new_invoice': MiniInvoiceForm() if not doc.already_use_free_invoice() else NoFreeMiniInvoiceForm(),
         'doctor_profile': doc.refer_userprofile}
    for st in settings.SLOT_TYPE:
        d = {'id': doc.get_colorslot(st[0]).id, 'name': st[1],
             'form': ColorForm(instance=doc.get_colorslot(st[0]))}
        c['color_forms'].append(d)
    return render(request, 'config.tpl', c)
Ejemplo n.º 6
0
def search(request):
    if request.method == 'GET':
        form = UserForm(request.GET)
        query = form.data[u'query']

        context = {}
        context = {'query': query}

        if User.objects.filter(username=query):
            context['user_exists'] = "true"
            context['username'] = query
            context['user_stagecount'] = Stage.objects.filter(
                owner=query).count()

            context['user_stages'] = []
            for stage in Stage.objects.filter(owner=query):
                context['user_stages'].append(stage)
            #context['user_result'] = "USER EXISTS"
        else:
            context['user_exists'] = "false"
            #context['user_result'] = "USER DOES NOT EXIST"

        if Stage.objects.filter(name__icontains=query):
            context['stages_exists'] = "true"
            #context['stages_stagecount'] = Stage.objects.filter(name=query).count()
            context['stages_stagecount'] = Stage.objects.filter(
                name__icontains=query).count()

            context['stages_stages'] = []
            for stage in Stage.objects.filter(name__icontains=query):
                context['stages_stages'].append(stage)

        else:
            context['stages_exists'] = "false"

        return render(request, 'users/search.html', context)
    else:
        context = {}
        return render(request, 'users/search.html', context)