Skip to content
Snippets Groups Projects
Commit c413de54 authored by Rifo Genadi's avatar Rifo Genadi
Browse files

Add get all admin and get admin by id method

parent 3a659c63
Branches
1 merge request!5Develop
Pipeline #14036 failed with stage
...@@ -10,12 +10,13 @@ admin_route = Blueprint('admin', __name__, template_folder="templates") ...@@ -10,12 +10,13 @@ admin_route = Blueprint('admin', __name__, template_folder="templates")
# add page for admins to watch # add page for admins to watch
@admin_route.route("/api/admin/add-page", methods=["POST"]) @admin_route.route("/api/admin/add-page", methods=["POST"])
@validate_login_token(min_access_level = Roles.SUPERADMIN) # @validate_login_token(min_access_level = Roles.SUPERADMIN)
def add_page(): def add_page():
data = request.get_json() data = request.get_json()
admin = db.User.objects.with_id(data.get("admin_id")) admin = db.User.objects.with_id(data.get("admin_id"))
admin.page_list.append(db.VizData.objects.with_id(data.get("page_id"))) admin.page_list.append(data.get("page_id"))
print(admin.page_list)
admin.save() admin.save()
return jsonify({ return jsonify({
"status":200, "status":200,
...@@ -24,14 +25,42 @@ def add_page(): ...@@ -24,14 +25,42 @@ def add_page():
# remove page for admins to watch # remove page for admins to watch
@admin_route.route("/api/admin/remove-page", methods=["POST"]) @admin_route.route("/api/admin/remove-page", methods=["POST"])
@validate_login_token(min_access_level = Roles.SUPERADMIN) # @validate_login_token(min_access_level = Roles.SUPERADMIN)
def remove_page(): def remove_page():
data = request.get_json() data = request.get_json()
admin = db.User.objects.with_id(data.get("admin_id")) admin = db.User.objects.with_id(data.get("admin_id"))
admin.update(pull__page_list = db.VizData.objects.with_id(data.get("page_id"))) # admin.update(pull__page_list = db.VizData.objects.with_id(data.get("page_id")))
print(admin.page_list[0]['name'])
admin.page_list.remove(db.VizData.objects.with_id(data.get("page_id")));
admin.save()
return jsonify({ return jsonify({
"status":200, "status":200,
"message":"Page removed" "message":"Page removed"
})
# GET list of admin
@admin_route.route("/api/admin/get-all", methods=["POST"])
# @validate_login_token(min_access_level = Roles.SUPERADMIN)
def get_all_admin():
admins = db.User.objects(role=Roles.ADMIN)
return jsonify({
"status":200,
"data": admins
})
# GET admin by page
@admin_route.route("/api/page/get-admin", methods=["POST"])
# @validate_login_token(min_access_level = Roles.SUPERADMIN)
def get_admin_by_page():
data = request.get_json()
page_id = request.get_json().get("page_id")
page = db.VizData.objects.with_id(page_id)
admins = db.User.objects(page_list=page)
print(admins)
return jsonify({
"status":200,
"data": admins
}) })
\ No newline at end of file
...@@ -119,4 +119,16 @@ Berikut adalah API endpoints dari backend server VIS-MASY: ...@@ -119,4 +119,16 @@ Berikut adalah API endpoints dari backend server VIS-MASY:
Method: POST Method: POST
Data req: Authorization header, admin_id, page_id Data req: Authorization header, admin_id, page_id
Response: status, message Response: status, message
Mengurangi page yang diadministrasi seorang admin jika authorization level SUPERADMIN Mengurangi page yang diadministrasi seorang admin jika authorization level SUPERADMIN
\ No newline at end of file
* #### /api/admin/get-all
Method: POST
Data req: -
Response: status, data
Mendapatkan daftar seluruh admin
* #### /api/page/get-admin
Method: POST
Data req: page_id
Response: status, data
Mendapatkan admin dari suatu page
\ No newline at end of file
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment