Example #1
0
def create_monitor():
    """
    Three steps form, goes from Monitor > First Item of this monitor > Monitor Page
    :return:
    """
    if "step" not in request.form:
        return render_template('monitors/create_monitor.html',
                               step="monitor_step")
    elif request.form["step"] == "item_step":
        return render_template('monitors/create_monitor.html',
                               step=request.form["step"],
                               monitor_name=request.form['monitor'])
    elif request.form["step"] == "final_step":
        monitor_name = request.form['monitor']
        item_name = request.form['name']
        item_url = request.form['url']
        item_css = request.form['css']

        monitor = Monitor("4b566d3c33a64d8a9ac83658b6eddc9c", monitor_name)
        monitor.save_to_mongo()

        item = Item(monitor._id, item_url, item_name, item_css)
        item.save_to_mongo()

        return redirect(url_for('users/monitors.html', alert='success'))
Example #2
0
def edit_item(item_id):
    item = Item.get_by_id(item_id)
    companies = Item_company.get_all_companies()
    types = Type.get_all_types()

    if request.method == 'POST':
        model_name = request.form.get('model_name')
        x = request.form.get('company_name')
        company = request.form.get('add_new_company')
        hsn_code = request.form.get('hsn_code')
        type = request.form.get('add_new_type')
        y = request.form.get('type')

        tax = request.form.get('tax')
        price = request.form.get('price')
        if company == None:
            company = x
        if type == None:
            type = y
        # print(model_name,x,company,hsn_code,type,y,tax,price)
        item = Item(hsn_code, company, model_name, type, tax, price, item_id)
        item.save_to_mongo()
        return redirect(url_for('.index'))

    return render_template('items/edit_item.jinja2',
                           item=item,
                           companies=companies,
                           types=types,
                           new_item_page=True)
def create_alert():

    # in case we receive GET - this is the first time the page is opened
    # in case we receive  POST - we have the details
    if request.method == 'GET':
        return render_template('alerts/create_alert.html')
    else:
        # get from the request the newly created alert details
        price_limit = float(request.form['price_limit'])
        item_name = request.form['name']
        item_url = request.form['url']
        try:
            item = Item(item_name, item_url)
        except StoreErrors.StoreError as e:
            return e.message
        #get the user details from DB by session email
        user_email = session['email']

        # create the new blog in DB
        new_alert = Alert(user_email, price_limit, item._id)

        new_alert.load_item_price()

        # save to DB only after alert was created
        item.save_to_mongo()

        # will prepare the data of existing alert - based on above method
        return make_response(get_alert_page(new_alert._id))
Example #4
0
 def add_item(self, title, description, image_url, contact, category):
     item = Item(title=title,
                 description=description,
                 image_url=image_url,
                 contact=contact,
                 category=category,
                 user_id=self._id)
     item.save_to_mongo()
Example #5
0
def create_alert():
    if request.method == 'POST':
        name = request.form['alert_name']
        url = request.form['item_url']
        price_limit = float(request.form['price_limit'])
        item = Item(name, url)
        item.save_to_mongo()
        alert = Alert(session['email'], price_limit, item._id)
        alert.save_to_mongo()
    return render_template("alerts/new_alert.jinja2")
Example #6
0
def create_alert():
    if request.method == 'POST':
        name = request.form['name']
        url = request.form['url']
        price_limit = float(request.form['price_limit'])
        item = Item(name, url)
        item.save()
        alert = Alert(session['email'], price_limit, item._id)
        alert.load_item_price()
    return render_template('alerts/create_alert.html')
Example #7
0
def create_alert(store_id):
    if request.method == 'POST':
        name = request.form['name']
        url = request.form['url']
        price_limit = Utils.get_price_float(request.form['price_limit'])
        item = Item(name, url, store_id)
        item.save_to_mongo()
        alert = Alert(session['email'], price_limit, item._id)
        alert.load_item_price()

    return render_template("alerts/new_alert.html", store_id=store_id)
Example #8
0
def create_alert():
    if request.method == 'POST':
        name = request.form['name']
        url = request.form['url']
        limit = request.form['limit']
        item = Item(name, url)
        item.save_to_mongo()
        alert = Alert(session['email'], limit, item._id, True)
        alert.save_to_mongo()
        return redirect(url_for('.alert', _id=alert._id))
    return render_template('alerts/new.jinja2')
Example #9
0
def create_alert():
    if request.method == 'POST':
        name = request.form['name']
        url = request.form['url']
        price_limit = float(request.form['price'])
        item = Item(name, url)
        item.save_to_mongo()
        alert = Alert(session['email'], price_limit, item._id)
        alert.load_item_price()

    return render_template('alerts/create_alert.html')
Example #10
0
def create_alert():
    if request.method == 'POST':
        # reading data input from form submission
        name = request.form['name']
        url = request.form['url']
        price_limit = float(request.form['price_limit'])
        item = Item(name, url)
        item.save_to_mongo()
        alert = Alert(session['email'], price_limit, item._id)
        alert.load_item_price()  # saved to Mongo already
    return render_template('alerts/new_alert.jinja2')
Example #11
0
def create_alert():
    if request.method == 'POST':
        name = request.form['name']
        url = request.form['url']
        price_limit = request.form['price_limit']
        item=Item(name, url)
        item.save_to_mongo()

        alert = Alert(session['email'],price_limit,item._id)
        alert.load_item_price() # mongoba is ment

    return render_template('alerts/new_alert.jinja2')
Example #12
0
def create_alert():
    if request.method == 'POST':
        name = request.form['name']
        url = request.form['url']
        price_limit = float(request.form['price_limit'])
        item = Item(name, url)
        item.save_to_mongo()
        alert = Alert(session['email'], price_limit, item._id)
        alert.load_item_price() #zapisuje już do mongo
        return redirect(url_for('users.user_alerts'))

    return render_template('alerts/create_alert.html')
Example #13
0
def create_alert():
    if request.method == 'POST':
        name = request.form['name']
        url = request.form['url']
        price_limit = float(request.form['price_limit'])
        item = Item(name, url)
        item.save_database()

        alert = Alert(session['email'], price_limit, item._id)
        alert.load_item_price()  #Already Save to database
        return redirect(url_for('users.getUserAlerts'))
    return render_template('alerts/create_alert.html')
Example #14
0
def create_alert():
    if request.method == "POST":
        name = request.form['name']
        url = request.form['url']
        price_limit = float(request.form['price_limit'])

        item = Item(name, url)
        item.save_to_mongo()

        alert = Alert(session['email'], price_limit, item._id)
        alert.load_item_price() # This already saves to MongoDB
    return render_template("alerts/create_alert.html")
Example #15
0
def create_alert():
    if request.method == 'POST':
        name = request.form['name']
        url = request.form['url']
        price_limit = float(request.form['price_limit'])
        item = Item(name, url)
        item.save_to_mongo()
        alert = Alert(session['email'], price_limit, item._id)
        alert.load_item_price()  # This already saves to MongoDB

    # What happens if it's a GET request
    return render_template('alerts/new_alert.html')
Example #16
0
def create_alert():
    if request.method == "POST":
        name = request.form["name"]
        url = request.form["url"]
        price_limit = float(request.form["price_limit"])

        item = Item(name, url)
        item.to_mongo()

        alert = Alert(session["email"], price_limit, item._id)
        alert.load_item_price()

    return render_template("alerts/new_alert.jinja2")
Example #17
0
def add_item():
    if request.method == 'POST':
        name = request.form['name']
        price = request.form['price']
        description = request.form['description']
        image_url = request.form['image_url']
        category = request.form['category']
        subcategory = request.form['subcategory']

        item = Item(name, price, category, subcategory, description, image_url)
        item.save_to_mongo()

    return render_template('admin/new_item.html')
def create_alert():
    if request.method == 'POST':
        name = request.form['name']
        url = request.form['url']
        price_limit = float(request.form['price_limit'])
        item = Item(name, url)
        item.save_to_mongo()
        alert = Alert(session['user_id'], price_limit, item._id)
        alert.do_price_check()  # saves to mongodb.
        return redirect(url_for('users.user_alerts'))

    return render_template(
        'alerts/new_alert.jinja2')  # Send the user an error if invalid login
Example #19
0
def create_alert():
    if request.method == 'POST':
        name = request.form['name']
        url = request.form['url']
        price_limit = float(request.form['price_limit'])

        item = Item(name, url)
        item.save_to_mongo()

        alert = Alert(session['email'], price_limit, item._id)
        alert.load_item_price(
        )  # this already saves to MongoDB // change method name so its more obvious

    return render_template('alerts/new_alert.html')
Example #20
0
def create_alert():
    if request.method == 'POST':
        name = request.form['name']
        url = request.form['url']
        price_limit = float(request.form['price_limit'])

        item = Item(name, url)
        item.save_to_mongo()

        alert = Alert(session['email'], price_limit, item._id)
        alert.load_item_price()  # This already saves to MongoDB

    # What happens if it's a GET request
    return render_template("alerts/new_alert.jinja2")  # Send the user an error if their login was invalid
Example #21
0
def create_alert():
    if request.method == 'POST':
        name = request.form['item_name']
        url = request.form['item_url']
        price = float(request.form['price'])

        new_item = Item(url, name)
        new_item.save_to_db()

        alert = Alert(session['email'], price, new_item._id)
        alert.load_item_price()  # This already saves to DB.
        return redirect('users/alerts')

    return render_template('alerts/create_alert.jinja2')
Example #22
0
def create_alert():
    if request.method == 'POST':
        name = request.form['name']
        url = request.form['url']
        price_limit = float(request.form['price_limit'])

        item = Item(name, url)
        item.save_to_mongo(
        )  # saves before the alert because of the self.item = Item.get_item(item_id), that must have an entry before initialize alert object

        alert = Alert(session['email'], price_limit, item._id)
        alert.load_item_price()  # load price already has save_to_mongo

    return render_template('alerts/new_alert.jinja2')
Example #23
0
def create_alert():
    if request.method == 'POST':
        name = request.form['name']
        url = request.form['url']
        price_limit = float(request.form['price_limit'])

        item = Item(name, url)
        item.save_to_mongo()

        alert = Alert(session['email'], price_limit, item._id)
        alert.load_item_price()  # This already saves to MongoDB
        return redirect(url_for('users.user_alerts'))
    # What happens if it's a GET request
    return render_template("alerts/new_alert.jinja2")  # Send the user an error if their login was invalid
Example #24
0
def create_alert():
    if request.method == 'POST':
        url = request.form['url']
        price_limit = float(request.form['price_limit'].replace(',', '.'))

        item = Item(url=url)
        item.save_to_mongo()

        alert = Alert(session['email'], price_limit, item._id)
        alert.load_item_info()

        return redirect(url_for('users.user_alerts'))

    return render_template('alerts/create_alert.html')
Example #25
0
def create_alert():
    if request.method == 'POST':
        name = request.form['name']
        url = request.form['url']
        price_limit = float(request.form['price_limit'])

        item = Item(name, url)
        item.save_to_mongo()

        alert = Alert(session['email'], price_limit, item._id)
        alert.load_item_price()
        return redirect(url_for('.get_alert_page', alert_id=alert._id))

    return render_template('alerts/new_alert.jinja2')
Example #26
0
def create_alert():
    if request.method == "POST":
        name = request.form['name']
        url = request.form['url']
        price_limit = float(request.form['price_limit'])

        item = Item(name, url)
        item.save_to_mongo()

        alert = Alert(session['email'], price_limit, item._id)
        alert.load_item_price()  # This method saves to mongo...
        flash("Alert Successfully added!")

    # else it must be a get request so...
    return render_template('alerts/create_alert.html')
Example #27
0
def create_alert():
    if request.method == 'POST':
        name = request.form['name']
        url = request.form['url']
        price_limit = float(request.form['price_limit'])

        #Create ITEM first as it is needed in the alert object creation
        item = Item(name, url)
        item.save_to_mongo()

        alert = Alert(session['email'], price_limit, item._id)
        alert.load_item_price() #This already save the item to monngodb
        return redirect(url_for("users.user_alerts"))

    return render_template('alerts/new_alert.html')
def create_alert():
    if request.method == 'POST':
        name = request.form['name']
        url = request.form['url']
        try:
            price_limit = float(request.form['price_limit'])
        except ValueError:
            price_limit = 0.0
        item = Item(name, url)
        item.save_to_db()
        alert = Alert(session['email'], price_limit, item._id)
        alert.load_item_price()  # also saves to mongodb, good design?
        return redirect(url_for("users.user_alerts"))

    return render_template("alerts/create_alert.html")
Example #29
0
def create_alert():
    if request.method == 'POST':
        name = request.form['name']
        url = request.form['url']
        price_limit = float(request.form['price_limit'])

        # el constructor de Alert busca el item por id asi que el item tiene que existir antes de ccrear la alert

        item = Item(name, url)
        item.save_to_mongo()

        alert = Alert(session['email'], price_limit, item._id)
        alert.load_item_price() #ya salva la alert a mongo

    return render_template('alerts/new_alert.html')
Example #30
0
def create_alert():
    if request.method == 'POST':
        name = request.form['name']
        url = request.form['url']
        price_limit = float(request.form['price_limit'])

        item = Item(name, url)
        item.save_to_db()

        alert = Alert(session['email'], price_limit, item._id)
        alert.update_item_price()  # This also saves the alert alongside

        return redirect(url_for('users.user_alerts'))

    return render_template('alerts/create_alert.html')
Example #31
0
def create_alert():
    if request.method == 'POST':
        name = request.form['name']
        url = request.form['url']
        store_id = request.form.get('store')
        price_limit = float(request.form['price_limit'])

        item = Item(name, url, store_id)
        item.save_to_mongo()
        alert = Alert(session['email'], price_limit, item._id)
        alert.load_item_price()
        return redirect(url_for('users.user_alerts'))

    stores = Store.all()
    return render_template("alerts/create_alert.html", stores=stores)
Example #32
0
def create_alert():
    if request.method == 'POST':
        name = request.form['name']
        url = request.form['url']
        price_limit = float(request.form['price_limit'])

        item = Item(name=name, url=url)
        item.save_to_db()

        alert = Alert(user_email=session['email'],
                      price_limit=price_limit,
                      item_id=item._id)
        alert.load_item_price()  # This already saves to the database

    return render_template('alerts/create_alert.j2')
Example #33
0
def create_alert():
    if request.method == 'POST':
        name = request.form['name']
        url = request.form['url']
        price_limit = float(request.form['price_limit'])

        item = Item(name, url)
        item.save_to_mongo()

        alert = Alert(session['email'], price_limit, item._id)
        alert.load_item_price()  # this already saves to MongoDB

        return redirect(url_for('users.user_alerts'))
    # a 'GET' request
    return render_template('alerts/create_alert.jinja2')
Example #34
0
 def __init__(self, user_email, price_limit, item_id, active=True, last_checked=None, _id=None):
     self.user_email = user_email
     self.price_limit = price_limit
     self.active = active
     self.item = Item.get_by_id(item_id)
     self.last_checked = datetime.datetime.utcnow() if last_checked is None else last_checked
     self._id = uuid.uuid4().hex if _id is None else _id
Example #35
0
def create_alert():
    if request.method == 'POST':
        name = request.form['name']
        url = request.form['url']
        price_limit = float(request.form['price-limit'])

        # create an item first
        item = Item(name, url)
        item.save_to_mongo()

        # now create an alert to this item
        alert = Alert(session['email'], price_limit, item._id)
        alert.load_item_price() # this already saves to MongoDB

        # return redirect(url_for('user_alerts'))

    # What happens if it's a GET request
    return render_template('/alerts/new_alert.html')