def test_split_input_list_unicode(self): self.assertEqual( _split_input_list('[email protected], [email protected]'), ['*****@*****.**', '*****@*****.**']) self.assertEqual( _split_input_list(u'[email protected], [email protected]'), ['*****@*****.**', '*****@*****.**']) self.assertEqual( _split_input_list(u'[email protected], [email protected]'), [u'*****@*****.**', '*****@*****.**']) scary_unistuff = unichr(40960) + u'abcd' + unichr(1972) self.assertEqual(_split_input_list(scary_unistuff), [scary_unistuff])
def ccx_invite(request, course): """ Invite users to new ccx """ ccx = get_ccx_for_coach(course, request.user) action = request.POST.get('enrollment-button') identifiers_raw = request.POST.get('student-ids') identifiers = _split_input_list(identifiers_raw) auto_enroll = True if 'auto-enroll' in request.POST else False email_students = True if 'email-students' in request.POST else False for identifier in identifiers: user = None email = None try: user = get_student_from_identifier(identifier) except User.DoesNotExist: email = identifier else: email = user.email try: validate_email(email) if action == 'Enroll': enroll_email(ccx, email, auto_enroll=auto_enroll, email_students=email_students) if action == "Unenroll": unenroll_email(ccx, email, email_students=email_students) except ValidationError: log.info( 'Invalid user name or email when trying to invite students: %s', email) url = reverse('ccx_coach_dashboard', kwargs={'course_id': course.id}) return redirect(url)
def ccx_invite(request, course): """ Invite users to new ccx """ ccx = get_ccx_for_coach(course, request.user) action = request.POST.get('enrollment-button') identifiers_raw = request.POST.get('student-ids') identifiers = _split_input_list(identifiers_raw) auto_enroll = True if 'auto-enroll' in request.POST else False email_students = True if 'email-students' in request.POST else False for identifier in identifiers: user = None email = None try: user = get_student_from_identifier(identifier) except User.DoesNotExist: email = identifier else: email = user.email try: validate_email(email) if action == 'Enroll': enroll_email( ccx, email, auto_enroll=auto_enroll, email_students=email_students ) if action == "Unenroll": unenroll_email(ccx, email, email_students=email_students) except ValidationError: log.info('Invalid user name or email when trying to invite students: %s', email) url = reverse('ccx_coach_dashboard', kwargs={'course_id': course.id}) return redirect(url)
def ccx_invite(request, course, ccx=None): """ Invite users to new ccx """ if not ccx: raise Http404 action = request.POST.get("enrollment-button") identifiers_raw = request.POST.get("student-ids") identifiers = _split_input_list(identifiers_raw) auto_enroll = True if "auto-enroll" in request.POST else False email_students = True if "email-students" in request.POST else False for identifier in identifiers: user = None email = None try: user = get_student_from_identifier(identifier) except User.DoesNotExist: email = identifier else: email = user.email try: validate_email(email) course_key = CCXLocator.from_course_locator(course.id, ccx.id) email_params = get_email_params(course, auto_enroll, course_key=course_key, display_name=ccx.display_name) if action == "Enroll": enroll_email( course_key, email, auto_enroll=auto_enroll, email_students=email_students, email_params=email_params ) if action == "Unenroll": unenroll_email(course_key, email, email_students=email_students, email_params=email_params) except ValidationError: log.info("Invalid user name or email when trying to invite students: %s", email) url = reverse("ccx_coach_dashboard", kwargs={"course_id": CCXLocator.from_course_locator(course.id, ccx.id)}) return redirect(url)
def test_split_input_list(self): strings = [] lists = [] strings.append("[email protected], [email protected]\[email protected]\r [email protected]\r, [email protected]") lists.append(['*****@*****.**', '*****@*****.**', '*****@*****.**', '*****@*****.**', '*****@*****.**']) for (stng, lst) in zip(strings, lists): self.assertEqual(_split_input_list(stng), lst)
def test_split_input_list(self): strings = [] lists = [] strings.append( "[email protected], [email protected]\[email protected]\r [email protected]\r, [email protected]" ) lists.append([ '*****@*****.**', '*****@*****.**', '*****@*****.**', '*****@*****.**', '*****@*****.**' ]) for (stng, lst) in zip(strings, lists): self.assertEqual(_split_input_list(stng), lst)
def ccx_invite(request, course, ccx=None): """ Invite users to new ccx """ if not ccx: raise Http404 action = request.POST.get('enrollment-button') identifiers_raw = request.POST.get('student-ids') identifiers = _split_input_list(identifiers_raw) auto_enroll = True if 'auto-enroll' in request.POST else False email_students = True if 'email-students' in request.POST else False for identifier in identifiers: user = None email = None try: user = get_student_from_identifier(identifier) except User.DoesNotExist: email = identifier else: email = user.email try: validate_email(email) course_key = CCXLocator.from_course_locator(course.id, ccx.id) email_params = get_email_params(course, auto_enroll, course_key=course_key, display_name=ccx.display_name) if action == 'Enroll': enroll_email(course_key, email, auto_enroll=auto_enroll, email_students=email_students, email_params=email_params) if action == "Unenroll": unenroll_email(course_key, email, email_students=email_students, email_params=email_params) except ValidationError: log.info( 'Invalid user name or email when trying to invite students: %s', email) url = reverse('ccx_coach_dashboard', kwargs={ 'course_id': CCXLocator.from_course_locator(course.id, ccx.id) }) return redirect(url)
def ccx_invite(request, course, ccx=None): """ Invite users to new ccx """ if not ccx: raise Http404 action = request.POST.get('enrollment-button') identifiers_raw = request.POST.get('student-ids') identifiers = _split_input_list(identifiers_raw) email_students = 'email-students' in request.POST course_key = CCXLocator.from_course_locator(course.id, ccx.id) email_params = get_email_params(course, auto_enroll=True, course_key=course_key, display_name=ccx.display_name) _ccx_students_enrrolling_center(action, identifiers, email_students, course_key, email_params) url = reverse('ccx_coach_dashboard', kwargs={'course_id': course_key}) return redirect(url)
def test_split_input_list_unicode(self): self.assertEqual(_split_input_list('[email protected], [email protected]'), ['*****@*****.**', '*****@*****.**']) self.assertEqual(_split_input_list(u'[email protected], [email protected]'), ['*****@*****.**', '*****@*****.**']) self.assertEqual(_split_input_list(u'[email protected], [email protected]'), [u'*****@*****.**', '*****@*****.**']) scary_unistuff = unichr(40960) + u'abcd' + unichr(1972) self.assertEqual(_split_input_list(scary_unistuff), [scary_unistuff])