def create_user_request(): error = None if not validUserRequest(request): error = 'Invalid data entered' print('invalid data entered') return render_template('signup.html', error=error) name = request.form['inputName'] password = request.form['inputPassword'] password2 = request.form['inputPassword2'] user_company = request.form['inputCompanyName'] phone = request.form['inputPhone'] email = request.form['inputEmail'] streetAddress1 = request.form['inputStreetAddress1'] streetAddress2 = request.form['inputStreetAddress2'] city = request.form['inputCity'] state = request.form['inputState'] country = request.form['inputCountry'] postal = request.form['inputZip'] if not checkEmailAvailable(request): error = 'Sorry, that email is already taken' return render_template('signup.html', retUserName=name, retCompany=user_company, \ retEmail=email, retPhone=phone, retStreet1=streetAddress1, retStreet2=streetAddress2, \ retCity=city, retState=state, retZip=postal, retCountry=country, error=error) uid = str(uuid.uuid4()) if password == password2: u = User(uid, name, email, password, user_company, phone, streetAddress1, \ streetAddress2, city, state, postal, country) db_session.add(u) db_session.commit() #result = send(None, email, "Registration Confirmation", "Thanks for registering with MyServiceCompany.com") result = 1 if(result != 1): #couldn't send email print("error when sending email: " + result) else: session['logged_in'] = True session['user_id'] = uid session['user_name'] = User.query.filter_by(id=uid).first().name return redirect(url_for('new_service_request')) else: #print('unsuccessful add') error="passwords do not match" return render_template('signup.html', retUserName=name, retCompany=user_company, \ retEmail=email, retPhone=phone, retStreet1=streetAddress1, retStreet2=streetAddress2, \ retCity=city, retState=state, retZip=postal, retCountry=country, error=error)
def saveRequest(request): ticket = request.get_data().decode('utf-8') reporter = session.get('user_id') if not reporter: return None if not (ticket is None): i = str(uuid.uuid4()) jticket = json.loads(ticket) t = Ticket(i, reporter, jticket['type'], jticket['quantity'], jticket['pm'], jticket['desc'], \ jticket['timeframe'], jticket['date_requested'], 1) db_session.add(t) db_session.commit() return t
def confirm_appointment_request(uid=None, ticket_id=None): if not session.get('logged_in'): abort(401) error = None if not validServiceRequest(request): error = 'Invalid data entered' return render_template('new_service_request.html', error=error) #get data to update jdata = json.loads(request.get_data().decode('utf-8')) new_appointment_date = jdata['appointment_date'] new_appointment_timeslot = jdata['appointment_timeslot'] ticket = Ticket.query.filter_by(id=ticket_id).first() if (ticket is None): abort(500) else: ticket.appointment_confirmed = True ticket.status += 1 #how to increment status better? ticket.appointment_at = new_appointment_date ticket.timeslot = new_appointment_timeslot db_session.commit() #save new data ticket = Ticket.query.filter_by(id=ticket_id).first() result = "{ \"id\": \"" + ticket.id + "\", " result += " \"reporter\": \"" + ticket.reporter + "\", " result += " \"provider\": \"" + ticket.provider + "\", " result += " \"type\": \"" + str(ticket.type) + "\", " result += " \"status\": \"" + str(ticket.status) + "\", " result += " \"quantity\": \"" + str(ticket.quantity) + "\", " result += " \"pm_contract\": \"" + str(ticket.pm_contract) + "\", " result += " \"description\": \"" + str(ticket.description) + "\", " result += " \"timeslot\": \"" + str(ticket.timeslot) + "\", " result += " \"appointment_at\": \"" + str( ticket.appointment_at) + "\", " result += " \"appointment_confirmed\": \"" + str( ticket.appointment_confirmed) + "\", " result += " \"created_at\": \"" + str(ticket.created_at) + "\", " result += " \"updated_at\": \"" + str(ticket.updated_at) + "\" }" return json.dumps(result), 200
def create_customer_request(): if not session.get('logged_in'): abort(401) error = None if not validCustomerAdd(request): error = 'Invalid data entered' return render_template('new_customer.html', error=error) companyName = request.form['inputCompanyName'] customerType = request.form['inputCustomerType'] customerLastName = request.form['inputCustomerLastName'] customerFirstName = request.form['inputCustomerFirstName'] phone1 = request.form['inputCustomerPhone1'] phone2 = request.form['inputCustomerPhone2'] fax = request.form['inputCustomerFax'] webAddy = request.form['inputCustomerWebsite'] email = request.form['inputCustomerEmail'] streetAddress1 = request.form['inputCustomerAddress1'] streetAddress2 = request.form['inputCustomerAddress2'] city = request.form['inputCustomerCity'] state = request.form['inputCustomerState'] postal = request.form['inputCustomerZip'] country = request.form['inputCustomerCountry'] streetAddress1Bill = request.form['inputCustomerBillAddress1'] streetAddress2Bill = request.form['inputCustomerBillAddress2'] cityBill = request.form['inputCustomerBillCity'] stateBill = request.form['inputCustomerBillState'] postalBill = request.form['inputCustomerBillZip'] countryBill = request.form['inputCustomerBillCountry'] i = str(uuid.uuid4()) user_ID = session['user_id'] c = Customer(i, user_ID, customerType, companyName, customerLastName, customerFirstName, email, \ phone1, phone2, fax, webAddy, streetAddress1, streetAddress2, city, state, postal, country, \ streetAddress1Bill, streetAddress2Bill, cityBill, stateBill, postalBill, countryBill) db_session.add(c) db_session.commit() flash('New customer was successfully added') return redirect(url_for('home'))
def saveRequest(request): ticket = request.get_data().decode('utf-8') reporter = session.get('user_id') if not reporter: return None if not (ticket is None): i = str(uuid.uuid4()) jticket = json.loads(ticket) contract = 1 if (jticket['pm'] == 'on') else 0 t = Ticket(i, reporter, jticket['type'], jticket['quantity'], contract, jticket['desc'], \ jticket['timeframe'], jticket['date_requested'], 1) db_session.add(t) db_session.commit() return t
def confirm_appointment_request(uid=None, ticket_id=None): if not session.get('logged_in'): abort(401) error = None if not validServiceRequest(request): error = 'Invalid data entered' return render_template('new_service_request.html', error=error) #get data to update jdata = json.loads(request.get_data().decode('utf-8')) new_appointment_date = jdata['appointment_date'] new_appointment_timeslot = jdata['appointment_timeslot'] ticket = Ticket.query.filter_by(id=ticket_id).first() if(ticket is None): abort(500) else: ticket.appointment_confirmed = True ticket.status += 1 #how to increment status better? ticket.appointment_at = new_appointment_date ticket.timeslot = new_appointment_timeslot db_session.commit() #save new data ticket = Ticket.query.filter_by(id=ticket_id).first() result = "{ \"id\": \"" + ticket.id + "\", " result += " \"reporter\": \"" + ticket.reporter + "\", " result += " \"provider\": \"" + ticket.provider + "\", " result += " \"type\": \"" + str(ticket.type) + "\", " result += " \"status\": \"" + str(ticket.status) + "\", " result += " \"quantity\": \"" + str(ticket.quantity) + "\", " result += " \"pm_contract\": \"" + str(ticket.pm_contract) + "\", " result += " \"description\": \"" + str(ticket.description) + "\", " result += " \"timeslot\": \"" + str(ticket.timeslot) + "\", " result += " \"appointment_at\": \"" + str(ticket.appointment_at) + "\", " result += " \"appointment_confirmed\": \"" + str(ticket.appointment_confirmed) + "\", " result += " \"created_at\": \"" + str(ticket.created_at) + "\", " result += " \"updated_at\": \"" + str(ticket.updated_at) + "\" }" return json.dumps(result), 200
def update_user_request(): fromProfile = True name = request.form['inputName'] user_company = request.form['inputCompanyName'] phone = request.form['inputPhone'] email = request.form['inputEmail'] password = request.form['inputPassword'] password2 = request.form['inputPassword2'] streetAddress1 = request.form['inputStreetAddress1'] streetAddress2 = request.form['inputStreetAddress2'] city = request.form['inputCity'] state = request.form['inputState'] country = request.form['inputCountry'] postal = request.form['inputZip'] uid = session['user_id'] if len(password) != 0: if password != password2: error = 'passwords do not match' return render_template('customer_profile.html', fromProfile=fromProfile, retUserName=name, \ retCompany=user_company, retEmail=email, retPhone=phone, retStreet1=streetAddress1, \ retStreet2=streetAddress2, retCity=city, retState=state, retZip=postal, retCountry=country, \ error=error) else: # update password hashedPassword = hashAPassword(getUser, password) result = User.query.filter(func.lower(User.id) == func.lower(uid)).first() if result: result.password = hashedPassword db_session.commit() #update else: error = 'no user record found' return render_template('customer_profile.html', fromProfile=fromProfile, retUserName=name, \ retCompany=user_company, retEmail=email, retPhone=phone, retStreet1=streetAddress1, \ retStreet2=streetAddress2, retCity=city, retState=state, retZip=postal, retCountry=country, \ error=error) result = User.query.filter(func.lower(User.id) == func.lower(uid)).first() if result: result.name = name result.company = user_company result.email = email result.phone = phone result.address1 = streetAddress1 result.address2 = streetAddress2 result.city = city result.state = state result.postal = postal result.country = country db_session.commit() #update else: error = 'no user record found' return render_template('customer_profile.html', fromProfile=fromProfile, retUserName=name, \ retCompany=user_company, retEmail=email, retPhone=phone, retStreet1=streetAddress1, \ retStreet2=streetAddress2, retCity=city, retState=state, retZip=postal, retCountry=country, \ error=error) flash('User was successfully updated') return render_template('customer_profile.html', fromProfile=fromProfile, retUserName=name, \ retCompany=user_company, retEmail=email, retPhone=phone, retStreet1=streetAddress1, \ retStreet2=streetAddress2, retCity=city, retState=state, retZip=postal, retCountry=country)