Exemple #1
0
def logout(request):
    meta = generate_meta(request)
    meta["is_logged_in"]=False
    if request.user.is_authenticated:
        func_logout(request)
    else:
        return redirect('home')
    return render(request, 'accounts/logout.html', {'meta':meta})
Exemple #2
0
def post_list(request):
    meta = generate_meta(request)
    posts = Post.objects.filter(
        published_date__lte=timezone.now()).order_by('-published_date')
    return render(request, 'blog/post_list.html', {
        'posts': posts,
        'meta': meta
    })
Exemple #3
0
def post_detail(request, pk):
    meta = generate_meta(request)
    user = request.user
    post = get_object_or_404(Post, pk=pk)
    return render(request, 'blog/post_detail.html', {
        'post': post,
        'meta': meta,
        'user': user
    })
Exemple #4
0
def post_new(request):
    meta = generate_meta(request)
    if not request.user.is_authenticated:
        return redirect('login')
    if request.method == "POST":
        form = PostForm(request.POST)
        if form.is_valid():
            post = form.save(commit=False)
            post.author = request.user
            post.published_date = timezone.now()
            post.save()
            return redirect('post_detail', pk=post.pk)
    else:
        form = PostForm()
    return render(request, 'blog/post_edit.html', {'form': form, 'meta': meta})
Exemple #5
0
def login(request):
    meta = generate_meta(request)
    if request.user.is_authenticated:
        return redirect('profile')
    elif request.method == "POST":
        form = AuthenticationForm(request, data=request.POST)
        if form.is_valid():
            username = form.cleaned_data.get('username')
            raw_password = form.cleaned_data.get('password')
            user = authenticate(username=username, password=raw_password)
            if user is not None:
                func_login(request, user)
                return redirect('home')
    form = AuthenticationForm(request)
    return render(request, 'accounts/login.html', {'form':form, 'meta':meta})
Exemple #6
0
def post_edit(request, pk):
    meta = generate_meta(request)
    post = get_object_or_404(Post, pk=pk)
    if post.author != request.user:
        return redirect('post_detail', pk=post.pk)
    elif request.method == "POST":
        form = PostForm(request.POST, instance=post)
        if form.is_valid():
            post = form.save(commit=False)
            post.author = request.user
            post.published_date = timezone.now()
            post.save()
            return redirect('post_detail', pk=post.pk)
    else:
        form = PostForm(instance=post)
    return render(request, 'blog/post_edit.html', {'form': form, 'meta': meta})
Exemple #7
0
def signup(request):
    meta = generate_meta(request)
    if request.user.is_authenticated:
        return redirect('profile')
    elif request.method == "POST":
        form = UserCreationForm(request.POST)
        if form.is_valid():
            form.save()
            username = form.cleaned_data.get('username')
            raw_password = form.cleaned_data.get('password1')
            user = authenticate(username=username, password=raw_password)
            func_login(request, user)
            return redirect('home')
    else:
        form = UserCreationForm()
    return render(request, 'accounts/signup.html', {'form': form, 'meta':meta})
Exemple #8
0
def cv_edit(request, pk):
    meta = generate_meta(request)
    cv = get_object_or_404(CV, pk=pk)
    if request.user != cv.owner:
        return redirect('cv_pk', pk=pk)

    referees = cv.referee_set.all()
    addresses = cv.addresscv_set.all()
    educations = cv.education_set.all()
    tech_skills = cv.techskill_set.all()
    work_experiences = cv.workexperience_set.all()
    if request.method == "POST":
        cv_form = CVForm(request.POST, instance=cv)
        referee_forms = [RefereeForm(request.POST, prefix=str(x), instance=v) for x,v in enumerate(referees)]
        address_forms = [AddressCVForm(request.POST, prefix=str(x), instance=v) for x,v in enumerate(addresses)]
        education_forms = [EducationForm(request.POST, prefix=str(x), instance=v) for x,v in enumerate(educations)]
        tech_skill_forms = [TechSkillForm(request.POST, prefix=str(x), instance=v) for x,v in enumerate(tech_skills)]
        work_experience_forms = [WorkExperienceForm(request.POST, prefix=str(x), instance=v) for x,v in enumerate(work_experiences)]
        all_list = [cv_form] + referee_forms + address_forms + education_forms + tech_skill_forms + work_experience_forms
        if all([f.is_valid() for f in all_list]):
            cv = cv_form.save(commit=False)
            def saver(l):
                for f in l:
                    o = f.save(commit=False)
                    o.save()
            saver(referee_forms)
            saver(address_forms)
            saver(education_forms)
            saver(tech_skill_forms)
            saver(work_experience_forms)
            cv.save()
            return redirect('cv_pk', pk=pk)
    else:
        cv_form = CVForm(instance=cv)
        referee_forms = [RefereeForm(prefix=str(x), instance=v) for x,v in enumerate(referees)]
        address_forms = [AddressCVForm(prefix=str(x), instance=v) for x,v in enumerate(addresses)]
        education_forms = [EducationForm(prefix=str(x), instance=v) for x,v in enumerate(educations)]
        tech_skill_forms = [TechSkillForm(prefix=str(x), instance=v) for x,v in enumerate(tech_skills)]
        work_experience_forms = [WorkExperienceForm(prefix=str(x), instance=v) for x,v in enumerate(work_experiences)]
    return render(request, 'accounts/cv_edit.html', {'meta':meta, 'cv_form':cv_form, 'referee_forms':referee_forms, 'address_forms':address_forms, 'education_forms':education_forms, 'tech_skill_forms':tech_skill_forms, 'work_experience_forms':work_experience_forms})
Exemple #9
0
def cv_pk(request, pk):
    meta = generate_meta(request)
    user = request.user
    cv = get_object_or_404(CV, pk=pk)
    return render(request, 'accounts/cv.html', {'meta':meta, 'cv':cv})
Exemple #10
0
def profile(request):
    meta = generate_meta(request)
    if not request.user.is_authenticated:
        return redirect('login')
    user = request.user
    return render(request, 'accounts/profile.html', {'meta':meta, 'user':user})