Example #1
0
def my_profile(request):
    ## User is redirected here upon LOGIN
    this_user = functions.get_this_user(request)
    if this_user != None:
        status = functions.check_user_valid_profile(request)
        if status == 'not_valid':
            request.method = "GET"
            messages.info(
                request,
                'There is still missing necessary information before you to get started.'
            )
            return edit_profile(request)
        elif status == 'not_active':
            messages.error(
                request,
                'Your account is inactive, contact [email protected] for help or more information.'
            )
            return logout(request)
        else:
            if functions.is_instructor(request) or functions.is_customer(
                    request):
                return profile_with_user(request, this_user.id)
            else:
                messages.error(
                    request,
                    'Something went really wrong, contact [email protected] and we will help you.'
                )
                return logout(request)
    else:
        messages.error(request, 'You are not logged in.')
        return redirect('account_login')
Example #2
0
def my_events(request):
    if request.user.is_authenticated:
        status = functions.check_user_valid_profile(request)
        if status == 'not_valid':
            request.method = "GET"
            messages.info(
                request,
                'Det saknas fortfarande nödvändig information om dig. Fyll i dem för att komma igång.'
            )
            return edit_profile(request)
        elif status == 'not_active':
            messages.error(
                request,
                'Ditt konto är inte aktivt, kontakta [email protected] så hjälper vi dig.'
            )
            return logout(request)

    if functions.is_instructor(request):
        this_instructors_events = HobbyEvent.objects.filter(
            event_host=request.user.instructor).order_by('-datetime')
        return render(request,
                      'my_events_page.html',
                      context={'event_list': this_instructors_events})
    else:
        messages.error(request, 'Du är inte inloggad som instruktör.')
        return all_events(request)
Example #3
0
def my_profile(request):
    ## User is redirected here upon LOGIN
    this_user = functions.get_this_user(request)
    if this_user != None:
        status = functions.check_user_valid_profile(request)
        if status == 'not_valid':
            request.method = "GET"
            messages.info(
                request,
                'Det saknas fortfarande nödvändig information om dig. Fyll i dem för att komma igång.'
            )
            return edit_profile(request)
        elif status == 'not_active':
            messages.error(
                request,
                'Ditt konto är inte aktivt, kontakta [email protected] så hjälper vi dig.'
            )
            return logout(request)
        else:
            if functions.is_instructor(request) or functions.is_customer(
                    request):
                return profile_with_user(request, this_user.id)
            else:
                messages.error(
                    request,
                    'Något gick väldigt fel kontakta [email protected] så hjälper vi dig'
                )
                return logout(request)
    else:
        messages.error(request, 'Du är inte inloggad')
        return redirect('account_login')
Example #4
0
def edit_profile(request):
    this_user = functions.get_this_user(request)
    if this_user != None:

        if functions.is_instructor(request):
            account_form = InstructorForm
            account_obj = this_user.instructor
        elif functions.is_customer(request):
            account_form = CustomerForm
            account_obj = this_user.customer
        else:
            messages.error(
                request,
                'Something went really wrong, contact [email protected] and we will help you.'
            )
            return index(request)

        if request.method == "POST":
            form = account_form(request.POST,
                                request.FILES,
                                instance=account_obj)
            if form.is_valid():
                form.save()
                account_obj.valid_profile = True
                account_obj.save()
                messages.success(request, 'Your profile has been changed.')
                request.method = "GET"
                return my_profile(request)
            else:
                messages.error(
                    request,
                    'You profile was not changed. Double check to see that yourinformation is correct.'
                )
                return render(request,
                              'edit_profile_page.html',
                              context={'form': form})
        else:
            form = account_form(None, instance=account_obj)
            return render(request,
                          'edit_profile_page.html',
                          context={'form': form})

    else:
        messages.error(request, 'You are not logged in.')
        return redirect('account_login')
Example #5
0
def edit_profile(request):
    this_user = functions.get_this_user(request)
    if this_user != None:

        if functions.is_instructor(request):
            account_form = InstructorForm
            account_obj = this_user.instructor
        elif functions.is_customer(request):
            account_form = CustomerForm
            account_obj = this_user.customer
        else:
            messages.error(
                request,
                'Något gick väldigt fel. Kontakta [email protected] för hjälp.'
            )
            return index(request)

        if request.method == "POST":
            form = account_form(request.POST,
                                request.FILES,
                                instance=account_obj)
            if form.is_valid():
                form.save()
                account_obj.valid_profile = True
                account_obj.save()
                messages.success(request, 'Din profil är ändrad.')
                request.method = "GET"
                return my_profile(request)
            else:
                messages.error(
                    request,
                    'Din profil ändrades inte. Dubbelkolla gärna att allting är rätt.'
                )
                return render(request,
                              'edit_profile_page.html',
                              context={'form': form})
        else:
            form = account_form(None, instance=account_obj)
            return render(request,
                          'edit_profile_page.html',
                          context={'form': form})

    else:
        messages.error(request, 'Du är inte inloggad som en instruktör')
        return redirect('account_login')
Example #6
0
def hide_show_event(request, event_id):
    if functions.is_instructor(request):
        try:
            this_event = HobbyEvent.objects.get(pk=event_id)
        except HobbyEvent.DoesNotExist:
            messages.error(request,
                           'Det där evenemanget existerar inte längre.')
            return all_events(request)

        this_instructors_events = HobbyEvent.objects.filter(
            event_host=request.user.instructor)

        if this_event in this_instructors_events:
            if request.method == "POST":
                action_type = request.POST.get("action_type")
                if action_type == "show":
                    this_event.is_hidden = False
                    messages.info(
                        request, 'Ditt evenemanng: "' + this_event.event_name +
                        '" har nu blivit återställt!')
                elif action_type == "hide":
                    this_event.is_hidden = True
                    messages.info(
                        request, 'Ditt evenemanng: "' + this_event.event_name +
                        '" är nu gömt och låst.')

                this_event.save()
                request.method = "GET"
                return single_event(request, event_id)

            else:
                messages.error(
                    request,
                    'Det gick inte att ställa in evenemanget, försök igen.')
                return single_event(request, event_id)
        else:
            messages.error(
                request,
                'Du har inte tillgång till det där evenmanget. Dubbelkolla så att du är inloggad på rätt konto.'
            )
            return all_events(request)
    else:
        messages.error(request, 'Du är inte inloggad som instruktör.')
        return all_events(request)
Example #7
0
def event_participators(request, event_id):
    if functions.is_instructor(request):
        try:
            this_event = HobbyEvent.objects.get(pk=event_id)
        except HobbyEvent.DoesNotExist:
            messages.error(request,
                           'Det där evenemanget existerar inte längre.')
            return all_events(request)

        if this_event.event_host == request.user.instructor:
            return render(request,
                          'event_participators_page.html',
                          context={'this_event': this_event})

        else:
            messages.error(
                request,
                'Du har inte tillgång till det där evenmanget. Dubbelkolla så att du är inloggad på rätt konto.'
            )
            return all_events(request)
    else:
        messages.error(request, 'Du är inte inloggad som instruktör.')
        return all_events(request)
Example #8
0
def create_event_terminal(request, event_id):
    if functions.is_instructor(request):
        this_user = functions.get_this_user(request)
        try:
            this_event = HobbyEvent.objects.get(pk=event_id)
        except HobbyEvent.DoesNotExist:
            messages.error(request, 'Där gick något snett, försök igen.')
            return create_events(request)

        if this_event.event_host.user == this_user:
            if not this_event.is_accepted:
                if request.method == "POST":
                    this_event.is_accepted = True
                    this_event.save()
                    request.method = "GET"

                    messages.success(request, 'Ditt evenemang har skapats!')
                    return single_event(request, event_id)

                else:
                    return render(request,
                                  'event_terminal_page.html',
                                  context={'this_event': this_event})
            else:
                messages.error(request,
                               'Du har redan publicerat det här evenemanget.')
                return single_event(request, event_id)
        else:
            messages.error(
                request,
                'Du har inte tillgång till det där evenmanget. Dubbelkolla så att du är inloggad på rätt konto.'
            )
            return create_events(request)
    else:
        messages.error(request, 'Du är inte inloggad som instruktör.')
        return all_events(request)
Example #9
0
def edit_event(request, event_id):
    if request.user.is_authenticated:
        status = functions.check_user_valid_profile(request)
        if status == 'not_valid':
            request.method = "GET"
            messages.info(
                request,
                'Det saknas fortfarande nödvändig information om dig. Fyll i dem för att komma igång.'
            )
            return edit_profile(request)
        elif status == 'not_active':
            messages.error(
                request,
                'Ditt konto är inte aktivt, kontakta [email protected] så hjälper vi dig.'
            )
            return logout(request)

    if functions.is_instructor(request):
        try:
            this_event = HobbyEvent.objects.get(pk=event_id)
        except HobbyEvent.DoesNotExist:
            messages.error(request, 'Där gick något snett, försök igen.')
            return create_events(request)

        this_instructors_events = HobbyEvent.objects.filter(
            event_host=request.user.instructor)
        if this_event in this_instructors_events:
            if request.method == "POST":
                form = CreateEventForm(request.POST, instance=this_event)
                if form.is_valid():
                    form.save()
                    messages.success(
                        request, 'Ditt evenemang: "' + this_event.event_name +
                        '" är nu ändrat.')
                    request.method = "GET"
                    return single_event(request, this_event.id)

                else:
                    messages.error(
                        request,
                        'Ditt evenemang kunde inte ändras. Dubbelkolla gärna så att allting är rätt.'
                    )
                    return render(
                        request,
                        'create_event_page.html',
                        context={
                            'form':
                            form,
                            'type':
                            'edit',
                            'spam_uri':
                            'https://www.spelapaintball.com/#wpcf7-f2197-o1'
                        })
            else:
                form = CreateEventForm(instance=this_event)
                return render(
                    request,
                    'create_event_page.html',
                    context={
                        'form':
                        form,
                        'type':
                        'edit',
                        'spam_uri':
                        'https://www.spelapaintball.com/#wpcf7-f2197-o1'
                    })
        else:
            messages.error(
                request,
                'Du har inte tillgång till det där evenmanget. Dubbelkolla så att du är inloggad på rätt konto.'
            )
            return single_event(request, event_id)
    else:
        messages.error(request, 'Du är inte inloggad som instruktör.')
        return all_events(request)
Example #10
0
def create_event(request):
    if functions.is_instructor(request):
        status = functions.check_user_valid_profile(request)
        if status == 'not_valid':
            request.method = "GET"
            messages.info(
                request,
                'Necessary information is still missing, fill them in before getting started.'
            )
            return edit_profile(request)
        elif status == 'not_active':
            messages.error(
                request,
                'Your account is inactive, contact [email protected] and we will help you.'
            )
            return logout(request)

        current_user = request.user
        if request.method == "POST":
            event_object = HobbyEvent.objects.create(event_host=instructor,
                                                     hobby=instructor.hobbies,
                                                     is_active=True)
            color = random.choice(colors)
            event_object.event_color_red = color[0]
            event_object.event_color_green = color[1]
            event_object.event_color_blue = color[2]
            event_object.save()
            form = CreateEventForm(request.POST, instance=event_object)
            if form.is_valid():
                form.save()
                messages.info(
                    request,
                    'Last step, double check so that all information is correct.'
                )
                request.method = "GET"
                return create_event_terminal(request, event_object.id)

            else:
                messages.error(
                    request,
                    'Your event could not be created, double check so that everything is correct.'
                )
                return render(
                    request,
                    'create_event_page.html',
                    context={
                        'form':
                        form,
                        'type':
                        'create',
                        'spam_uri':
                        'https://www.spelapaintball.com/#wpcf7-f2197-o1'
                    })
        else:
            form = CreateEventForm()
            return render(request,
                          'create_event_page.html',
                          context={
                              'form':
                              form,
                              'type':
                              'create',
                              'spam_uri':
                              'https://www.spelapaintball.com/#wpcf7-f2197-o1'
                          })

    else:
        messages.error(request, 'You are not logged in.')
        return all_events(request)
Example #11
0
def create_event(request):
    if functions.is_instructor(request):
        status = functions.check_user_valid_profile(request)
        if status == 'not_valid':
            request.method = "GET"
            messages.info(
                request,
                'Det saknas fortfarande nödvändig information om dig. Fyll i dem för att komma igång.'
            )
            return edit_profile(request)
        elif status == 'not_active':
            messages.error(
                request,
                'Ditt konto är inte aktivt, kontakta [email protected] så hjälper vi dig.'
            )
            return logout(request)

        current_user = request.user
        if request.method == "POST":
            event_object = HobbyEvent.objects.create(event_host=instructor,
                                                     hobby=instructor.hobbies,
                                                     is_active=True)
            color = random.choice(colors)
            event_object.event_color_red = color[0]
            event_object.event_color_green = color[1]
            event_object.event_color_blue = color[2]
            event_object.save()
            form = CreateEventForm(request.POST, instance=event_object)
            if form.is_valid():
                form.save()
                messages.info(
                    request,
                    'Sista steget, dubbelkolla så att all info är rätt.')
                request.method = "GET"
                return create_event_terminal(request, event_object.id)

            else:
                messages.error(
                    request,
                    'Ditt evenemang kunde inte skapas. Dubbelkolla gärna så att allting är rätt.'
                )
                return render(
                    request,
                    'create_event_page.html',
                    context={
                        'form':
                        form,
                        'type':
                        'create',
                        'spam_uri':
                        'https://www.spelapaintball.com/#wpcf7-f2197-o1'
                    })
        else:
            form = CreateEventForm()
            return render(request,
                          'create_event_page.html',
                          context={
                              'form':
                              form,
                              'type':
                              'create',
                              'spam_uri':
                              'https://www.spelapaintball.com/#wpcf7-f2197-o1'
                          })

    else:
        messages.error(request, 'Du är inte inloggad som instruktör.')
        return all_events(request)