def setUp(self): self.dir = os.path.dirname(os.path.abspath(__file__)) #self.app = rubix.app.test_client() self.response = self.client.get("/") self.soup = BeautifulSoup(self.response.data, 'html.parser') db.create_all() db.session.add( User("Firstname", "Lastname", "*****@*****.**", "test123")) db.session.add(User("Mock", "User", "*****@*****.**", "mock123")) db.session.add(User("new", "User", "*****@*****.**", "new123")) db.session.add(User("Competitor", "Jones", "*****@*****.**", "comp123")) db.session.add( User("delegate", "DeeDee", "*****@*****.**", "1234567890")) user = User.query.filter_by(email="*****@*****.**").first() user1 = User.query.filter_by(email="*****@*****.**").first() user2 = User.query.filter_by(email="*****@*****.**").first() delegateuser = User.query.filter_by(email='*****@*****.**', credentials=2).first() db.session.add( Competition(user.id, "Test name", "Test location", "Test City", "Test State", "10031", datetime.date(2017, 12, 31))) db.session.add( Competition(20, "Cant view", "Cant view", "New York", "NY", "10031", datetime.date(2017, 12, 31))) comp = Competition.query.filter_by(comp_id=1).first() comp.approved = True comp20 = Competition.query.filter_by(organizer_id=20).first() announce1 = Announcement(comp.comp_id, user.id, "Test announcement", "Test body") announce2 = Announcement(comp20.comp_id, 2, "Can i see this?", "maybe") db.session.add(announce1) db.session.add(announce2) event1 = Event('4x4x4 Cube', 'Round 1', datetime.time(11, 0, 0), datetime.time(12, 0, 0)) db.session.add(event1) comp.comp_events.append(event1) comp.competitors.append(user) comp.competitors.append(user1) comp.competitors.append(user2) register_user1 = EventUserLink(user=user1, event=event1) register_user2 = EventUserLink(user=user2, event=event1) db.session.add(register_user1) db.session.add(register_user2) register_user2.volunteer = True register_user2.volunteer_role = 'Judge' register_user1.staff = True register_user1.staff_role = 'Scrambler' db.session.commit()
def announcements(comp_id): comp = Competition.query.filter_by(comp_id=comp_id).first() query = Announcement.query.filter_by(comp_id=comp.comp_id).all() announcements = list(reversed(query)) if request.method == 'POST': if form.validate_on_submit(): new_announcement = Announcement(comp.comp_id, current_user.id, form.title.data, form.body.data) db.session.add(new_announcement) db.session.commit() flash('Posted!') return redirect( url_for('competitions.announcements', comp_id=comp.comp_id)) else: flash('Somethings not working') return render_template('comp_announcements.html', form=form, comp=comp, announcements=announcements) return render_template('comp_announcements.html', comp=comp, announcements=announcements)
def add_new_announcements(self, request, schema): anothers = dict(request.POST) for name, value in anothers.items(): if name.startswith('n-a-'): announcement = Announcement(content=value[0], week_announcment=schema) announcement.save()
def setUp(self): db.create_all() db.session.add( User("Firstname", "Lastname", "*****@*****.**", "test123")) db.session.add(User("Mock", "User", "*****@*****.**", "mock123")) db.session.add(User("new", "User", "*****@*****.**", "new123")) db.session.add(User("Competitor", "Jones", "*****@*****.**", "comp123")) user = User.query.filter_by(email="*****@*****.**").first() user1 = User.query.filter_by(email="*****@*****.**").first() user2 = User.query.filter_by(email="*****@*****.**").first() db.session.add( Competition(user.id, "Test name", "Test location", datetime.date(2017, 12, 31))) db.session.add( Competition(20, "Cant view", "Cant view", datetime.date(2017, 12, 31))) comp = Competition.query.filter_by(comp_id=1).first() comp.approved = True comp20 = Competition.query.filter_by(organizer_id=20).first() announce1 = Announcement(comp.comp_id, user.id, "Test announcement", "Test body") announce2 = Announcement(comp20.comp_id, 2, "Can i see this?", "maybe") db.session.add(announce1) db.session.add(announce2) event1 = Event('Rubik\'s Cube', 'Round 1', datetime.time(11, 0, 0), datetime.time(12, 0, 0)) db.session.add(event1) comp.comp_events.append(event1) comp.competitors.append(user) comp.competitors.append(user1) comp.competitors.append(user2) register_user1 = EventUserLink(user=user1, event=event1) register_user2 = EventUserLink(user=user2, event=event1) db.session.add(register_user1) db.session.add(register_user2) register_user2.volunteer = True register_user2.volunteer_role = 'Judge' register_user1.staff = True register_user1.staff_role = 'Scrambler' db.session.commit()
def addAnnouncement(): form = AnnouncementForm() if form.validate_on_submit(): data = form.data announcement = Announcement(title=data["title"], content=data["content"]) db.session.add(announcement) db.session.commit() flash("添加成功!") return redirect(url_for('admin.announcement', page=1)) return render_template("admin/announcementAdd.html", form=form)
def publish_announcement(course_id): form = AnnouncementForm() if form.validate_on_submit(): announcement = Announcement( course_id=course_id, timestamp=localtime(), title=form.title.data, body=form.content.data, ) db.session.add(announcement) db.session.commit() return redirect(url_for('course.announcement', course_id=course_id)) return render_template('course/publish_announcement.html', form=form)
def post_ovr(): """ Add announce in database without id by /anns. :return: """ args = request.json print(args) if args: a = Announcement(**args) db.session.add(a) db.session.commit() args['id'] = a.id return make_response(jsonify(args), 201) return abort(404)
def post_anon(idx): """ Handling for posting - inserting new announces. :param idx: :return: """ args = request.json if args: args['id'] = idx a = Announcement(**args) db.session.add(a) db.session.commit() return make_response(jsonify(args), 201) return abort(400)
def index(): for user in User.query.all(): if user.hp != user.hotpoints(): user.hp = user.hotpoints() db.session.commit() users = (User.query.filter(User.retired == 0).order_by( User.hp.desc()).all()) announcement = Announcement.query.order_by( Announcement.timestamp.desc()).limit(1).first() if announcement is None: announcement = Announcement(text='') return render_template('main/index.html', users=users, announcement=Markup(announcement.text), current_user=current_user)
def create(id=None): form = AnnouncementForm() if form.validate_on_submit(): announcement = Announcement(title=form.title.data, body=form.body.data, datetime=form.dt.data, location=form.location.data) db.session.add(announcement) db.session.commit() flash('Created Successfully!') return redirect(url_for('index')) return render_template('create.html', form=form)
def create_announcement(): form = NewAnnouncementForm(request.form) if form.validate() and request.method == 'POST': if form.announcement.data is not None and form.name.data is not None and form.severity.data is not None: today = datetime.date.today().strftime("%m/%d/%Y") new_announcement = Announcement( name=form.name.data, announcement=form.announcement.data, date=today, severity=form.severity.data, user_id=flask_session['user_id']) database.session.add(new_announcement) database.session.commit() return redirect('/index') return render_template('new_announcement.html', form=form, is_admin=is_admin)
def add_announcement(): """ Adding new announcement in browser by routing to other temp-form :return: """ form = AnnouncementForm() if form.validate_on_submit(): u = Announcement(body=form.body.data, name=form.name.data, price=form.price.data, user_id=current_user.id) db.session.add(u) db.session.commit() flash('Your changes have been saved.') return redirect(url_for('add_announcement')) return render_template('add_announcement.html', title='Dodaj ogłoszenie', form=form)
def announce(): if not current_user.admin: abort(403) announcement = Announcement.query.order_by( Announcement.timestamp.desc()).limit(1).first() form = AnnouncementForm( announcement=(announcement.text if announcement is not None else '')) if form.validate_on_submit(): announcement = Announcement( text=form.announcement.data, announcer_id=current_user.get_id(), ) db.session.add(announcement) db.session.commit() return redirect(url_for('main.index')) return render_template('main/announce.html', form=form, title='Announcement')
def post_announcement(): if current_user.email != '*****@*****.**': abort(403) form = SendMailForm() if form.validate_on_submit(): announcement = Announcement(title=form.title.data, content=form.content.data) db.session.add(announcement) for user in User.query.all(): user.unread_announcements = user.unread_announcements + "," + str(announcement.id) db.session.commit() raw_email_data = db.session.query(User.email).filter(User.mailing_list).all() msg_html = form.content.data title = form.title.data recipients = [item[0] for item in raw_email_data] thr = Thread(target=send_async_email, args=[title, recipients, "", msg_html]) thr.start() flash("Announcement posted and emails notifications sent.", "success") return redirect(url_for('post_announcement')) return render_template('post_announcement.html', form=form)
def make_announcement(): """ End-Point handling making announcements """ form = AnnouncementForm() academy = Academy.query.filter_by(id=current_user.academy_id).first() if form.validate_on_submit(): if not current_user.is_master( ) and current_user.position != "Upper Management": if dict(form.academy.choices).get( form.academy.data) != academy.name: flash( "You don't have permissions to make announcements to academies other than your own." ) return redirect(url_for('main.make_announcement')) if form.for_all.data == True: flash( "You don't have permissions to make announcements to academies other than your own." ) return redirect(url_for('main.make_announcement')) academy = Academy.query.filter_by( name=dict(form.academy.choices).get(form.academy.data)).first() announcement = Announcement(subject=form.subject.data, message=form.message.data, for_all=form.for_all.data, user_id=current_user.id, academy_id=academy.id) db.session.add(announcement) db.session.commit() flash('Announcement has been sent!') return redirect(url_for('main.index')) return render_template('make_announcement.html', title='Make Announcement', what='Make', form=form)
# Add competitions db.session.add( Competition(1, "City College Cube Day", "160 Convent Avenue", "New York", "NY", "10031", datetime.date(2017, 12, 31))) db.session.add( Competition(user2.id, "Rubik's Cube Day", "Cubicle", "City", "State", "10009", datetime.date(2017, 12, 31))) session_comp = Competition.query.filter_by(comp_id=1).first() session_comp2 = Competition.query.filter_by(comp_id=2).first() session_comp.approved = True # Add announcement announce = Announcement( session_comp.comp_id, user.id, "4x4 Evemt shorted to combined final", "Due to lack of time, we've shortened the 4x4 event to a combined final. We apologize for any inconvenience!" ) db.session.add(Announcement(1, user.id, "Test Announcement", "Test Body")) db.session.add(announce) event = Event("Setup", "", datetime.time(8, 0, 0), datetime.time(9, 0, 0)) event1 = Event("Rubik's Cube", "Round 1", datetime.time(9, 0, 0), datetime.time(10, 0, 0)) event2 = Event("2x2x2 Cube", "Round 1", datetime.time(10, 0, 0), datetime.time(11, 0, 0)) event3 = Event("4x4x4 Cube", "Round 1", datetime.time(11, 0, 0), datetime.time(12, 0, 0)) event4 = Event("Lunch", "", datetime.time(12, 0, 0), datetime.time(13, 0, 0)) event5 = Event("Rubik's Cube", "Round 2", datetime.time(13, 0, 0), datetime.time(14, 0, 0))