def settings_main():
    context = base_context()

    settings = Settings.query.all()

    context['settings'] = settings
    return render_template('settings/index.html', **context)
예제 #2
0
def user_add():
    """
               **Adds a User**

            adds a user to database.

    """
    context = base_context()
    if request.method == 'POST':
        id = request.form['id']
        name = request.form['name']
        password = request.form['password']
        admin_user = request.form.get('admin_user')
        if admin_user == 'True':
            admin_user = True
        else:
            admin_user = False

        has_user = db.session.query(exists().where(Users.id == id)).scalar()

        if has_user is False:
            new_user = Users(id=id, name=name, admin_user=admin_user)
            new_user.set_hash(password)
            db.session.add(new_user)
            db.session.commit()
            return render_template('admin/add.html', **context)
    return render_template('admin/add.html', **context)
def people_add():
    context = base_context()

    if request.method == 'POST':
        name = request.form['name']
        phone = request.form['phone']
        mobile = request.form['mobile']
        email = request.form['email']
        linkedin = request.form['linkedin']
        facebook = request.form['facebook']
        twitter = request.form['twitter']
        birthday = request.form['birthday']
        notes = request.form['notes']
        # calculate age
        today_date = date.today()
        date_format = "%Y-%m-%d"
        b_day = datetime.datetime.strptime(birthday, date_format)
        age = today_date.year - b_day.year - (
            (today_date.month, today_date.day) < (b_day.month, b_day.day))

        # insert data into DB
        person = People(name=name, phone=phone, mobile=mobile, email=email,
                        linkedin=linkedin, facebook=facebook, twitter=twitter,
                        age=age, birthday=birthday, notes=notes)
        db.session.add(person)
        db.session.commit()
        return redirect('/people/add')
    context['message'] = ''
    return render_template('people/add.html', **context)
예제 #4
0
def list_prods(manufac_name):
    context = base_context()

    products = Products.query.filter_by(manufacturer=manufac_name)
    context['prods'] = products
    context['manufac'] = manufac_name
    return render_template('prods/list.html', **context)
예제 #5
0
def prods_add(manufac_name):
    context = base_context()

    has_product = False
    if request.method == 'POST':
        barcode = request.form['barcode']
        price = request.form['price']
        vat_price = request.form['vat_price']
        selling_price = request.form['selling_price']
        manufac = request.form['manufac']
        has_product = db.session.query(exists().where(
            Products.barcode == barcode)).scalar()
        if has_product == False:
            p = Products(barcode=barcode,
                         price=price,
                         vat_price=vat_price,
                         selling_price=selling_price,
                         manufacturer=manufac)
            db.session.add(p)
            db.session.commit()
        context['manufac'] = manufac_name
        context['has_product'] = str(has_product)
        return render_template('prods/add.html', **context)

    context['manufac'] = manufac_name
    context['has_product'] = str(has_product)
    return render_template('prods/add.html', **context)
예제 #6
0
def lookup_prods(manufac_name):
    context = base_context()

    context['manufac'] = manufac_name
    context['fields'] = [key.replace('_', ' ') for key in Product.__table__.columns.keys() if key not in ['manufacturer_name']]

    return render_template('prods/lookup.html', **context)
예제 #7
0
def prods_add(manufac_name):
    context = base_context()

    has_product = False
    if request.method == 'POST':
        barcode = request.form['barcode']
        price = request.form['price']
        vat_price = request.form['vat_price']
        selling_price = request.form['selling_price']
        manufacturer = Manufacturer.query.filter(
            Manufacturer.name == manufac_name).first()
        has_product = db.session.query(
            exists().where(Product.barcode == barcode)).scalar()
        if has_product is False:
            p = Product()
            p.barcode = barcode
            p.price = price
            p.vat_price = vat_price
            p.selling_price = selling_price
            p.manufacturer = manufacturer.id
            db.session.add(p)
            db.session.commit()
        context['manufac'] = manufac_name
        context['has_product'] = str(has_product)
        return render_template('prods/add.html', **context)

    context['manufac'] = manufac_name
    context['has_product'] = str(has_product)
    return render_template('prods/add.html', **context)
예제 #8
0
def list_prods(manufac_name):
    context = base_context()

    manufac = Manufacturer.query.filter(
        Manufacturer.name == manufac_name).first()
    context['prods'] = manufac.products
    context['manufac'] = manufac_name
    return render_template('prods/list.html', **context)
def appointment_edit(id):
    context = base_context()
    u = Users.query.get(id)
    context['id'] = u.id
    context['name'] = u.name
    context['password'] = u.password
    context['admin_user'] = u.admin_user
    return render_template('admin/edit.html', **context)
def settings_edit(settings_name):
    context = base_context()

    s = Settings.query.get(settings_name)

    context['settings_name'] = settings_name
    context['current_value'] = s.value

    return render_template('settings/edit.html', **context)
예제 #11
0
def user_list():
    """
           **Get The List of Users**

            Lists all users in the database.

    """
    context = base_context()
    context['users'] = Users.query.all()
    return render_template('admin/index.html', **context)
예제 #12
0
def prods_edit(manufac_name, barcode):
    context = base_context()

    product = Product.query.filter(
        Product.barcode == barcode
        and Product.manufacturer == manufac_name).first()

    context['product'] = product
    context['manufac'] = manufac_name
    return render_template('prods/edit.html', **context)
예제 #13
0
def appointment_edit(ids):
    context = base_context()

    a = Appointments.query.get(ids)
    context['id'] = a.id
    context['name'] = a.name
    context['date'] = a.date
    context['time'] = a.time
    context['active'] = a.active
    return render_template('appointment/edit.html', **context)
예제 #14
0
def prods_edit(manufac_name, barcode):
    context = base_context()

    p = Product.query.filter(Product.barcode == barcode
                             and Product.manufacturer == manufac_name).first()

    context['barcode'] = p.barcode
    context['price'] = p.price
    context['vat_price'] = p.vat_price
    context['selling_price'] = p.selling_price
    context['manufac'] = manufac_name
    return render_template('prods/edit.html', **context)
def settings_update():
    context = base_context()

    settings_name = request.form['settings_name']
    settings_value = request.form['settings_value']
    s = Settings.query.get(settings_name)
    s.value = settings_value
    db.session.commit()
    settings = Settings.query.all()

    context['settings'] = settings
    return render_template('settings/index.html', **context)
예제 #16
0
파일: view.py 프로젝트: zain03031983/shopyo
def index():
    context = base_context()

    for module in os.listdir('modules'):
        if module.startswith('__'):
            continue
        if module not in ['control_panel']:
            with open('modules/{}/info.json'.format(module)) as f:
                module_info = json.load(f)
                all_info[module] = module_info

    context['all_info'] = all_info
    return render_template('control_panel/index.html', **context)
예제 #17
0
파일: login.py 프로젝트: mghall25/shopyo-1
def login():
    context = base_context()

    if request.method == 'POST':
        user_id = request.form['user_id']
        password = request.form['password']
        user = Users.query.filter_by(id=user_id).first()
        if user is None or not user.check_hash(password):
            flash('please check your user id and password')
            return redirect(url_for('login.login'))
        login_user(user)
        return redirect(url_for('manufac.manufac'))
    return render_template('/login.html', **context)
예제 #18
0
def appointment_add():
    context = base_context()

    if request.method == 'POST':
        name = request.form['name']
        date = request.form['date']
        active = request.form['active']
        time = request.form['time']
        m = Appointments(name=name, date=date, time=time, active=active)
        db.session.add(m)
        db.session.commit()
        return redirect('/appointment/add')
    return render_template('appointment/add.html', **context)
예제 #19
0
def upload_db():
    context = base_context()
    def has_internet():
        url = 'http://www.google.com/'
        timeout = 5
        try:
            _ = requests.get(url, timeout=timeout)
            return True
        except requests.ConnectionError:
            pass
        return False

    context['has_internet'] = has_internet()
    return render_template('save/index.html', **context)
예제 #20
0
파일: view.py 프로젝트: zain03031983/shopyo
def manufac_add():
    context = base_context()

    has_manufac = False
    if request.method == 'POST':
        name = request.form['name']
        has_manufac = Manufacturer.manufacturer_exists(name)
        if has_manufac == False:
            m = Manufacturer(name=name)
            m.insert()
        return render_template('manufac/add.html', **context)

    context['has_manufac'] = str(has_manufac)
    return render_template('manufac/add.html', **context)
예제 #21
0
파일: manufac.py 프로젝트: keshabb/shopyo
def manufac_add():
    context = base_context()

    has_manufac = False
    if request.method == 'POST':
        name = request.form['name']
        has_manufac = db.session.query(exists().where(Manufacturers.name == name)).scalar()
        if has_manufac == False:
            m = Manufacturers(name=name)
            db.session.add(m)
            db.session.commit()
        return render_template('manufac/add.html', **context)

    context['has_manufac'] = str(has_manufac)
    return render_template('manufac/add.html', **context)
예제 #22
0
def manufac_update():
    context = base_context()

    if request.method == 'POST': #this block is only entered when the form is submitted
        name = request.form['manufac_name']
        old_name = request.form['old_manufac_name']
        try:
            m = Manufacturer.query.get(old_name)
            m.name = name
            m.update()
        except sqlalchemy.exc.IntegrityError:
            context['message'] = "you cannot modify to an already existing manufacturer"
            context['redirect_url'] = "/manufac/"
            render_template('manufac/message.html', **context)
        return redirect('/manufac/')
예제 #23
0
def appointment_edit(id):
    """
                   **Update information for a User**

        :param id: id of the user
        :type id: int

    """
    context = base_context()
    u = Users.query.get(id)
    context['id'] = u.id
    context['name'] = u.name
    context['password'] = u.password
    context['admin_user'] = u.admin_user
    return render_template('admin/edit.html', **context)
예제 #24
0
파일: view.py 프로젝트: zain03031983/shopyo
def people_edit(id):
    context = base_context()

    a = People.query.get(id)

    context['id'] = a.id
    context['name'] = a.name
    context['phone'] = a.phone
    context['mobile'] = a.mobile
    context['email'] = a.email
    context['linkedin'] = a.linkedin
    context['facebook'] = a.facebook
    context['twitter'] = a.twitter
    context['age'] = a.age
    context['birthday'] = a.birthday
    context['notes'] = a.notes
    return render_template('people/edit.html', **context)
예제 #25
0
def prods_add(manufac_name):
    context = base_context()

    has_product = False
    if request.method == 'POST':
        barcode = request.form['barcode']
        name = request.form['name']
        description = request.form['description']
        category = request.form['category']
        date = request.form['date']
        price = request.form['price']
        selling_price = request.form['selling_price']
        in_stock = request.form['in_stock']
        if request.form['discontinued'] == 'True':
            discontinued = True
        else:
            discontinued = False
        
        # manufacturer = Manufacturer.query.filter(
        #     Manufacturer.name == manufac_name).first()
        # print(manufacturer, manufac_name, manufacturer.name)
        has_product = db.session.query(exists().where(
            Product.barcode == barcode)).scalar()

        if has_product is False:
            p = Product(
                barcode=barcode,
                name=name,
                description=description,
                category=category,
                date=date,
                price=price,
                selling_price=selling_price,
                in_stock=in_stock,
                discontinued=discontinued,
                manufacturer_name=manufac_name)
            db.session.add(p)
            db.session.commit()
        context['manufac'] = manufac_name
        context['has_product'] = str(has_product)
        return render_template('prods/add.html', **context)

    context['manufac'] = manufac_name
    context['has_product'] = str(has_product)
    return render_template('prods/add.html', **context)
예제 #26
0
파일: manufac.py 프로젝트: keshabb/shopyo
def manufac_update():
    context = base_context()

    if request.method == 'POST': #this block is only entered when the form is submitted
        name = request.form['manufac_name']
        old_name = request.form['old_manufac_name']
        try:
            m = Manufacturers.query.get(old_name)
            m.name = name
            products = Products.query.filter_by(manufacturer=old_name)
            for product in products:
                product.manufacturer = name
            db.session.commit()
        except sqlalchemy.exc.IntegrityError:
            # return redirect('/manufac/')
            context['message'] = "you cannot modify to an already existing manufacturer"
            context['redirect_url'] = "/manufac/"
            render_template('manufac/message.html', **context)
        #return redirect(url_for('edit', barcode=barcode))
        return redirect('/manufac/')
예제 #27
0
파일: view.py 프로젝트: zain03031983/shopyo
def people_main():
    context = base_context()

    context['people'] = People.query.all()
    return render_template('people/index.html', **context)
예제 #28
0
파일: view.py 프로젝트: zain03031983/shopyo
def lookup():
    context = base_context()
    context['people'] = People.query.all()
    return render_template('people/lookup.html', **context)
예제 #29
0
def appointment_main():
    context = base_context()

    context['appointments'] = Appointments.query.all()
    return render_template('appointment/index.html', **context)
예제 #30
0
def lookup():
    context = base_context()
    context['appointments'] = Appointments.query.all()
    return render_template('appointment/lookup.html', **context)