Add workshop door opening support
All checks were successful
ci/woodpecker/manual/woodpecker Pipeline was successful
All checks were successful
ci/woodpecker/manual/woodpecker Pipeline was successful
Also changes group access checking
This commit is contained in:
@@ -5,7 +5,7 @@ from datetime import datetime, timedelta
|
||||
from functools import wraps
|
||||
from pymongo import MongoClient
|
||||
from flask import Blueprint, abort, g, make_response, redirect, render_template, request, jsonify
|
||||
from common import CustomForm, build_query, flatten, format_name, spam, users
|
||||
from common import CustomForm, build_query, flatten, format_name, spam, users, User
|
||||
|
||||
page_api = Blueprint("api", __name__)
|
||||
db = MongoClient(const.MONGO_URI).get_default_database()
|
||||
@@ -69,7 +69,13 @@ def view_slack_doorboy():
|
||||
return "Invalid channel was supplied"
|
||||
command = request.form.get("command")
|
||||
try:
|
||||
door = {"/open-new-door": "backdoor", "/open-back-door": "backdoor", "/open-front-door": "frontdoor", "/open-ground-door": "grounddoor"}[command]
|
||||
door = {
|
||||
"/open-new-door": "backdoor",
|
||||
"/open-back-door": "backdoor",
|
||||
"/open-front-door": "frontdoor",
|
||||
"/open-ground-door": "grounddoor",
|
||||
"/open-workshop-door": "workshopdoor"
|
||||
}[command]
|
||||
except KeyError:
|
||||
return "Invalid command was supplied"
|
||||
|
||||
@@ -79,7 +85,11 @@ def view_slack_doorboy():
|
||||
if user.slack_id == request.form.get("user_id"):
|
||||
member = user
|
||||
|
||||
approved = "k-space:floor" in member.groups
|
||||
if door == "workshopdoor":
|
||||
access_group = "k-space:workshop"
|
||||
else:
|
||||
access_group = "k-space:floor"
|
||||
approved = access_group in member.groups
|
||||
db.eventlog.insert_one({
|
||||
"method": "slack",
|
||||
"approved": approved,
|
||||
|
Reference in New Issue
Block a user