Exemple #1
0
def submit(request, metatype):
    if request.method == 'POST' and request.POST and request.user.is_authenticated:
        submitted_form = post_form(request.POST)
        if submitted_form.is_valid():
            instance = submitted_form.save(commit=False)
            instance.author = request.user.username
            instance.metatype = metatype
            instance.save()
            instance.ups.add(request.user)
            print("CHANEEELLLSSS\n\n")
            print(request.POST)
            print("\n\n")
            if request.POST['channels']:
                selected_channels = request.POST['channels']
                channel_list = selected_channels.split(",")
                channel_list = [x for x in channel_list if x != '']
                for channel in channel_list:
                    this_channel = Channel.objects.get(id=channel)
                    instance.channels.add(this_channel)
            print(instance.get_absolute_url())
            return HttpResponseRedirect(instance.get_absolute_url())
        else:
            return render(
                request, "new.html", {
                    "username": request.user.username,
                    "tags": Channel.objects.all(),
                    "form": submitted_form,
                    "errors": submitted_form.errors
                })
    else:
        return HttpResponseRedirect(reverse('home'))
Exemple #2
0
def random(request):
    if request.user.is_superuser:
        metatype = "question"
        unsubmitted_form = post_form()
        return render(
            request, 'random_user_new.html', {
                'metatype': metatype,
                'channels': Channel.objects.all(),
                'form': unsubmitted_form
            })
    else:
        return HttpResponseRedirect(reverse('home'))
Exemple #3
0
def discuss(request):
    if request.user.is_authenticated:
        metatype = "discussion"
        unsubmitted_form = post_form()
        return render(
            request, 'new.html', {
                'metatype': metatype,
                'channels': Channel.objects.all(),
                'form': unsubmitted_form
            })
    else:
        return HttpResponseRedirect(reverse('home'))
Exemple #4
0
def random_submit(request):
    if request.method == 'POST' and request.POST and request.user.is_superuser:
        submitted_form = post_form(request.POST)
        if submitted_form.is_valid():

            username = request.POST["username"]
            bio = request.POST["bio"]
            email = username + "@testing.com"
            chars = [chr(i) for i in range(65, 123)]
            pwd = [chars[randint(0, len(chars) - 1)] for i in range(0, 10)]
            pwdstring = ''.join(pwd)
            new_user = User.objects.create_user(username=username,
                                                email=email,
                                                password=pwdstring)
            new_profile = student(bio=bio)
            new_profile.user = new_user
            new_profile.save()

            print("\n\nahhhh")
            instance = submitted_form.save(commit=False)
            instance.author = username
            instance.metatype = "question"
            instance.save()
            instance.ups.add(request.user)
            if request.POST['channels']:
                selected_channels = request.POST['channels']
                channel_list = selected_channels.split(",")
                channel_list = [x.lower() for x in channel_list if x != '']
                for channel in channel_list:
                    this_channel = Channel.objects.get(id=channel)
                    instance.channels.add(this_channel)
            return HttpResponseRedirect(instance.get_absolute_url())
        else:
            return render(
                request, "random_user_new.html.html", {
                    "username": request.user.username,
                    "tags": Channel.objects.all(),
                    "form": submitted_form,
                    "errors": submitted_form.errors
                })
    else:
        return HttpResponseRedirect(reverse('home'))
Exemple #5
0
def thread(request, thread_id, slug="", answer_id=""):
    try:
        thread_id = int(thread_id)
    except ValueError:
        raise Http404()
    post_requested = get_object_or_404(Question, pk=thread_id)
    post_requested = post_requested.parse()
    unsubmitted_reply = reply_form()
    Answer._tree_manager.rebuild()
    all_replies = Answer.objects.filter(question=post_requested).order_by(
        'tree_id', 'lft')
    all_replies = parse(all_replies)
    replies_count = all_replies.count()
    data = {'description': post_requested.description}
    edit_form = post_form(data)
    return render(
        request, 'thread.html', {
            'post': post_requested,
            'form': unsubmitted_reply,
            'nodes': all_replies,
            'replies': replies_count,
            'edit_form': edit_form
        })