示例#1
0
def new(request):
    if request.method == 'POST':
        form = NewForm(request.POST)
        if form.is_valid():
            # get cleaned data from form
            name = form.cleaned_data['name']
            desc = form.cleaned_data['desc']
            startBid = form.cleaned_data['startBid']
            if form.cleaned_data['imgSrc']:
                imgSrc = form.cleaned_data['imgSrc']
            else:
                imgSrc = "#"
            if form.cleaned_data['category']:
                category = form.cleaned_data['category']
            # get user id and store in owner
            current_id = request.user.id
            owner = User.objects.get(id=current_id)
            # store cleaned data in listings table
            newlisting = Listing(name=name,
                                 description=desc,
                                 startBid=startBid,
                                 imgSrc=imgSrc,
                                 category=category,
                                 owner=owner)
            newlisting.save()

            message = django.contrib.messages.success(
                request, 'New listing added successfully.')
            return redirect("/", {"messages": message})
    else:
        form = NewForm()
    return render(request, "auctions/new.html", {"form": form})
示例#2
0
def createListings(request):
    if not request.user.is_authenticated:
        return render(request, "auctions/login.html",
                      {"message": "You should login first."})
    if request.method == "POST":
        l_title = request.POST["title"]
        l_description = request.POST["description"]
        l_bid = request.POST["bid"]
        l_img_url = request.POST["url"]
        l_category = request.POST["category"]
        l_publisher = request.user.username

        listing = Listing(title=l_title,
                          description=l_description,
                          image_url=l_img_url,
                          publisher=l_publisher)
        listing.save()

        bid = Bid(bid=l_bid, listing_id=listing.pk)
        bid.sava()

        categroy = Category(category=l_category, listing_id=listing.pk)
        categroy.save()

        return HttpResponseRedirect(reverse("listing", listing.pk))
    return render(request, "auctions/createListings.html")
示例#3
0
def create_listing(request):
    # gets the categories available on the site
    categories = Categorie.objects.all()
    # checks if the request method is POST
    if request.method == "POST":
        # gets the new listing's info
        title = request.POST["title"]
        description = request.POST["description"]
        img_url = request.POST["img_url"]
        price = request.POST["price"]
        try:
            category = Categorie.objects.get(pk=int(request.POST["category"]))
        except Categorie.DoesNotExist:
            category = None
        user = User.objects.get(pk=request.user.id)
        listing = Listing(title=title,
                          description=description,
                          image_URL=img_url,
                          price=price,
                          category=category,
                          user=user)
        # saves the listing info
        listing.save()
        # returns the user to the "create a listing" page with a message that the listing was created succesfully
        return render(
            request, "auctions/create_listing.html", {
                "form": ListingForm(),
                "categories": categories,
                "message": "Listing created succefully!",
            })
    # if the user isn't creating an entry, it shows the regular "create a listing" form
    return render(request, "auctions/create_listing.html", {
        "form": ListingForm(),
        "categories": categories,
    })
示例#4
0
def save_listing(title, description, starting_bid, listing_image, category,
                 added_by):
    """
    Save 'listing' while creating new
    """
    listing = Listing(title=title,
                      description=description,
                      listing_image=listing_image,
                      bid=starting_bid,
                      category_id=category,
                      user_id=added_by)
    listing.save()
示例#5
0
def add_listing(listing):
    try:
        new_listing = Listing(listing_title=listing['title'],
                              listing_description=listing['desc'],
                              listing_price=listing['starting_price'],
                              listing_owner=listing['owner'],
                              listing_category=listing['category'],
                              listing_bid_close=listing['closing_date'])
        new_listing.save()
    except:
        return False

    return True
示例#6
0
def added_listing(request, username):
    if request.method == "POST":
        newlist = NewListing(request.POST)
        if newlist.is_valid():
            title = request.POST.get('title')
            description = request.POST.get('description')
            img = request.POST.get('image')
            bid = request.POST.get('bid')
            #Listings.objects.create(seller_name = username, )
            user = User.objects.get(username=username)
            new_listing = Listing(seller_name=user,
                                  description=description,
                                  title=title,
                                  initial_bid=bid,
                                  image=img)
            new_listing.save()
            return HttpResponseRedirect(reverse("auctions:index"))
示例#7
0
def verify_listing(listing):
    try:
        listing = Listing(listing_title=listing['title'],
                          listing_description=listing['desc'],
                          listing_price=listing['starting_price'],
                          listing_owner=listing['owner'],
                          listing_category=listing['category'],
                          listing_bid_close=listing['closing_date'])
    except:
        pass

    if isinstance(listing, Listing):
        return True
    else:
        return False
示例#8
0
def create_listing(request):
    if request.method == "POST":
        title = request.POST["title"]
        description = request.POST["description"]
        sbid = request.POST["bid"]
        category_title = request.POST["category"]
        categories = []
        for c in Category.objects.all():
            categories.append(c.title)
        if category_title not in categories:
            category = Category(title=category_title)
            category.save()
        category = Category.objects.get(title=category_title)
        image = request.POST["image"]
        listing = Listing(active=True,
                          creater=request.user,
                          title=title,
                          description=description,
                          starting_bid=sbid,
                          category=category,
                          image=image)
        listing.save()
        return HttpResponseRedirect(reverse("index"))
    return render(request, "auctions/create_listing.html")
                                    password=password)
    user.save()

# Make Categories:
for cat_type in category_types:
    cat = Category(name=cat_type)
    cat.save()

# make Listings associated with Users (active is default to true):
for title, price, description, owner, image, category in listings:
    user_model = get_user_model()
    user = user_model.objects.get(username=owner)
    category_obj = Category.objects.get(name=category)
    listing = Listing(title=title,
                      starting_price=price,
                      description=description,
                      owner=user,
                      image_url=image,
                      category=category_obj)
    listing.save()

# make watchlists
for user, listing in watchlists:
    user_model = get_user_model()
    user = user_model.objects.get(username=user)
    listing_obj = Listing.objects.get(title=listing)
    user.watched_items.add(listing_obj)

# make bids and associate them with the correct listing
for listing, bidder, bid in bids:
    user_model = get_user_model()
    user = user_model.objects.get(username=bidder)
示例#10
0
def submit(request):
    if request.method == 'POST':
        listtable = Listing()
        now = datetime.now()
        dt = now.strftime('%d, %Y, %B, %X')
        listtable.owner = request.user.username
        listtable.title = request.POST.get('title')
        listtable.description = request.POST.get('description')
        listtable.price = request.POST.get('price')
        listtable.category = request.POST.get('category')
        if request.POST.get('link'):
            listtable.link = request.POST.get('link')
        else:
            pass
        listtable.time = dt
        listtable.save()
        all = Alllisting()
        items = Listing.objects.all()
        for i in items:
            all.listingid = i.id
            all.title = i.title
            all.description = i.description
            all.link = i.link
            all.save()
        return redirect('index')
    else:
        return redirect('index')