Skip to content

Commit 6209d01

Browse files
committed
remove student mailing lists from event attendees
1 parent 835c39f commit 6209d01

File tree

2 files changed

+39
-14
lines changed

2 files changed

+39
-14
lines changed

app.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import os
22
from fet_api_to_gcal import app
33

4-
# set envionment variables
4+
# set envionment variables (resolves HTTPS issue for OAuth)
55

66
os.environ["OAUTHLIB_INSECURE_TRANSPORT"] = "1"
77
os.environ["OAUTHLIB_RELAX_TOKEN_SCOPE"] = "1"

fet_api_to_gcal/__init__.py

Lines changed: 38 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
import json
22
import os
3+
import sys
34
from time import sleep
45
import random
56
import threading
@@ -15,7 +16,7 @@
1516
InvalidGrantError,
1617
UnauthorizedClientError)
1718
from fet_api_to_gcal import config
18-
from fet_api_to_gcal.common.utils import getDate, login_required, check_google_calendar_id
19+
from fet_api_to_gcal.common.utils import getDate, login_required, check_google_calendar_id, perror
1920
from werkzeug.utils import secure_filename
2021

2122
app = flask.Flask(__name__)
@@ -51,6 +52,8 @@ def allowed_file(filename):
5152

5253
from fet_api_to_gcal.models import (Calendar, Resource, Teacher, events__log,
5354
Std_mail, import_oprtation)
55+
from pprint import pprint
56+
import sys
5457

5558

5659
VERIFYING_THREADS = {}
@@ -298,6 +301,7 @@ def logout():
298301

299302
@app.errorhandler(InvalidClientIdError)
300303
def token_expired(_):
304+
import pdb; pdb.set_trace()
301305
del current_app.blueprints['google'].token
302306
flash('Your session has expired. Please submit the request again',
303307
'danger')
@@ -518,7 +522,7 @@ def import_csv_to_calendar_api():
518522
return redirect(request.url)
519523
file = request.files['file']
520524
if file.filename == "":
521-
flash("No file selected for uploading", category='danger')
525+
flash("No file selected for upload", category='danger')
522526
return redirect(request.url)
523527
if file and allowed_file(file.filename):
524528
filename = secure_filename(file.filename)
@@ -538,18 +542,37 @@ def import_csv_to_calendar_api():
538542
max_events=max_events,
539543
events_freq=events_freq)
540544
for event in all_events:
541-
for std_mail in event["attendees"][1:-1]:
545+
resource = None
546+
teachers = []
547+
std_sets_emails = []
548+
if "resource" in event["attendees"][-1].keys():
549+
resource = event["attendees"][-1]
550+
event["attendees"].remove(resource)
551+
552+
for ev_att in event["attendees"]:
553+
if Teacher.query.filter_by(teacher_email=ev_att["email"]).first():
554+
teachers.append(ev_att)
555+
else:
556+
std_sets_emails.append(ev_att)
557+
558+
event["attendees"].clear()
559+
event["attendees"].extend(teachers)
560+
if resource is not None:
561+
event["attendees"].append(resource)
562+
for std_mail in std_sets_emails:
542563
cal_rec = Calendar.query.filter_by(
543564
std_email=std_mail["email"]).first()
544565
if cal_rec:
545566
calendar_id = cal_rec.calendar_id_google
546-
event["attendees"].remove(std_mail)
567+
#event["attendees"].remove(std_mail)
568+
#pprint(event)
547569
else:
548570
print("Calendar does not exist")
549-
print(event)
571+
pprint(event)
550572
print("_________")
551573
continue
552-
574+
#pprint(event)
575+
#import pdb; pdb.set_trace()
553576
resp = google.post(
554577
"/calendar/v3/calendars/{}/events".format(calendar_id),
555578
json=event,
@@ -776,11 +799,11 @@ def csv_tt_to_json_events(
776799
events_freq=1,
777800
max_events=None):
778801
dates = {
779-
"1CPI": "2019/11/17", # needs to be changed!
780-
"2CPI": "2019/12/01", # needs to be changed!
781-
"1CS": "2019/11/03", # needs to be changed!
782-
"2CS": "2019/10/20", # needs to be changed!
783-
"3CS": "2019/10/20" # needs to be changed!
802+
"1CPI": "2020/02/23", # needs to be changed!
803+
"2CPI": "2020/02/23", # needs to be changed!
804+
"1CS": "2020/02/23", # needs to be changed!
805+
"2CS": "2020/02/23", # needs to be changed!
806+
"3CS": "2020/02/23" # needs to be changed!
784807
}
785808

786809
timezone = "Africa/Algiers"
@@ -835,7 +858,8 @@ def csv_tt_to_json_events(
835858
__gevent__["attendees"].append(
836859
{"email": teacher.teacher_email})
837860
else:
838-
print("Teacher {} not found".format(teacher_name))
861+
perror("Teacher {} not found (event index: {})".format(teacher_name, event_inx))
862+
839863
# students
840864
if event___old["std_set"] == "":
841865
continue
@@ -856,7 +880,8 @@ def csv_tt_to_json_events(
856880
"email": res.resource_email,
857881
"resource": True
858882
})
859-
883+
else:
884+
perror("Room empty in event index : {}".format(event_inx))
860885
# recurrence rule
861886
__gevent__["recurrence"] = [
862887
"RRULE:FREQ=WEEKLY;COUNT=" + str(events_freq)

0 commit comments

Comments
 (0)