def courseAdd(request): if not request.user.is_anonymous(): return render(request, 'CourseMain.html') else: errors = [] existed = [] addIsDone = False if request.method == 'POST': if 'file' in request.POST and len(request.POST.get('file')) > 0: #click confirm button fileTerms = re.split(',', request.POST.get('file')) s = "" for x in xrange(0, len(fileTerms) / LEN_OF_COURSE_TABLE): dbQuery = Course_info( course_id = fileTerms[0 + LEN_OF_COURSE_TABLE * x].encode('utf-8'), name = fileTerms[1 + LEN_OF_COURSE_TABLE * x].encode('utf-8'), credits = fileTerms[2 + LEN_OF_COURSE_TABLE * x].encode('utf-8'), semester = fileTerms[3 + LEN_OF_COURSE_TABLE * x].encode('utf-8'), textbook = fileTerms[4 + LEN_OF_COURSE_TABLE * x].encode('utf-8'), college = fileTerms[5 + LEN_OF_COURSE_TABLE * x].encode('utf-8'), ) if Course_info.objects.filter(course_id = fileTerms[0 + LEN_OF_COURSE_TABLE * x]): #test duplicate add s = s + str(x) isExist = True existed.append(fileTerms[0 + x * LEN_OF_COURSE_TABLE : LEN_OF_COURSE_TABLE + x * LEN_OF_COURSE_TABLE]) else: dbQuery.save() addIsDone = True form = CourseForm() elif request.FILES.get('file'): #dealing with upload fileLocation = request.FILES.get('file') fileTerms = re.split(',|\n', fileLocation.read()) multiAdd = True terms = [] for x in xrange(0, len(fileTerms) / LEN_OF_COURSE_TABLE): terms.append(fileTerms[0 + x * LEN_OF_COURSE_TABLE : LEN_OF_COURSE_TABLE + x * LEN_OF_COURSE_TABLE]) elif request.POST.get('multiAddCancle'): #click cancle button form = CourseForm() else: #regular form submit form = CourseForm(request.POST) if form.is_valid(): info = form.cleaned_data dbQuery = Course_info( course_id = info['course_id'], name = info['course_name'], credits = info['credits'], semester = info['semester'], textbook = info['textbook'], college = info['college'], ) dbQuery.save() addIsDone = True form = CourseForm() else: #raw form form = CourseForm() return render(request, 'AddCourse.html', locals())
def courseModify(request): errors = [] if request.method == 'GET': if 'term' in request.GET: inSearch = True searchTerm = request.GET.get('term') searchType = request.GET.get('type') if not searchTerm: errors.append('Please enter a key word') else: if searchType == 'course_id': courses = Course_info.objects.filter(course_id=searchTerm) elif searchType == 'course_name': courses = Course_info.objects.filter( name__icontains=searchTerm) #else: #courses = Course_info.objects.filter(teacher = searchTerm) if request.method == 'POST': if 'modifyid' in request.POST: inModify = True courseId = request.POST.get('modifyid') term = Course_info.objects.filter(course_id=courseId) form = CourseFormModify( initial={ 'course_name': term[0].name, 'credits': term[0].credits, 'semester': term[0].semester, 'textbook': term[0].textbook, 'college': term[0].college }) else: form = CourseFormModify(request.POST) if form.is_valid(): info = form.cleaned_data dbQuery = Course_info( course_id=request.POST.get('courseId'), name=info['course_name'], credits=info['credits'], semester=info['semester'], textbook=info['textbook'], college=info['college'], ) dbQuery.save() modifyIsDone = True return render(request, 'ModifyCourse.html', locals())
def courseModify(request): errors = [] if request.method == 'GET': if 'term' in request.GET: inSearch = True searchTerm = request.GET.get('term') searchType = request.GET.get('type') if not searchTerm: errors.append('Please enter a key word') else: if searchType == 'course_id': courses = Course_info.objects.filter(course_id = searchTerm) elif searchType == 'course_name': courses = Course_info.objects.filter(name__icontains = searchTerm) #else: #courses = Course_info.objects.filter(teacher = searchTerm) if request.method == 'POST': if 'modifyid' in request.POST: inModify = True courseId = request.POST.get('modifyid') term = Course_info.objects.filter(course_id = courseId) form = CourseFormModify(initial = { 'course_name': term[0].name, 'credits': term[0].credits, 'semester': term[0].semester, 'textbook': term[0].textbook, 'college': term[0].college} ) else: form = CourseFormModify(request.POST) if form.is_valid(): info = form.cleaned_data dbQuery = Course_info( course_id = request.POST.get('courseId'), name = info['course_name'], credits = info['credits'], semester = info['semester'], textbook = info['textbook'], college = info['college'], ) dbQuery.save() modifyIsDone = True return render(request, 'ModifyCourse.html', locals())
def courseModify(request): errors = [] #===========USER GROUP CHECK========================================================# isAdmin = False # isFaculty = False # userName = request.user.username # if Admin_user.objects.filter(id = userName): # userInfo = Admin_user.objects.filter(id = userName) # if userInfo[0].college == 'all': # isAdmin = True # userCollege = -1 # else: # isFaculty = True # userCollege = userInfo[0].college # elif Faculty_user.objects.filter(id = userName): # userInfo = Faculty_user.objects.filter(id = userName) # if userInfo[0].isSpecial and request.user.has_perm("IMS.course_manage"): # isFaculty = True # userCollege = userInfo[0].college # elif Student_user.objects.filter(id = userName): # userInfo = Student_user.objects.filter(id = userName) # if userInfo[0].isSpecial and request.user.has_perm("IMS.course_manage"): # isFaculty = True # userCollege = userInfo[0].college # #isAdmin = True # #isFaculty = False # #userCollege = -1 # #============END OF GROUP CHECK=====================================================# if request.method == 'POST': if 'term' in request.POST: #search box inSearch = True searchTerm = request.POST.get('term') searchType = request.POST.get('type') if not searchTerm: if isAdmin: courses = Course_info.objects.all() elif isFaculty: courses = Course_info.objects.filter(college = userCollege) else: courses = getSearchResult(searchType, searchTerm, isAdmin, isFaculty, userCollege) return render(request, 'ModifyCourse.html', locals()) elif 'modifyid' in request.POST: #initial info page inModify = True courseId = request.POST.get('modifyid') term = Course_info.objects.filter(course_id = courseId) if isAdmin: form = CourseFormModify(initial = { 'course_name': term[0].name, 'credits': term[0].credits, 'semester': term[0].semester, 'textbook': term[0].textbook, 'college': term[0].college, 'course_type' : term[0].course_type }) elif isFaculty: facultyModify = True form = CourseFormFacultyModify(initial = { 'course_name': term[0].name, 'credits': term[0].credits, 'semester': term[0].semester, 'textbook': term[0].textbook, 'course_type' : term[0].course_type }) return render(request, 'ModifyCourse.html', locals()) else: #DB update after press submit on initial info page if isAdmin: form = CourseFormModify(request.POST) if form.is_valid(): info = form.cleaned_data dbQuery = Course_info( course_id = request.POST.get('courseId'), name = info['course_name'], credits = info['credits'], semester = info['semester'], textbook = info['textbook'], college = info['college'], course_type = info['course_type'], ) dbQuery.save() modifyIsDone = True elif isFaculty: form = CourseFormFacultyModify(request.POST) if form.is_valid(): info = form.cleaned_data dbQuery = Course_info( course_id = request.POST.get('courseId'), name = info['course_name'], credits = info['credits'], semester = info['semester'], textbook = info['textbook'], college = userCollege, course_type = info['course_type'], ) dbQuery.save() modifyIsDone = True return render(request, 'ModifyCourse.html', locals()) return render(request, 'AccessFault.html')
def courseAdd(request): errors = [] errorImport = [] addIsDone = False #===========USER GROUP CHECK========================================================# isAdmin = False # isFaculty = False # userName = request.user.username # if Admin_user.objects.filter(id = userName): # userInfo = Admin_user.objects.filter(id = userName) # if userInfo[0].college == 'all': # isAdmin = True # userCollege = -1 # else: # isFaculty = True # userCollege = userInfo[0].college # elif Faculty_user.objects.filter(id = userName): # userInfo = Faculty_user.objects.filter(id = userName) # if userInfo[0].isSpecial and request.user.has_perm("IMS.course_manage"): # isFaculty = True # userCollege = userInfo[0].college # elif Student_user.objects.filter(id = userName): # userInfo = Student_user.objects.filter(id = userName) # if userInfo[0].isSpecial and request.user.has_perm("IMS.course_manage"): # isFaculty = True # userCollege = userInfo[0].college # #isAdmin = True # #isFaculty = False # #userCollege = -1 # #============END OF GROUP CHECK=====================================================# if request.method == 'POST': if request.POST.get('multiAddCancle') or request.POST.get('first'): #click cancle button or first access if isAdmin: form = CourseForm() if isFaculty: facultyAdd = True form = CourseFormFacultyAdd() elif 'file' in request.POST and len(request.POST.get('file')) > 0: #click confirm button fileTerms = re.split(',', request.POST.get('file')) for x in xrange(0, len(fileTerms) / LEN_OF_COURSE_TABLE): dbQuery = Course_info( course_id = fileTerms[0 + LEN_OF_COURSE_TABLE * x].encode('utf-8'), name = fileTerms[1 + LEN_OF_COURSE_TABLE * x].encode('utf-8'), credits = fileTerms[2 + LEN_OF_COURSE_TABLE * x].encode('utf-8'), semester = fileTerms[3 + LEN_OF_COURSE_TABLE * x].encode('utf-8'), textbook = fileTerms[4 + LEN_OF_COURSE_TABLE * x].encode('utf-8'), college = fileTerms[5 + LEN_OF_COURSE_TABLE * x].encode('utf-8'), course_type = fileTerms[6 + LEN_OF_COURSE_TABLE * x].encode('utf-8'), ) state = importCheck(fileTerms[0 + LEN_OF_COURSE_TABLE * x : LEN_OF_COURSE_TABLE * (x + 1)], isAdmin, isFaculty, userCollege) if state == 'YEAH'.encode('utf-8'): dbQuery.save() else: errorExist = True returnListItem = fileTerms[0 + LEN_OF_COURSE_TABLE * x : LEN_OF_COURSE_TABLE * (x + 1)]; returnListItem.append(state) errorImport.append(returnListItem) addIsDone = True if isAdmin: form = CourseForm() if isFaculty: facultyAdd = True form = CourseFormFacultyAdd() elif request.FILES.get('file'): #dealing with upload fileLocation = request.FILES.get('file') fileTerms = re.split(',|\n', fileLocation.read()) multiAdd = True terms = [] for x in xrange(0, len(fileTerms) / LEN_OF_COURSE_TABLE): terms.append(fileTerms[0 + x * LEN_OF_COURSE_TABLE : LEN_OF_COURSE_TABLE + x * LEN_OF_COURSE_TABLE]) else: #regular form submit if isAdmin: form = CourseForm(request.POST) if form.is_valid(): info = form.cleaned_data dbQuery = Course_info( course_id = info['course_id'], name = info['course_name'], credits = info['credits'], semester = info['semester'], textbook = info['textbook'], college = info['college'], course_type = info['course_type'], ) dbQuery.save() addIsDone = True form = CourseForm() elif isFaculty: form = CourseFormFacultyAdd(request.POST) if form.is_valid(): info = form.cleaned_data dbQuery = Course_info( course_id = info['course_id'], name = info['course_name'], credits = info['credits'], semester = info['semester'], textbook = info['textbook'], college = userCollege, course_type = info['course_type'], ) dbQuery.save() addIsDone = True facultyAdd = True form = CourseFormFacultyAdd() return render(request, 'AddCourse.html', locals()) return render(request, 'AccessFault.html')
def courseAdd(request): if not request.user.is_anonymous(): return render(request, 'CourseMain.html') else: errors = [] existed = [] addIsDone = False if request.method == 'POST': if 'file' in request.POST and len( request.POST.get('file')) > 0: #click confirm button fileTerms = re.split(',', request.POST.get('file')) s = "" for x in xrange(0, len(fileTerms) / LEN_OF_COURSE_TABLE): dbQuery = Course_info( course_id=fileTerms[0 + LEN_OF_COURSE_TABLE * x].encode('utf-8'), name=fileTerms[1 + LEN_OF_COURSE_TABLE * x].encode('utf-8'), credits=fileTerms[2 + LEN_OF_COURSE_TABLE * x].encode('utf-8'), semester=fileTerms[3 + LEN_OF_COURSE_TABLE * x].encode('utf-8'), textbook=fileTerms[4 + LEN_OF_COURSE_TABLE * x].encode('utf-8'), college=fileTerms[5 + LEN_OF_COURSE_TABLE * x].encode('utf-8'), ) if Course_info.objects.filter( course_id=fileTerms[0 + LEN_OF_COURSE_TABLE * x]): #test duplicate add s = s + str(x) isExist = True existed.append( fileTerms[0 + x * LEN_OF_COURSE_TABLE:LEN_OF_COURSE_TABLE + x * LEN_OF_COURSE_TABLE]) else: dbQuery.save() addIsDone = True form = CourseForm() elif request.FILES.get('file'): #dealing with upload fileLocation = request.FILES.get('file') fileTerms = re.split(',|\n', fileLocation.read()) multiAdd = True terms = [] for x in xrange(0, len(fileTerms) / LEN_OF_COURSE_TABLE): terms.append( fileTerms[0 + x * LEN_OF_COURSE_TABLE:LEN_OF_COURSE_TABLE + x * LEN_OF_COURSE_TABLE]) elif request.POST.get('multiAddCancle'): #click cancle button form = CourseForm() else: #regular form submit form = CourseForm(request.POST) if form.is_valid(): info = form.cleaned_data dbQuery = Course_info( course_id=info['course_id'], name=info['course_name'], credits=info['credits'], semester=info['semester'], textbook=info['textbook'], college=info['college'], ) dbQuery.save() addIsDone = True form = CourseForm() else: #raw form form = CourseForm() return render(request, 'AddCourse.html', locals())
def courseModify(request): errors = [] # ===========USER GROUP CHECK========================================================# isAdmin = False # isFaculty = False # userName = request.user.username # if Admin_user.objects.filter(id=userName): # userInfo = Admin_user.objects.filter(id=userName) # if userInfo[0].college == "all": # isAdmin = True # userCollege = -1 # else: # isFaculty = True # userCollege = userInfo[0].college # elif Faculty_user.objects.filter(id=userName): # userInfo = Faculty_user.objects.filter(id=userName) # if userInfo[0].isSpecial and request.user.has_perm("IMS.course_manage"): # isFaculty = True # userCollege = userInfo[0].college # elif Student_user.objects.filter(id=userName): # userInfo = Student_user.objects.filter(id=userName) # if userInfo[0].isSpecial and request.user.has_perm("IMS.course_manage"): # isFaculty = True # userCollege = userInfo[0].college # # isAdmin = True # # isFaculty = False # # userCollege = -1 # # ============END OF GROUP CHECK=====================================================# if request.method == "POST": if "term" in request.POST: # search box inSearch = True searchTerm = request.POST.get("term") searchType = request.POST.get("type") if not searchTerm: if isAdmin: courses = Course_info.objects.all() elif isFaculty: courses = Course_info.objects.filter(college=userCollege) else: courses = getSearchResult(searchType, searchTerm, isAdmin, isFaculty, userCollege) return render(request, "ModifyCourse.html", locals()) elif "modifyid" in request.POST: # initial info page inModify = True courseId = request.POST.get("modifyid") term = Course_info.objects.filter(id=courseId) if isAdmin: form = CourseFormModify( initial={ "name": term[0].name, "credits": term[0].credits, "semester": term[0].semester, "textbook": term[0].textbook, "college": term[0].college, "course_type": term[0].course_type, } ) elif isFaculty: facultyModify = True form = CourseFormFacultyModify( initial={ "name": term[0].name, "credits": term[0].credits, "semester": term[0].semester, "textbook": term[0].textbook, "course_type": term[0].course_type, } ) return render(request, "ModifyCourse.html", locals()) else: # DB update after press submit on initial info page if isAdmin: form = CourseFormModify(request.POST) if form.is_valid(): info = form.cleaned_data dbQuery = Course_info( id=request.POST.get("courseId"), name=info["name"], credits=info["credits"], semester=info["semester"], textbook=info["textbook"], college=info["college"], course_type=info["course_type"], ) dbQuery.save() modifyIsDone = True elif isFaculty: form = CourseFormFacultyModify(request.POST) if form.is_valid(): info = form.cleaned_data dbQuery = Course_info( id=request.POST.get("courseId"), name=info["name"], credits=info["credits"], semester=info["semester"], textbook=info["textbook"], college=userCollege, course_type=info["course_type"], ) dbQuery.save() modifyIsDone = True return render(request, "ModifyCourse.html", locals()) return render(request, "AccessFault.html")