completed teachher.py

This commit is contained in:
Raffu Khondaker 2020-06-16 12:30:49 -04:00
parent 4c74b26f5e
commit 673a17ffe4
4 changed files with 35 additions and 30 deletions

View File

@ -331,12 +331,13 @@ class Student:
if c['name'] == courses: if c['name'] == courses:
command("git checkout " + courses) command("git checkout " + courses)
print(os.listdir()) print(os.listdir())
return break
os.chdir(cdir) os.chdir(cdir)
print("Class not found") print("Class not found")
return return
def exitCLI(self): def exitCLI(self):
print(os.getcwd())
self.update() self.update()
command("git checkout master") command("git checkout master")
@ -370,10 +371,10 @@ class Student:
data = getStudent("2022rkhondak") data = getStudent("2022rkhondak")
s = Student(data) s = Student(data)
#s.viewClass("APLit_eharris1") s.viewClass("APLit_eharris1")
s.addClass("APLit_eharris1") #s.addClass("APLit_eharris1")
# #s.update() # #s.update()
# s.exitCLI() s.exitCLI()
def main(): def main():
pass pass

View File

@ -365,6 +365,7 @@ class Teacher:
def addAssignment(self, path, course, due): def addAssignment(self, path, course, due):
parts = path.split("/") parts = path.split("/")
aname = parts[len(parts)-1] aname = parts[len(parts)-1]
oname = aname + "_" + course
if(os.path.isdir(path) == 0 or len(parts) < 3) or aname in str(self.classes): if(os.path.isdir(path) == 0 or len(parts) < 3) or aname in str(self.classes):
print("Not valid path.") print("Not valid path.")
@ -373,9 +374,9 @@ class Teacher:
print("Not in valid class directory") print("Not in valid class directory")
return False return False
#parts of assignment name (Essay1, APLit) #parts of assignment name (Essay1, APLit)
if((course in aname) == False): # if((course in aname) == False):
print("Assignment named incorrectly; could be "+ aname + "_" + course) # print("Assignment named incorrectly; could be "+ aname + "_" + course)
return False # return False
ar = [x[2] for x in os.walk(path)] ar = [x[2] for x in os.walk(path)]
print(ar) print(ar)
@ -383,10 +384,10 @@ class Teacher:
if len(folder) == 0: if len(folder) == 0:
print("Assignment is completely empty, needs a file.") print("Assignment is completely empty, needs a file.")
return False return False
p1 = course.split("_")[0] # p1 = course.split("_")[0]
if(p1 in aname == False): # if(p1 in aname == False):
print(aname + "incorrectly formated: must be " + aname + "_" + p1 + ".") # print(aname + "incorrectly formated: must be " + aname + "_" + p1 + ".")
return False # return False
try: try:
datetime.strptime(due, '%Y-%m-%d %H:%M:%S.%f') datetime.strptime(due, '%Y-%m-%d %H:%M:%S.%f')
except: except:
@ -397,9 +398,8 @@ class Teacher:
if(aname in str(course['assignments'])): if(aname in str(course['assignments'])):
print("Assignment name already taken.") print("Assignment name already taken.")
return False return False
print(course['assignments']) print(course['assignments'])
input() print(aname)
#################### FINISH VERIFYING #################### FINISH VERIFYING
if(os.path.exists(os.getcwd() + "/" + self.username + "/Students/" + course['name']) == False): if(os.path.exists(os.getcwd() + "/" + self.username + "/Students/" + course['name']) == False):
@ -428,14 +428,14 @@ class Teacher:
r = requests.get(url = 'http://127.0.0.1:8000/api/assignments/' + aname, auth=('raffukhondaker','hackgroup1')) r = requests.get(url = 'http://127.0.0.1:8000/api/assignments/' + aname, auth=('raffukhondaker','hackgroup1'))
if(r.status_code != 200): if(r.status_code != 200):
ass = { ass = {
'name': aname, 'name': oname,
'path':path, 'path':path,
'classes':course['name'], 'classes':course['name'],
'teacher':self.username, 'teacher':self.username,
'due_date':due 'due_date':due
} }
postDB(ass, 'http://127.0.0.1:8000/api/assignments/') postDB(ass, 'http://127.0.0.1:8000/api/assignments/')
course['assignments'].append(aname) course['assignments'].append(oname)
cinfo = { cinfo = {
"assignments": course['assignments'], "assignments": course['assignments'],
@ -451,6 +451,7 @@ class Teacher:
def updateAssignment(self, path, course, due): def updateAssignment(self, path, course, due):
parts = path.split("/") parts = path.split("/")
aname = parts[len(parts)-1] aname = parts[len(parts)-1]
oname=aname + "_" + course
if(os.path.isdir(path) == False): if(os.path.isdir(path) == False):
print(path + " is not an assignment.") print(path + " is not an assignment.")
return return
@ -460,7 +461,7 @@ class Teacher:
d = { d = {
'due_date':due, 'due_date':due,
} }
patchDB(d, 'http://localhost:8000/api/assignments/' + aname + "/") print(patchDB(d, 'http://localhost:8000/api/assignments/' + oname + "/"))
print("Due-date changed " + due) print("Due-date changed " + due)
except: except:
print("Due-date is the same") print("Due-date is the same")
@ -471,19 +472,15 @@ class Teacher:
for st in slist: for st in slist:
if st in course['confirmed']: if st in course['confirmed']:
spath = os.path.join(os.getcwd() + "/" + self.username + "/Students/" + course['name'], st) spath = os.path.join(os.getcwd() + "/" + self.username + "/Students/" + course['name'], st)
if(os.path.exists(spath + "/" + aname) == False): print(st)
os.mkdir(spath + "/" + aname) print(copy_tree(path, spath + "/" + aname))
print(st) os.chdir(spath)
print(copy_tree(path, spath + "/" + aname)) #command('git checkout ' + course['name'])
os.chdir(spath) command('git add .')
command('git checkout ' + course['name']) command('git commit -m Hello')
command('git pull origin ' + course['name']) command('git pull origin ' + course['name'])
command('git add .') command('git push -u origin ' + course['name'])
command('git commit -m Hello') os.chdir(cdir)
command('git push -u origin ' + course['name'])
os.chdir(cdir)
else:
print(st + " already has assignment")
#pull student's work, no modifications #pull student's work, no modifications
def getStudents(self, course): def getStudents(self, course):
@ -598,7 +595,7 @@ class Teacher:
data = getTeacher("eharris1") data = getTeacher("eharris1")
t = Teacher(data) t = Teacher(data)
#t.makeClass("APLit_eharris1") #t.makeClass("APLit_eharris1")
#t.addAssignment("eharris1/APLit_eharris1/Essay1_eharris1", "APLit_eharris1", '2020-08-11 16:58:33.383124') t.updateAssignment("eharris1/APLit_eharris1/BookReport", "APLit_eharris1", '2020-08-11 16:58:33.383124')
#ar = ['2022rkhondak','2022inafi','2023rumareti'] #ar = ['2022rkhondak','2022inafi','2023rumareti']
#extra = t.reqAddStudentList(ar, "APLit_eharris1") #extra = t.reqAddStudentList(ar, "APLit_eharris1")
#print(extra) #print(extra)

View File

@ -0,0 +1,7 @@
kskskksks
kskskksks
kskskksks
kskskksks
kskskksks
kskskksks
kskskksks