예제 #1
0
def cart(request):

    return render_to_response('cart.html',
                              {'form': Cart.objects.filter(user=User.objects.get(id= auth.get_user(request).id)),
                               'checkup':Checkup.objects.filter(user=User.objects.get(id= auth.get_user(request).id)),
                               'testdrive':TestDrive.objects.filter(user=User.objects.get(id= auth.get_user(request).id)),
                              'username': auth.get_user(request).username},
        context_instance=RequestContext(request)
    )
예제 #2
0
def logout(request):
    print(auth.get_user(request).username)

    print("logout working")
    auth.logout(request)
    print(auth.get_user(request).username)
    if (auth.get_user(request).is_authenticated):
        print("hii")
    else:
        print("bye")
    return redirect('/login')
예제 #3
0
def add_test_drive(request):
    args={}
    args.update(csrf(request))
    args['car'] = Car.objects.all()

    if request.POST:
        de=TestDrive(car= Car.objects.get(id=request.POST.get('ComboBox','')),
                     user=User.objects.get(id= auth.get_user(request).id),
                     date_completed=request.POST.get('min',''))
        de.save()
        args['word'] = "Спасибо за запись на тест-драйв!"
    args['username'] = auth.get_user(request).username
    return render_to_response('testdrive.html',args)
예제 #4
0
def billed(request):
    try:
        bill = Order.objects.get(table_id=auth.get_user(request), billed=False)
        bill.billed = True
        bill.save()
    except Order.DoesNotExist:
        pass
    try:
        cart = Cart.objects.filter(table_id=auth.get_user(request))
        cart.delete()
    except Cart.DoesNotExist:
        pass
    auth.logout(request)
    return HttpResponseRedirect('login')
예제 #5
0
def remove_from_cart(request):
    food_id = request.POST.get('food_id')
    if food_id == 'ALL':
        try:
            cart = Cart.objects.get(table_id=auth.get_user(request))
            cart.delete()
        except Cart.DoesNotExist:
            pass
    else:
        food = Food.objects.get(food_id=food_id)
        cart = Cart.objects.get(table_id=auth.get_user(request))
        cart_state = Cart_State.objects.filter(cart=cart, food=food).first()
        cart_state.delete()

    return HttpResponse('')
예제 #6
0
def add_to_cart(request):
    food_id = request.POST.get('food_id')
    quantity = int(request.POST.get('quantity'))
    food = Food.objects.get(food_id=food_id)
    try:
        cart = Cart.objects.get(table_id=auth.get_user(request))
        cart_s = Cart_State.objects.filter(cart=cart)
        if cart_s.count() + quantity > 30:
            return HttpResponse('Failure')
    except Cart.DoesNotExist:
        cart = Cart.objects.create(table_id=auth.get_user(request))
    for x in range(quantity):
        cart_state = Cart_State.objects.create(cart=cart, food=food)

    return HttpResponse('success')
예제 #7
0
def student(request, student_id):
    if (request.method == "GET"):
        user = auth.get_user(request)
        if (user.is_authenticated):
            actual_user = Profile.objects.get(user=user)
            if (actual_user.start_No <= student_id
                    or actual_user.end_No >= student_id):
                stu = Student.objects.get(number=student_id)
                return render(request, 'student.html', {
                    'user': actual_user,
                    'student': stu
                })
            else:
                return redirect('/login')
                #this redirection supposed to be changed

        #    return redirect('/login')
        #print("jii")
        else:
            return redirect('/login')

    else:
        discrepency = request.POST.get('discrepency')

        comment = request.POST['comment']
        stu = Student.objects.get(number=student_id)
        stu.check_box = 'Yes'
        print(stu.discrepency)
        if (str(discrepency) == 'on'):
            stu.discrepency = 'Yes'
        else:
            stu.discrepency = 'No'

        print(stu.discrepency)
        stu.comment = comment
        stu.save()
        user = auth.get_user(request)
        actual_user = Profile.objects.get(user=user)
        arr = list()
        for num in range(actual_user.start_No, actual_user.end_No + 1):
            student = Student.objects.get(number=num)
            print(student.first_name)
            arr.append(student)

        return render(request, 'ta_dashboard.html', {
            'user': actual_user,
            "arr": arr
        })
예제 #8
0
def get_order_state(request):
    bill = Order.objects.filter(table_id=auth.get_user(request), billed=False)
    lists = Order_State.objects.filter(order=bill[0]).only('state')
    result = []
    for state in lists:
        result.append(state.state)
    return JsonResponse(result, safe=False)
예제 #9
0
def force_logout(request):
    try:
        bill = Order.objects.get(table_id=auth.get_user(request), billed=False)
        hasOrder = 'true'
    except Order.DoesNotExist:
        hasOrder = 'false'
    return HttpResponse(hasOrder)
예제 #10
0
def sendEmail(request):

    if request.method == 'POST':
        recipients = request.POST.getlist('check')
        sender = auth.get_user(request).email
        password = request.POST.get('password', '')
        subject = request.POST.get('subject', '')
        message = request.POST.get('message', '')
        if sender and subject and message and password:
            try:
                send_mail(subject,
                          message,
                          sender,
                          recipients,
                          auth_user=sender,
                          auth_password=password)
            except BadHeaderError:
                return HttpResponse('Invalid Header Encountered')
            print(messages.get_messages(request))
        else:
            print('Incomplete Details')

        return redirect(request.META.get('HTTP_REFERER'))
    else:
        return redirect(request.META.get('HTTP_REFERER'))
예제 #11
0
 def post(self, request, id):
     document = Document.objects.get(id=id)
     point = int(request.POST.get('point'))
     find_or_create_postlike = PostLikes.objects.get_or_create(
         user=auth.get_user(request), document=document)
     find_or_create_postlike[0].value = point
     find_or_create_postlike[0].save()
     return redirect(reverse_lazy('home'))
예제 #12
0
def add_checkup(request):
    args={}
    args.update(csrf(request))
    args['service'] = TypeOfService.objects.all()
    args['car'] = TypeOfService.objects.all()
    if request.POST:
        de=Checkup(date_completed= request.POST.get('date_completed',''),
                   reg_number=request.POST.get('reg_number',''),
                   run=request.POST.get('run',''),
                   car=request.POST.get('marka',''),
                   type_of_service=TypeOfService.objects.get(id=request.POST.get('type_of_service','')),
                   user=User.objects.get(id= auth.get_user(request).id)
                   )
        de.save()
        args['word'] = "Спасибо за запись на техосмотр!"
    args['username'] = auth.get_user(request).username
    return render_to_response('checkup.html',args)
예제 #13
0
def logout(request):
    try:
        order = Order.objects.get(table_id=auth.get_user(request),
                                  billed=False)
        return redirect('home')
    except Order.DoesNotExist:
        auth.logout(request)
        return HttpResponseRedirect('thankyou')
예제 #14
0
def vendor_index(request):
    usr = auth.get_user(request)
    us = User.object.get(user_id=usr.user_id)
    if us.is_pgVendor:
        form = PasswordChangeForm(user=request.user)
        datas = {'form': form}
        return render(request, 'payingGuest/vendor/index.html', datas)
    else:
        return redirect("/")
예제 #15
0
def bill_page(request):
    table_id = auth.get_user(request)
    bill = Order.objects.get(table_id=auth.get_user(request), billed=False)
    state = Order_State.objects.filter(order=bill)
    id = bill.order_id
    time = bill.timestamp
    result = []
    total = 0
    for state in state:
        if state.state != "cancelled":
            result.append(state)
            total += state.food.price
    args = {'result': result, 'id': id, 'total': total}
    return render(
        request,
        'restaurant/bill.html',
        args,
    )
예제 #16
0
def favorites(request):
    user = auth.get_user(request)
    fav = Article.objects.filter(favorite__pk=user.pk).order_by('-creation_date')
    paginator = Paginator(fav, 20)  # Show 25 contacts per page.
    page_number = request.GET.get('page')
    page_obj = paginator.get_page(page_number)
    science = 'Science'
    technology = 'Technology'
    return render(request, 'base/favorites.html', {'articles': page_obj, 'science': science, 'technology': technology})
예제 #17
0
def return_order(request):
    index = int(request.POST.get('index'))
    bill = Order.objects.get(table_id=auth.get_user(request), billed=False)
    orderedFood = Order_State.objects.filter(order=bill)
    counter = 0
    for food in orderedFood:
        if counter == index:
            if food.state == 'ordered' or food.state == 'making':
                food.state = 'cancelled'
                food.save()
                print('====================================')
                print("Table", auth.get_user(request), "cancelled")
                print(food.food.food_name)
                print('====================================')
            break
        else:
            counter = counter + 1
    return HttpResponse('')
예제 #18
0
def add_phone(request):
    if request.method == 'POST':
        user = auth.get_user(request)
        phone = request.POST['phone']
        client = Client.objects.create(phone=phone, user=user)
        client.save()
        print("Client created")
        return redirect('/')
    else:
        return redirect('/')
예제 #19
0
def add_cart(reguest):
    args={}
    args.update(csrf(reguest))
    if reguest.POST:
        args['car'] = Car.objects.get(id=reguest.POST.get('id',''))
        de=Cart(vehicle= Car.objects.get(id=reguest.POST.get('id','')),
                user=User.objects.get(id= auth.get_user(reguest).id),
                quantity=reguest.POST.get('quantity',''))
        de.save()
    return redirect('/order/cart/')
예제 #20
0
def proceed_order(request):
    table_id = auth.get_user(request)
    cart = Cart.objects.filter(table_id=table_id)
    proceed_order = 'cart_empty'
    print('==============================================')
    print("Table", table_id, "ordered")
    for cart in cart:
        proceed_order = 'proceed_order'
        cart_food = cart.carted_food.all()
        for food in cart_food:
            try:
                order = Order.objects.get(table_id=auth.get_user(request),
                                          billed=False)
            except Order.DoesNotExist:
                order = Order.objects.create(table_id=auth.get_user(request))
            order_state = Order_State.objects.create(order=order,
                                                     food=food,
                                                     state='ordered')
            print(food.food_name)
    print('==============================================')
    cart.delete()
    hasOrder = False
    total = 0
    try:
        bill = Order.objects.get(table_id=auth.get_user(request), billed=False)
        hasOrder = True
        state = Order_State.objects.filter(order=bill)
        for state in state:
            if state.state != 'cancelled':
                total += state.food.price
    except Order.DoesNotExist:
        hasOrder = False
    args = {
        'hasOrder': hasOrder,
        'total': total,
        'proceed_order': proceed_order
    }
    return render(
        request,
        'restaurant/block_home.html',
        args,
    )
예제 #21
0
def block_cart(request):
    category_id = request.POST.get('category_id')
    cart = Cart.objects.filter(table_id=auth.get_user(request))
    foodlist = []
    for cart in cart:
        cart_food = cart.carted_food.all()
        for food in cart_food:
            foodlist.append(food)
    context = {'cart': foodlist, 'category_id': category_id}
    template = 'restaurant/block_cart.html'
    return render(request, template, context)
예제 #22
0
def login(request):
    if request.method == 'GET':
        username = request.GET.get('username')
        password = request.GET.get('password')

        user = auth.authenticate(username=username, password=password)

        if user is not None:
            auth.login(request, user)
            try:
                order = Order.objects.get(table_id=auth.get_user(request),
                                          billed=False)
            except Order.DoesNotExist:
                order = Order.objects.create(table_id=auth.get_user(request))
            print('=========================================')
            print("Table ", username, " logged in successfully!")
            print('=========================================')
            return redirect('index')
        else:
            return HttpResponse(
                '<h1>Please scan QR code in order to use our website</h1>')
    else:
        return HttpResponse('Please scan QR code in order to use our website')
예제 #23
0
def block_orders(request):
    bill = Order.objects.get(table_id=auth.get_user(request), billed=False)
    foodlist = []
    total = 0
    state = Order_State.objects.filter(order=bill)
    for state in state:
        foodlist.append(state)
        if state.state != 'cancelled':
            total += state.food.price
    context = {'foodlist': foodlist, 'total': total}
    return render(
        request,
        'restaurant/block_orders.html',
        context,
    )
예제 #24
0
def add_user_info_submit(request):
    if request.method == 'POST':
        phone = request.POST['phone']
        address = request.POST['address']
        card = request.POST['card']
        user = auth.get_user(request)
        client = Client.objects.create(phone=phone,
                                       address=address,
                                       card=card,
                                       user=user)

        client.save()
        print("Client created")
        return redirect('/')
    else:
        return render(request, 'client/add_user_info.html')
예제 #25
0
def art_detail(request, slug):
    article = get_object_or_404(Article, slug=slug)
    user = auth.get_user(request)
    if request.method == "POST" and 'add_favorites' in request.POST:
        article.favorite.add(user)
        return redirect("art_detail", slug=slug)
    if request.method == "POST" and 'delete_favorites' in request.POST:
        article.favorite.remove(user)
        return redirect("art_detail", slug=slug)
    else:
        if user in article.favorite.all():
            in_favorite = True
        else:
            in_favorite = False
        # article = Article.objects.get(pk=index)
        return render(request, 'base/article_detail.html', {'article': article, 'in_favorite': in_favorite})
예제 #26
0
def block_services(request):
    total = 0
    try:
        bill = Order.objects.get(table_id=auth.get_user(request), billed=False)
        hasOrder = True
        state = Order_State.objects.filter(order=bill)
        for state in state:
            if state.state != 'cancelled':
                total += state.food.price
    except Order.DoesNotExist:
        hasOrder = False
    args = {'hasOrder': hasOrder, 'total': total}
    return render(
        request,
        'restaurant/block_services.html',
        args,
    )
예제 #27
0
def login(request):
    if request.method == "POST":
        username = request.POST['username']
        password = request.POST['password']
        user = auth.authenticate(username=username,password=password)

        if user is not None:
            print("user logged in")
            auth.login(request,user)
            user = auth.get_user(request)
            print(user.is_authenticated)
            return redirect('/', {'user':user})
        else:
            print("invalid user")
            messages.info(request,'INVALID USER')
            return redirect('/loginform.html')
    else:
        return render(request, 'loginform.html')
예제 #28
0
def block_items(request):
    category_id = request.POST.get('category_id')
    foods = Food.objects.filter(category_id=category_id, available=True)
    title = Category.objects.filter(category_id=category_id)
    cart = Cart.objects.filter(table_id=auth.get_user(request))
    total = 0
    for cart in cart:
        cart_food = cart.carted_food.all()
        for food in cart_food:
            total += food.price
    args = {
        'Food': foods,
        'Title': title,
        'category_id': category_id,
        'Total': total
    }
    return render(
        request,
        'restaurant/block_items.html',
        args,
    )
예제 #29
0
def book(request, id=None):
    room = get_object_or_404(Room, room_id=id)
    amenities = room.amenities.split(',')
    room_images = RoomImage.objects.filter(room_id__in=id)
    datas = {
        'room': room,
        'amenities': amenities,
        'room_images': room_images,
        'counter': room_images.count()
    }

    if request.method == 'POST':
        booking = RoomsBookingDetail()
        booking.is_active = True
        booking.user_id = auth.get_user(request)
        booking.room_id = room
        booking.save()
        rooms = room.vacant_beds
        room.vacant_beds = rooms - 1
        room.save()
    path = "/payingGuest/details/" + id
    return redirect(path)
예제 #30
0
def block_menu(request):
    category = Category.objects.exclude(category_name='Drinks')
    category = category.exclude(category_name='Snacks')
    drinks = Category.objects.filter(category_name='Drinks')
    snacks = Category.objects.filter(category_name='Snacks')
    cart = Cart.objects.filter(table_id=auth.get_user(request))
    total = 0
    for cart in cart:
        cart_food = cart.carted_food.all()
        for food in cart_food:
            total += food.price
    args = {
        'Category': category,
        'Drinks': drinks,
        'Snacks': snacks,
        'Total': total
    }
    return render(
        request,
        'restaurant/block_menu.html',
        args,
    )
예제 #31
0
def upload(request):
    if request.method == 'POST':
        form = ImageUploadForm(request.POST or None, request.FILES or None)
        if form.is_valid():
            loop = 1
            myUser = auth.get_user(request)
            usr = User.object.get(user_id=myUser.user_id)
            room = Room.objects.filter(user_id=usr.user_id).aggregate(
                maxId=Max('room_id'))
            newRoom = Room.objects.get(room_id=room['maxId'])
            for file in request.FILES.getlist('image'):
                f = RoomImage()
                f.room_id = newRoom
                f.image_path = file
                f.save()
                if loop == 1:
                    loop += 1
                    Room.objects.filter(room_id=room['maxId']).update(
                        image_path=f.image_path)
            return redirect('managepayment', rid=newRoom)
        else:
            messages.info(request, 'Please Select Valid Images!!')
    return redirect('managepayment')
예제 #32
0
def payment(request):
    amount = request.POST.get('amount', 0)
    id = request.POST.get('rid', '')
    orderid = "R{date}{id}".format(date=datetime.today().strftime('%d%m%y%H'),
                                   id=id)
    myUser = auth.get_user(request)
    usr = User.object.get(user_id=myUser.user_id)
    email = usr.get_email()
    global DURATION, ROOM_ID, USER_ID, ORDER_ID
    DURATION = request.POST.get('durations', 0)
    ROOM_ID = id
    ORDER_ID = orderid
    USER_ID = myUser.user_id

    param_dict = {
        'MID':
        'PpHKSz27823539263765',
        'ORDER_ID':
        orderid,
        'TXN_AMOUNT':
        '{}'.format(amount),
        'CUST_ID':
        email,
        'INDUSTRY_TYPE_ID':
        'Retail',
        'WEBSITE':
        'WEBSTAGING',
        'CHANNEL_ID':
        'WEB',
        'CALLBACK_URL':
        'http://127.0.0.1:8000/payingGuest/vendor/payment/handlerequest/',
    }

    param_dict['CHECKSUMHASH'] = Checksum.generate_checksum(
        param_dict, MERCHANT_KEY)
    return render(request, 'payingGuest/vendor/paytm.html',
                  {'param_dict': param_dict})
예제 #33
0
def submitRoom(request):
    if request.method == 'POST':
        room = Room()
        room.gender = request.POST['gender']
        room.description = request.POST['description']
        room.no_of_beds = request.POST['totalBeds']
        room.vacant_beds = request.POST['vacantCount']
        room.rent_per_bed = request.POST['rentPerBed']
        room.deposit = request.POST['deposit']
        room.available_from = request.POST['available']
        room.address = request.POST['address']
        room.special_instruction = request.POST['instructions']
        area = request.POST['area']
        amenities = request.POST.getlist('amenities')
        myAmenities = ""
        leng = len(amenities)
        for i in amenities:
            if leng == 1:
                myAmenities += i
            else:
                myAmenities += i + ','
            leng -= 1
        room.amenities = myAmenities
        room.area_id = Area.objects.get(area_id=area)
        myUser = auth.get_user(request)
        usr = User.object.get(user_id=myUser.user_id)
        todays = date.today() + relativedelta(months=+2)
        room.exp_date = datetime.today()
        room.user_id = usr
        room.save()
        user_id = room.room_id
        return redirect('/payingGuest/vendor/addrooms#step-2')
    else:
        print("None")

    return render(request, 'payingGuest/vendor/addrooms.html')
예제 #34
0
def manageappointments(request):
    usr = auth.get_user(request)
    myAppointments = RoomAppointments.objects.filter(user_id=usr)
    print(myAppointments)
    myDatas = {'appointments': myAppointments, 'count': myAppointments.count()}
    return render(request, 'payingGuest/vendor/appointments.html', myDatas)