def add_lesson(): form = request.form lesson = Lesson(name=form['name']) lesson.save() company = Company.objects(id=form['company_id']).first() company.insert_lesson(lesson) company.save() return redirect(url_for('.write_point', lesson_id=lesson.id))
def setUp(self): self.slot_9 = Slot(9, "08:00-09:00", False) self.slot_10 = Slot(10, "09:00-10:00", False) self.slot_11 = Slot(11, "10:00-11:00", False) self.beg_spin_class = Lesson("Spin Class", "cardio", "beginner", 55, 10, self.slot_10) self.int_spin_class = Lesson("Spin Class", "cardio", "intermediate", 55, 10, self.slot_9) self.adv_spin_class = Lesson("Spin Class", "cardio", "advanced", 55, 10, self.slot_11)
def login(): lesson1 = Lesson.get_by_lesson_id('3845127e-e6d9-4a15-b6e0-14276ace1cd8') lesson2 = Lesson.get_by_lesson_id('618af7ad-3d63-4609-a7f1-50704106b9e4') if 'name' in session: return render_template("home.html", name=session['name'], lesson1=lesson1, lesson2=lesson2, status="home") else: return render_template("login.html", status="login")
def create(): # Check if user exists and signed in jwt_user = get_jwt_identity() user = User.get_or_none(User.name == jwt_user) if not user: return error_401("Unauthorized action") # Retrieve data from json title = request.form.get("title") description = request.form.get("description") if (str(request.form.get("teach")) == "true"): teach = True elif (str(request.form.get("teach")) == "false"): teach = False else: return error_401("Invalid teach input") skill = request.form.get("skill") # Retrieve image from json image_valid = False if "image" in request.files: image_file = request.files['image'] if image_file and allowed_file(image_file.filename): image_file.filename = secure_filename(image_file.filename) output = upload_file_to_s3(image_file) image_valid = True # Check title and description and then create new lesson if title and description: if image_valid: lesson = Lesson(title=title, description=description, teach=teach, owner=user, skill=skill, image=image_file.filename) else: lesson = Lesson(title=title, description=description, teach=teach, owner=user, skill=skill) if lesson.save(): lesson = { 'id': lesson.id, 'title': lesson.title, 'description': lesson.description, 'rating': lesson.rating, 'teach': lesson.teach, 'owner_id': lesson.owner_id, 'owner_name': lesson.owner.name, 'skill_id': lesson.skill_id, 'skill_name': lesson.skill.name, 'image_url': lesson.image_url } return success_201("New lesson created successfully", lesson) else: return error_401("Create lesson failed") else: return error_401("Invalid title or description")
def lesson_create(): data = request.form lesson = Lesson(data["crn"], data["date"], data["code"], data["instructor"], data["location"], data["assistant"], data["credit"], data["cap"]) db = Database() db.create_lesson(lesson) return redirect(url_for("admin_page"))
def index(): jwt_user = get_jwt_identity() user = User.get_or_none(User.name == jwt_user) if not user: return error_401("Unauthorized action") user_bookmarks = Lesson.select().join( Bookmark, on=(Bookmark.lesson == Lesson.id)).where(Bookmark.owner == user.id) data = [{ 'id': lesson.id, 'title': lesson.title, 'description': lesson.description, 'rating': lesson.rating, 'teach': lesson.teach, 'owner_id': lesson.owner_id, 'owner_name': lesson.owner.name, 'skill_id': lesson.skill_id, 'skill_name': lesson.skill.name, 'image_url': lesson.image_url } for lesson in user_bookmarks] return success_201("Returned list of the current user's bookmarks", data)
def update(lesson_id): # Check for valid json if not request.is_json: return error_401("Reponse is not JSON") # Check if user exists and signed in jwt_user = get_jwt_identity() user = User.get_or_none(User.name == jwt_user) if not user: return error_401("Unauthorized action") # Retrieve data from json data = request.get_json() title = data['title'] description = data['description'] # Check title and description and then create new lesson if title and description: lesson = Lesson.update(title=title, description=description).where(Lesson.id==lesson_id).execute() if lesson: return success_201("Update lesson successfully", lesson) else: return error_401("Update lesson failed") else: return error_401("Invalid title or description")
def index_with_filter(): # Retrieve arguments teach = request.args.get('teach') if (teach == "true"): teach_option = True elif (teach == "false"): teach_option = False else: return error_401("Invalid teach input") # Retrieve lessons from database lessons = [ { 'id': lesson.id, 'title': lesson.title, 'description': lesson.description, 'rating': lesson.rating, 'owner_id': lesson.owner_id, 'owner_name': lesson.owner.name, 'teach': lesson.teach, 'skill_id': lesson.skill_id, 'skill_name': lesson.skill.name, 'image_url': lesson.image_url } for lesson in Lesson.select().where(Lesson.teach == teach_option) ] return success_200(lessons)
def _load_fake_data(session: Session): lessons_names = ['Математика', 'Программирование', 'Философствуем за кружечкой пенного', 'Алгоритмы и структуры данных', 'Линейная алгебра', 'Мат. статистика', 'Физкультура'] group1 = Group(group_name='1-МДА-7') group2 = Group(group_name='1-МДА-9') session.add(group1) session.add(group2) for key, it in enumerate(lessons_names): lesson = Lesson(lesson_title=it) lesson.groups.append(group1) if key % 2 == 0: lesson.groups.append(group2) session.add(lesson) faker = Faker('ru_RU') group_list = [group1, group2] session.commit() for _ in range(50): full_name = faker.name().split(' ') age = faker.random.randint(16, 25) address = faker.address() group = faker.random.choice(group_list) student = Student(full_name, age, address, group.id) session.add(student) session.commit() session.close()
def login_user(): error = None name = request.form['name'] password = request.form['password_hash'] lesson1 = Lesson.get_by_lesson_id('3845127e-e6d9-4a15-b6e0-14276ace1cd8') lesson2 = Lesson.get_by_lesson_id('618af7ad-3d63-4609-a7f1-50704106b9e4') if User.login_valid(name, password): return render_template('home.html', name=session['name'], lesson1=lesson1, lesson2=lesson2, status="home") else: error = 'Invalid credentials' session['name'] = None return render_template('login.html', error=error, status="login")
def select_all(): lessons = [] sql = 'SELECT * FROM lessons' results = run_sql(sql) for row in results: lesson = Lesson(row['name'], row['id']) lessons.append(lesson) return lessons
def select(id): lesson = None sql = 'SELECT * FROM lessons WHERE id = %s' values = [id] result = run_sql(sql, values)[0] if result is not None: lesson = Lesson(result['name'], result['id']) return lesson
def lessons(member): lessons = [] sql = 'SELECT lessons.* FROM lessons INNER JOIN bookings ON bookings.lesson_id = lessons.id WHERE bookings.member_id = %s' values = [member.id] results = run_sql(sql, values) for row in results: lesson = Lesson(row['name'], row['id']) lessons.append(lesson) return lessons
def add_lesson(): class_name = request.form["class_name"] class_type = request.form["class_type"] difficulty = request.form["difficulty"] duration = request.form["duration"] capacity = request.form["capacity"] slot_id = request.form["slot_id"] lesson = Lesson(class_name, class_type, difficulty, duration, capacity, slot_id) lesson_repository.save(lesson) return redirect('/classes')
def update_lesson(id): class_name = request.form['class_name'] class_type = request.form['class_type'] difficulty = request.form['difficulty'] duration = request.form['duration'] capacity = request.form['capacity'] slot_id = request.form['slot_id'] lesson = Lesson(class_name, class_type, difficulty, duration, capacity, slot_id, id) lesson_repository.update(lesson) return redirect('/classes')
def select(id): lesson = None sql = "SELECT * FROM lessons WHERE id = %s" values = [id] result = run_sql(sql, values)[0] if result is not None: lesson = Lesson(result['class_name'], result['class_type'], result['difficulty'], result['duration'], result['capacity'], result['slot_id'], result['id']) return lesson
def select_all(): lessons = [] sql = "SELECT * FROM lessons" results = run_sql(sql) for row in results: lesson = Lesson(row['class_name'], row['class_type'], row['difficulty'], row['duration'], row['capacity'], row['slot_id'], row['id']) lessons.append(lesson) return lessons
def lessons(member): bookings = [] sql = "SELECT * FROM lessons INNER JOIN bookings ON bookings.lesson_id = lessons.id WHERE member_id = %s" values = [member.id] results = run_sql(sql, values) for row in results: lesson = Lesson(row['class_name'], row['class_type'], row['difficulty'], row['duration'], row['capacity'], row['slot_id'], row['id']) bookings.append(lesson) return bookings
def create_from_json(self, json): lesson, info = Lesson.parse(json) lesson, exists = self.helper.if_lesson(lesson) code = self.helper.is_exists(lesson, info) if code == StatusCode.ok: if not exists: db.session.add(lesson) db.session.commit() info.lesson_id = lesson.id db.session.add(info) db.session.commit() return (lesson, code) return (None, code)
def index(): # Retrieve lessons from database lessons = [ { 'id': lesson.id, 'title': lesson.title, 'description': lesson.description, 'rating': lesson.rating, 'owner_id': lesson.owner_id, 'owner_name': lesson.owner.name, 'teach': lesson.teach, 'skill_id': lesson.skill_id, 'skill_name': lesson.skill.name, 'image_url': lesson.image_url } for lesson in Lesson.select() ] return success_200(lessons)
def add_image(): jwt_user = get_jwt_identity() user = User.get_or_none(User.name == jwt_user) if user: image_file = request.files.get('image') request_data = request.get_json() if request_data: lesson_id = request_data.lesson_id query = Lesson.update(image = image_file.filename).where(Lesson.id == lesson_id) if query.execute() and upload_file_to_s3(image_file): return success_201('Image successfully saved and uploaded!') else: return error_401('Error when saving image to S3 or database!') else: return error_401('Requested data is not JSON or not found!') else: error_401('User not found!')
def show(lesson_id): # Retrieve particular lesson from database lesson = Lesson.get_or_none(Lesson.id == lesson_id) if lesson: data = { 'id': lesson.id, 'title': lesson.title, 'description': lesson.description, 'rating': lesson.rating, 'teach': lesson.teach, 'owner_id': lesson.owner_id, 'owner_name': lesson.owner.name, 'skill_id': lesson.skill_id, 'skill_name': lesson.skill.name, 'image_url': lesson.image_url } return success_200(data) else: return error_404("Lesson does not exist")
def search_lessons(): search_value = request.args['search_value'] teach_arg = request.args['teach'] if str(teach_arg) == 'true': teach=True else: teach=False list_of_skills = [] final_lessons_list = [] split_search_value = search_value.lower().split(" ") #This is a list [] for word in split_search_value: #loop through the split search string for lesson in Lesson.select().where(Lesson.teach == teach): #loop through all rows in Lesson if (word in lesson.title.lower()) or (word in lesson.skill.name.lower()) or (word in lesson.description.lower()): #if a word from the split search string is part of the lesson title, append it to a list final_lessons_list.append(lesson) if len(final_lessons_list) > 0: data = [ { 'id': lesson.id, 'title': lesson.title, 'description': lesson.description, 'rating': lesson.rating, 'teach': lesson.teach, 'owner_id': lesson.owner_id, 'owner_name': lesson.owner.name, 'skill_id': lesson.skill_id, 'skill_name': lesson.skill.name, 'image_url': lesson.image_url } for lesson in final_lessons_list ] return success_201('success testing', data) else: return success_201('No lessons matched the search query', [])
def navigate(user, step_type, direction): data = attempt_cache.get_data() try: steps = data['steps'] position = data['current_position'] lesson_id = data['lesson_id'] except KeyError: return False if direction < 0: direction = -1 start = position - 1 stop = 0 else: direction = 1 start = position + 1 stop = len(steps) + 1 if (position + direction) > len(steps) or (position + direction) < 1: return False if step_type == "all": data['current_position'] = position + direction attempt_cache.set_data(data) return True lesson = Lesson.get(user, lesson_id) steps = lesson.items() for step_pos in range(start, stop, direction): step = steps[step_pos - 1] if step.block['name'] == step_type: data['current_position'] = step_pos attempt_cache.set_data(data) return True return False
def update_lesson(id): name = request.form['name'] lesson = Lesson(name, id) lesson_repository.update(lesson) return redirect('/lessons')
def setUp(self): self.lesson_1 = Lesson('Sushi Basics', 5)
import repositories.member_repository as member_repository import repositories.lesson_repository as lesson_repository import repositories.booking_repository as booking_repository from models.member import Member from models.lesson import Lesson from models.booking import Booking import pdb member_1 = Member('John Smith') member_2 = Member('Jill Jones') member_3 = Member('Samantha Ferguson') member_repository.save(member_1) member_repository.save(member_2) member_repository.save(member_3) lesson_1 = Lesson('Sushi Basics') lesson_2 = Lesson('German Breads: Advanced Level') lesson_repository.save(lesson_1) lesson_repository.save(lesson_2) booking_1 = Booking(member_1, lesson_1) booking_2 = Booking(member_1, lesson_2) booking_3 = Booking(member_2, lesson_1) booking_repository.save(booking_1) booking_repository.save(booking_2) booking_repository.save(booking_3) #pdb.set_trace # member_1.name = 'John\'s new name 443' # member_repository.update(member_1)
def create_lesson(): name = request.form['name'] lesson = Lesson(name) lesson_repository.save(lesson) return redirect('/lessons')
mark_rae = Member('Mark', 'Rae', 33, "male", True, True) member_repository.save(mark_rae) sarah_burns = Member('Sarah', 'Burns', 28, "female", False, True) member_repository.save(sarah_burns) chris_rettie = Member('Chris', 'Rettie', 35, "male", True, True) member_repository.save(chris_rettie) jill_rettie = Member('jill', 'Rettie', 36, "female", False, True) member_repository.save(jill_rettie) # class Lesson: # def __init__(self, class_name, class_type, difficulty, duration, capacity, slot_id = None, id=None): # self.class_name = class_name # self.class_type = class_type # self.difficulty = difficulty # self.duration = duration # self.capacity = capacity # self.slot_id = slot_id #time slot number references slot primary key # self.id = id beg_spin_class = Lesson("Spin Class", "cardio", "beginner", 55, 10, slot_10) lesson_repository.save(beg_spin_class) int_spin_class = Lesson("Spin Class", "cardio", "intermediate", 55, 10, slot_9) lesson_repository.save(int_spin_class) adv_spin_class = Lesson("Spin Class", "cardio", "advanced", 55, 10, slot_11) lesson_repository.save(adv_spin_class) test_booking = Booking(mark_rae, beg_spin_class) booking_repository.save(test_booking)