def post(self, data, user): ticket = get_ticket(data["ticket_id"]) if ticket is None: return return_failure("ticket not found") if unclaim_ticket(user, ticket): return return_success({'ticket': ticket.json()}) return return_failure("could not unclaim ticket")
def post(self, data, user): ticket = get_ticket(data["ticket_id"]) if ticket is None: return return_failure("ticket not found") if rate_ticket(user, ticket, data["rating"]): return return_success({'ticket': ticket.json()}) return return_failure("could not cancel ticket")
def post(self, data, user): ticket = get_ticket(data["ticket_id"]) if ticket is None: return return_failure("ticket not found") if cancel_ticket(user, ticket): return return_success() return return_failure("could not cancel ticket")
def post(self): data = SERVER_CREATE_PARSER.parse_args() if data["api_key"] != app.config["SERVER_API_KEY"]: return return_failure("api key incorrect") event = parse_email(data["email"]) if (event is not None): return return_success({'event': event.json()}) else: return return_failure("could not parse email")
def post(self, data, user): event = get_event(data['eid'], None, override=True) if (event is None): return return_failure("could not find event") dates = parse_dates_possibilities(event.description) if dates is None: dates = [] same_day_events = [] seen_eids = set() seen_eids.add(event.eid) for e in get_events_by_date(event.time_start - timedelta(days=1)): if e.eid not in seen_eids: same_day_events.append(e.json(fullJSON=0)) seen_eids.add(e.eid) for e in get_events_by_date(event.time_start): if e.eid not in seen_eids: same_day_events.append(e.json(fullJSON=0)) seen_eids.add(e.eid) return return_success({ 'event': { **event.json(), 'alternate_dates': [(x[0], x[1].isoformat() + "Z") for x in dates], 'alternate_location': parse_all_locations(event.description), 'alternate_events': [e.json(fullJSON=0) for e in get_event_children(event)], 'same_day_events': same_day_events } })
def post(self, data, user): settings = get_all_settings(user) users = get_all_users(user) if (settings is None): return return_failure("no admin privileges") return return_success({ 'settings': {s.key:s.value for s in settings}, 'users': [u.json() for u in users], 'ticket_stats': ticket_stats() })
def post(self, data, user): q_data = { 'question': data['question'], 'contact': data['contact'], 'team': user.team } ticket = create_ticket(user, json.dumps(q_data)) if (ticket is None): return return_failure("could not create ticket") return return_success({'ticket': ticket.json()})
def post(self, data, user): if (not user.admin_is): return return_failure("no admin privileges") users = get_all_users(user) settings = json.loads(data['data']) for key in settings: set_setting(user, key, settings[key]) settings = get_all_settings(user) return return_success({ 'settings': {s.key:s.value for s in settings}, 'users': [u.json() for u in users] })
def post(self, data, user): event = get_event(data.eid, "", user=user) if not event: return return_failure("could not get event") new_event = create_server_event(event.title, event.etype, event.description, data.start_date, message_html=event.description_html, location=data.location, time_end=data.end_date, link=event.cta_link, headerInfo=event.header) if new_event: new_event.parent_event_is = True new_event.parent_event = event new_event.published_is = True new_event.approved_is = True update_db() return return_success( {"message": "published and waiting approval!"}) return return_failure("could not create event")
def post(self, data, user): if (update_and_publish_event(data['eid'], data['etoken'], data['title'], data['etype'], data['description'], data['start_date'], data['end_date'], data['link'], user=user, location=data['location'])): return return_success( {"message": "published and waiting approval!"}) return return_failure("something went wrong")
def post(self): """ Login into reddlinks with dopeauth Return success if token and uid are created """ data = LOGIN_PARSER.parse_args() email = data['email'] uid = data['uid'] token = data['token'] if email == "GITHUB" and uid == "GITHUB": email = authenticate_with_github( token, get_setting(None, SETTING_GITHUB_CLIENT_ID, override=True), get_setting(None, SETTING_GITHUB_CLIENT_SECRET, override=True)) if email is None: return return_failure("login credentials invalid") client = get_client(email) else: client = authenticate_firsttime(email, uid, token) if (client is None): # Unauthenticated return return_failure("login credentials invalid") if (not client.user.admin_is and client.user.email == get_setting( None, SETTING_MASTER_USER, override=True)): set_admin(None, client.user, True, override=True) # add mentor if ('mentor_key' in data and data['mentor_key'] == get_setting( None, SETTING_MENTOR_PASSWORD, override=True)): set_mentor(None, client.user, True, override=True) return return_success({ "email": email, "token": client.token, "uid": client.uid })
def post(self, data, user): theuser = User.query.filter_by(id=data['user_id']).first() if (theuser is None): return return_failure("something went wrong") if data['type'] == "mentor": set_mentor(user, theuser, data['value'] == '1') elif data['type'] == "admin": set_admin(user, theuser, data['value'] == '1') settings = get_all_settings(user) users = get_all_users(user) return return_success({ 'settings': {s.key:s.value for s in settings}, 'users': [u.json() for u in users] })
def post(self): """ Login into reddlinks with dopeauth Return success if token and uid are created """ data = LOGIN_PARSER.parse_args() email = data['email'] uid = data['uid'] token = data['token'] client = authenticate_firsttime(email, uid, token) if (client is None): # Unauthenticated return return_failure("login credentials invalid") return return_success({ "email": email, "token": client.token, "uid": client.uid })
def get(self): return return_failure("Please use post requests")
def post(self, data, user): if (not user.admin_is): return return_failure("no admin privileges") delete_users_and_tickets(user) return return_success({})
def post(self, data, user): event = get_event(data.eid, "", user=user) if event: remove_from_db([event]) return return_success({"message": "deleted event" + data.eid}) return return_failure("could not get event")
def post(self, data, user): ticket = create_ticket(user, data['data']) if (ticket is None): return return_failure("could not create ticket") return return_success({'ticket': ticket.json()})
def post(self, data, user): if (not user.admin_is): return return_failure("not admin") events = get_all_events() return return_success({'events': [e.json(fullJSON=0) for e in events]})
def post(self, data, user): if (not user.admin_is): return return_failure("user not admin") if (approve_event(data['eid'])): return return_success({'message': "approval toggled"}) return return_failure("could not find event")