Beispiel #1
0
def restaurant_address(name):
	response = make_response(render_template('404.html'))
	session_id = request.cookies.get('session_id')
	result_message = request.args.get('result_message')
	error_message = request.args.get('error_message')
	if session_id:
		flag, result = furls.auth_session_state(session_id)
		if flag and result['role'] == 'Manager':
			session_id = result['session_id']
			flag, restr_result = furls.restaurant_info(result['user_id'])
			flag, address = furls.restaurant_address_list(restr_result['restaurant_id'])	
			form = AddressForm()
			form.city.choices = session.get('cities_list')
			if form.validate_on_submit():
				session.pop('cities_list', None)
				flag, result = furls.restaurant_address_update(address['restaurant_id'], address['id'], form.data)
				if flag:				
					response = redirect(url_for('main.restaurant_address',name=name,result_message='Updated!'))
				else:
					response = redirect(url_for('main.restaurant_address',name=name,error_message=result['message']))
			else:
				flag, cities_result = furls.restaurant_get_cities()
				ch = [(x, x) for x in cities_result['cities_list']  if x != address['city']]
				ch.insert(0, (address['city'],address['city']))
				form.city.choices = ch
				form.station.default = address['station']
				form.process()
				session['cities_list'] = form.city.choices
				response = make_response(render_template('restaurant_addresses.html', result_message=result_message,\
							address=address, form=form, user=restr_result,error_message=error_message))
			response.set_cookie('session_id', session_id)
	return response
Beispiel #2
0
def add_group_address(group_id):
    group = Group.query.get(group_id)
    if group == None:
        flash("Group not found.")
        return redirect(url_for('index'))
    if not group.is_admin(g.user):
        flash("You are not an admin of this group")
        return redirect(url_for('index'))
    form = AddressForm()
    if form.validate_on_submit():
        group_address = GroupAddress(group = group,
            datetime = form.datetime.data,
            address = form.address.data,
            address2 = form.address2.data,
            city = form.city.data,
            state = form.state.data,
            zipcode = form.zipcode.data,
            directions = form.directions.data)
        db.session.add(group_address)
        db.session.commit()
        flash(gettext('Address was added to your group.'))
        return redirect(url_for('group', group_id = group_id))
    return render_template('add_address.html',
        title = "Add address - {0}".format(group.group_name),
        form = form)
Beispiel #3
0
def address():
    # Create an address form object
    addressForm = AddressForm()

    # If user clicks submit button
    if addressForm.validate_on_submit():
        fullAddress = ''

        # Store user inputs to their corresponding variables
        address = request.form.get('address')
        city = request.form.get('city')
        state = request.form.get('state')
        zipcode = request.form.get('zipcode')

        # Create full address string
        fullAddress = address + ", " + city + "," + state + " " + zipcode

        # Pass the full address to an api function call and receive data back
        data = business_search(fullAddress)

        # Return a random restaurant url from the data
        randomRestaurant = random.choice(data)

        # redirect user to that url
        return redirect(randomRestaurant)
    return render_template('address.html', form=addressForm)
Beispiel #4
0
def client_address_create(name):
	response = render_template('404.html')
	session_id = request.cookies.get('session_id')
	result_message = request.args.get('result_message')
	error_message = request.args.get('error_message')
	if session_id:
		flag, result = furls.auth_session_state(session_id)
		if flag and result['role'] == 'Client':
			flag, uresult = furls.client_info(result['user_id'])
			form = AddressForm()
			flag, restr_result = furls.restaurant_get_cities()
			addresses = [(addr, addr) for addr in restr_result['cities_list']]
			form.city.choices = addresses
			if form.validate_on_submit():
				user_id = result['user_id']
				city = request.form.get('city')
				street = request.form.get('street')
				station = request.form.get('station')
				entrance = request.form.get('entrance')
				floor = request.form.get('floor')
				passcode = request.form.get('passcode')
				flag, aresult = furls.client_address_create(user_id, city, street, station, entrance, passcode, floor)
				if flag:				
					response = redirect(url_for('main.client_address_list', name=name, \
							result_message='Address created!'))
				else:
					response = redirect(url_for('main.client_address_list', name=name, \
							error_message=aresult['message']))
			else:	
				response = make_response(render_template('address_create.html',\
					form=form, user=uresult,name=name))
			response.set_cookie('session_id', result['session_id'])
	return response
Beispiel #5
0
def login():
    form = AddressForm()
    if form.validate_on_submit():
        global handyrep_address
        handyrep_address = form.address.data
        global username
        username = form.username.data
        global password
        password = form.password.data
        url_to_send = "{address}/get_master_name".format(address=handyrep_address)
        try:
            r = requests.get(url_to_send, auth=(username, password))
        except:
            message = "There is something wrong with the address, please try again."
            handyrep_address = None
            username = None
            password = None

            return render_template('login.html', form=form, message=message)
        if r.status_code in range(400, 500):
            if r.status_code == 404:
                return redirect(url_for("page_not_found"))
            message = "Please check username and password"

            return render_template('login.html', form=form, message=message)
        return redirect(request.args.get('next') or url_for('index'))

    return render_template('login.html', form=form)
Beispiel #6
0
def login():
    form = AddressForm()
    if form.validate_on_submit():
        global handyrep_address
        handyrep_address = form.address.data
        global username
        username = form.username.data
        global password
        password = form.password.data
        url_to_send = "{address}/get_master_name".format(
            address=handyrep_address)
        try:
            r = requests.get(url_to_send, auth=(username, password))
        except:
            message = "There is something wrong with the address, please try again."
            handyrep_address = None
            username = None
            password = None

            return render_template('login.html', form=form, message=message)
        if r.status_code in range(400, 500):
            if r.status_code == 404:
                return redirect(url_for("page_not_found"))
            message = "Please check username and password"

            return render_template('login.html', form=form, message=message)
        return redirect(request.args.get('next') or url_for('index'))

    return render_template('login.html', form=form)
Beispiel #7
0
def index():
    form = AddressForm()
    if form.validate_on_submit():
        return redirect(url_for('civics.get_reps',
                                street=form.street.data,
                                city=form.city.data,
                                state=form.state.data,
                                zip=form.zip.data))
    return render_template('submit_address.html', title='Address', form=form)
Beispiel #8
0
def edit_address():
    user = current_user._get_current_object()
    if user == None:
        abort(404)

    province_select = u''
    city_select = u''
    district_select = u''

    id = request.args.get('id', -1, type=int)
    if id != -1:
        address = Address.query.get_or_404(id)
        province_select = address.province
        city_select = address.city
        district_select = address.district
    else:
        address = Address()
        address.user_id = user.id
    province_select = request.args.get('province', province_select)
    city_select = request.args.get('city', city_select)
    district_select = request.args.get('district', district_select)
    form = AddressForm(province=province_select,
                       city=city_select,
                       district=district_select,
                       street=address.street,
                       reciplents=address.reciplents,
                       zip_code=address.zip_code,
                       phone_number=address.phone_number)
    province_choices = [(u'', u'')] + [(p.name, p.name)
                                       for p in Province.query.all()]
    form.province.choices = province_choices

    province_in_form = Province.query.filter_by(name=province_select).first()
    if province_in_form:
        city_choices = [((u'', u''))] + [(c.name, c.name)
                                         for c in province_in_form.citys]
        form.city.choices = city_choices

    city_in_form = City.query.filter_by(name=city_select).first()
    if city_in_form:
        district_choices = [(u'', u'')] + [(d.name, d.name)
                                           for d in city_in_form.districts]
        form.district.choices = district_choices

    if form.validate_on_submit():
        address.province = form.province.data
        address.city = form.city.data
        address.district = form.district.data
        address.street = form.street.data
        address.reciplents = form.reciplents.data
        address.zip_code = form.zip_code.data
        address.phone_number = form.phone_number.data
        print address.province
        db.session.add(address)
        return redirect(request.args.get('next') or url_for('mall.address'))

    return render_template('edit_address.html', form=form)
Beispiel #9
0
def edit_address():
    user = current_user._get_current_object()
    if user == None:
        abort(404)  
    
    province_select = u''
    city_select = u''
    district_select = u''
    
    id = request.args.get('id', -1, type=int)
    if id!=-1:
        address = Address.query.get_or_404(id)
        province_select = address.province
        city_select = address.city
        district_select = address.district
    else:
        address = Address()
        address.user_id = user.id
    province_select = request.args.get('province', province_select)
    city_select = request.args.get('city', city_select)
    district_select = request.args.get('district', district_select)
    form = AddressForm(
        province = province_select, 
        city = city_select, 
        district = district_select,
        street = address.street,
        reciplents = address.reciplents,
        zip_code = address.zip_code,
        phone_number = address.phone_number)
    province_choices = [(u'',u'')] + [ (p.name, p.name) for p in Province.query.all() ]
    form.province.choices =  province_choices
    
    province_in_form = Province.query.filter_by(name=province_select).first()
    if province_in_form:
        city_choices = [((u'',u''))] + [(c.name, c.name) for c in province_in_form.citys]
        form.city.choices = city_choices

    city_in_form = City.query.filter_by(name=city_select).first()
    if city_in_form:
        district_choices = [(u'', u'')] + [ (d.name, d.name) for d in city_in_form.districts ]
        form.district.choices = district_choices
        
    if form.validate_on_submit():        
        address.province = form.province.data
        address.city = form.city.data
        address.district = form.district.data
        address.street = form.street.data
        address.reciplents = form.reciplents.data
        address.zip_code = form.zip_code.data
        address.phone_number = form.phone_number.data
        print address.province
        db.session.add(address)
        return redirect(request.args.get('next') or url_for('mall.address'))

    return render_template('edit_address.html', form=form)
Beispiel #10
0
def verify():
    form = AddressForm()
    if form.validate_on_submit():
        if form.address.data == 'address_1':
            #flash('Valid address. Next page under construction.', 'success')
            return redirect(url_for('report'))
        else:
            flash('Invalid address. Try again.', 'danger')
    return render_template('verify.html', title='Verify Address',form=form,
    address_1 = "Address 1",
    address_2 = "Address 2",
    address_3 = "Address 3",
    address_4 = "Address 4")
Beispiel #11
0
def add_address():
    db = current_app.config["db"]
    form = AddressForm()
    empty_address = AddressObj("", "", "", "", "", "", "", "", "", "", "")
    if form.validate_on_submit():
        values = address_take_info_from_form(form, request.form)

        db.address.add(*values)
        address_id = db.address.get_table()[-1].address_id
        db.customer_address.add(CustomerAddressObj(current_user.id, address_id))

        flash("Address is added successfully", "success")
        next_page = request.args.get("next", url_for("home_page"))
        return redirect(next_page)

    return render_template("address/address_form.html", form=form, address=empty_address, head_title="Add new address")
Beispiel #12
0
def verify():
    form = AddressForm()
    if form.validate_on_submit():
        if form.address.data == 'address_1':
            #flash('Valid address. Next page under construction.', 'success')
            return redirect(url_for('report'))
        else:
            flash('Invalid address. Try again.', 'danger')
    return render_template(
        'verify.html',
        title='Verify Address',
        form=form,
        address_1="3324 Dent Pl NW, Washington, DC 20007, USA",
        address_2="3330 Dent Pl NW, Washington, DC 20007, USA",
        address_3="3322 Dent Pl NW, Washington, DC 20007, USA",
        address_4="3331 Dent Pl NW, Washington, DC 20007, USA")
Beispiel #13
0
def editAddress():
    form = AddressForm(request.form)
    if form.validate_on_submit():
        address = form.address.data
        print address
        newAddress = Address(address)
        print newAddress.address
        db.session.add(newAddress)
        db.session.commit()
        return 'success'

    addresses = Address.query.all()
    return render_template(
            'admin/address.html',
            form=form,
            addresses=addresses
            )
Beispiel #14
0
def address_edit_page(address_id):
    db = current_app.config["db"]
    customer_id = db.customer_address.get_row("CUSTOMER_ID", "ADDRESS_ID", address_id)
    if current_user.id != customer_id and not current_user.is_admin:
        return abort(401)

    form = AddressForm()
    address_obj = db.address.get_row("*", "ADDRESS_ID", address_id)
    if form.validate_on_submit():
        values = address_take_info_from_form(form, request.form)
        db.address.update(["ADDRESS_NAME", "COUNTRY", "CITY", "DISTRICT", "NEIGHBORHOOD", "AVENUE", "STREET", "ADDR_NUMBER", "ZIPCODE", "EXPLANATION"], values, "ADDRESS_ID", address_obj.address_id)

        flash("Address is updated successfully", "success")
        next_page = request.args.get("next", url_for("home_page"))
        return redirect(next_page)

    return render_template("address/address_form.html", form=form, address=address_obj, head_title="Edit address")
Beispiel #15
0
def address():
    """
    A view to display and add addresses.
    """
    form = AddressForm(request.form)
    if request.method == 'POST':
        if form.validate_on_submit():
            flash(message="Success")
            new_address = Address(address=form.address.data)
            db_session.add(new_address)
            db_session.commit()
            return redirect(url_for('address'))
        else:
            return render_template('address/address.html', form=form)
    elif request.method == 'GET':
        addresses_lists = db_session.query(Address).all()
        return render_template('address/address.html',
                               addresses=addresses_lists)
Beispiel #16
0
def client_address_update(name, address_id):
	response = render_template('404.html')
	session_id = request.cookies.get('session_id')
	result_message = request.args.get('result_message')
	error_message = request.args.get('error_message')
	if session_id:
		flag, result = furls.auth_session_state(session_id)
		if flag and result['role'] == 'Client':
			flag, uresult = furls.client_info(result['user_id'])
			form = AddressForm()
			city = request.args.get('city')
			flag, restr_result = furls.restaurant_get_cities()
			form.city.choices = [(addr, addr) for addr in restr_result['cities_list'] if addr != city]
			form.city.choices.insert(0, (city, city))
			if form.validate_on_submit():
				city = request.form.get('city')
				street = request.form.get('street')
				station = request.form.get('station')
				entrance = request.form.get('entrance')
				floor = request.form.get('floor')
				passcode = request.form.get('passcode')	
				flag, restr_result = furls.client_address_update(address_id, city,\
					street, station, entrance, passcode, floor)
				if flag:
					response = redirect(url_for('main.client_address_list',\
						name=name, address_id=address_id,result_message='Updated!'))
				else:
					response = redirect(url_for('main.client_address_list',\
						name=name, address_id=address_id,error_message=restr_result['message']))
			else:
				city = request.args.get('city')
				street = request.args.get('street')
				station = request.args.get('station')
				entrance = request.args.get('entrance')
				floor = request.args.get('floor')
				passcode = request.args.get('passcode')
				response = make_response(render_template('addresses_edit.html', \
					user=uresult, form=form, city=city, street=street, station=station,\
					entrance=entrance, passcode=passcode, floor=floor, address_id=address_id))
			response.set_cookie('session_id', result['session_id'])	
	return response
def address_page():

    information_types = info_types
    states = s

    form = AddressForm()

    validated = form.validate_on_submit()

    print(f'address form errors: {form.errors}')

    if validated:

        address = form.address.data

        # search for location on google maps
        driver.get('https://www.google.com/maps')
        time.sleep(2)
        input_field = driver.find_element_by_class_name(
            'tactile-searchbox-input')
        input_field.send_keys(address)
        input_field.send_keys(Keys.ENTER)

        time.sleep(2)

        address_is_valid = bool(
            len(driver.find_elements_by_class_name('section-bad-query-title'))
            == 0)

        if not address_is_valid:
            return invalid_page(invalid=['address'], address=address)

        return found_comps_page(information_types, states, address)

    return render_template('address.html',
                           wca_image=wca_image,
                           form=form,
                           loading_gif=loading_gif)
Beispiel #18
0
def index():
    form = AddressForm()
    session['navbar_role_selection'] = False

    if form.validate_on_submit():
        session['person_url'] = request.form['person_url']

        start = datetime.datetime.now()
        url = session['person_url']
        source = requests.get(url)
        app.logger.info(f'{datetime.datetime.now() - start} getting the main request')

        start = datetime.datetime.now()
        soup = BeautifulSoup(source.text, 'lxml')
        app.logger.info(f'{datetime.datetime.now() - start} getting the main page soup')

        session['roles'] = [i.get('data-category') for i in soup.find('div', {'id': 'jumpto'}).find_all('a')]
        session['person'] = soup.select('h1 span', class_='itemprop')[
            0].get_text()  # Todo: redo other data extraction with get_text()

        return redirect('/role')

    return render_template('index.html', form=form)