def generate_report(request): report_type = request.POST["type"] course_handle = request.POST["course_handle"] course_handle_pretty = course_handle.replace('--', '-') if report_type == 'dashboard': email_title = "[Class2Go] Dashboard Report for %s" % course_handle_pretty req_reports = [{'type': 'dashboard'}] elif report_type == 'course_quizzes': email_title = "[Class2Go] Course Quizzes Report for %s" % course_handle_pretty req_reports = [{'type': 'course_quizzes'}] elif report_type == 'problemset': slug = request.POST["slug"] email_title = "[Class2Go] Problemset Report for %s %s" % ( course_handle_pretty, slug) req_reports = [{'type': 'problemset', 'slug': slug}] elif report_type == 'video': slug = request.POST["slug"] email_title = "[Class2Go] Video Report for %s %s" % ( course_handle_pretty, slug) req_reports = [{'type': 'video', 'slug': slug}] email_message = "The report is attached. You can also download it by going to the reports page under Course Administration->Reports, or by visiting https://class.stanford.edu/%s/browse_reports." % course_handle.replace( '--', '/') generate_and_email_reports.delay(request.user.username, course_handle, req_reports, email_title, email_message) return redirect(request.META.get('HTTP_REFERER', None))
def generate_report(request): report_type = request.POST["type"] course_handle = request.POST["course_handle"] course_handle_pretty = course_handle.replace('--','-') if report_type == 'dashboard': email_title = "[Class2Go] Dashboard Report for %s" % course_handle_pretty req_reports = [{'type': 'dashboard'}] elif report_type == 'course_quizzes': email_title = "[Class2Go] Course Quizzes Report for %s" % course_handle_pretty req_reports = [{'type': 'course_quizzes'}] elif report_type == 'problemset': slug = request.POST["slug"] email_title = "[Class2Go] Problemset Report for %s %s" % (course_handle_pretty, slug) req_reports = [{'type': 'problemset', 'slug': slug}] elif report_type == 'video': slug = request.POST["slug"] email_title = "[Class2Go] Video Report for %s %s" % (course_handle_pretty, slug) req_reports = [{'type': 'video', 'slug': slug}] email_message = "The report is attached. You can also download it by going to the reports page under Course Administration->Reports, or by visiting https://class.stanford.edu/%s/browse_reports." % course_handle.replace('--', '/') generate_and_email_reports.delay(request.user.username, course_handle, req_reports, email_title, email_message) return redirect(request.META.get('HTTP_REFERER', None))
def generate_report(request): report_type = request.POST["type"] course_handle = request.POST["course_handle"] course_handle_pretty = course_handle.replace('--','-') email_message = "The report is attached. You can also download it by going to the reports page under Course Administration->Reports, or by visiting https://class.stanford.edu/%s/browse_reports." % course_handle.replace('--', '/') attach_reports_to_email = True if report_type == 'dashboard': email_title = "[Class2Go] Dashboard Report for %s" % course_handle_pretty req_reports = [{'type': 'dashboard'}] elif report_type == 'video_full': slug = request.POST["slug"] email_title = "[Class2Go] Video Full Report for %s %s" % (course_handle_pretty, slug) # TODO: Remove the following message and attachment flag override after report email attachment is fixed attach_reports_to_email = False email_message = "The report has been generated. You can download it by going to the reports page under Course Administration->Reports, or by visiting https://class.stanford.edu/%s/browse_reports." % course_handle.replace('--', '/') req_reports = [{'type': 'video_full', 'slug': slug}] elif report_type == 'video_summary': slug = request.POST["slug"] email_title = "[Class2Go] Video Summary Report for %s %s" % (course_handle_pretty, slug) req_reports = [{'type': 'video_summary', 'slug': slug}] elif report_type == 'class_roster': email_title = "[Class2Go] Class Roster for %s" % (course_handle_pretty) req_reports = [{'type': 'class_roster'}] #Reports for the new assessments elif report_type == 'course_assessments': email_title = "[Class2Go] Course Assessments Report for %s" % course_handle_pretty req_reports = [{'type': 'course_assessments'}] elif report_type == 'assessment_full': slug = request.POST["slug"] email_title = "[Class2Go] Assessment Full Report for %s %s" % (course_handle_pretty, slug) # TODO: Remove the following message and attachment flag override after report email attachment is fixed attach_reports_to_email = False email_message = "The report has been generated. You can download it by going to the reports page under Course Administration->Reports, or by visiting https://class.stanford.edu/%s/browse_reports." % course_handle.replace('--', '/') req_reports = [{'type': 'assessment_full', 'slug': slug}] elif report_type == 'assessment_summary': slug = request.POST["slug"] email_title = "[Class2Go] Assessment Summary Report for %s %s" % (course_handle_pretty, slug) req_reports = [{'type': 'assessment_summary', 'slug': slug}] elif report_type == 'survey_summary': slug = request.POST["slug"] email_title = "[Class2Go] Survey Summary Report for %s %s" % (course_handle_pretty, slug) req_reports = [{'type': 'survey_summary', 'slug': slug}] elif report_type == 'assessment_student_scores': email_title = "[Class2Go] Assessment Student Scores Report for %s" % (course_handle_pretty) req_reports = [{'type': 'assessment_student_scores'}] generate_and_email_reports.delay(request.user.username, course_handle, req_reports, email_title, email_message, attach_reports_to_email) return redirect(request.META.get('HTTP_REFERER', None))
def handle(self, *args, **options): now = datetime.now() active_courses = Course.objects.filter(mode='ready', calendar_end__gt=now) for ready_course in active_courses: email_title = "[Class2Go] Daily %s Reports" % ready_course.handle.replace('--', '-') email_message = "To generate or download any of Class2Go's report types, please visit your course's reports page from Course Administration->Reports, or by visiting https://class.stanford.edu/%s/browse_reports." % ready_course.handle.replace('--', '/') generate_and_email_reports.delay('c2g_daily_report_mailer', ready_course.handle, [{'type':'dashboard'}, {'type':'course_quizzes'}], email_title, email_message)
def generate_report(request): report_type = request.POST["type"] course_handle = request.POST["course_handle"] course_handle_pretty = course_handle.replace('--', '-') email_message = "The report is attached. You can also download it by going to the reports page under Course Administration->Reports, or by visiting https://class.stanford.edu/%s/browse_reports." % course_handle.replace( '--', '/') attach_reports_to_email = True if report_type == 'dashboard': email_title = "[Class2Go] Dashboard Report for %s" % course_handle_pretty req_reports = [{'type': 'dashboard'}] elif report_type == 'course_quizzes': email_title = "[Class2Go] Course Quizzes Report for %s" % course_handle_pretty req_reports = [{'type': 'course_quizzes'}] elif report_type == 'problemset_full': slug = request.POST["slug"] email_title = "[Class2Go] Problemset Full Report for %s %s" % ( course_handle_pretty, slug) # TODO: Remove the following message and attachement flag override after report email attachment is fixed attach_reports_to_email = False email_message = "The report has been generated. You can download it by going to the reports page under Course Administration->Reports, or by visiting https://class.stanford.edu/%s/browse_reports." % course_handle.replace( '--', '/') req_reports = [{'type': 'problemset_full', 'slug': slug}] elif report_type == 'problemset_summary': slug = request.POST["slug"] email_title = "[Class2Go] Problemset Summary Report for %s %s" % ( course_handle_pretty, slug) req_reports = [{'type': 'problemset_summary', 'slug': slug}] elif report_type == 'video_full': slug = request.POST["slug"] email_title = "[Class2Go] Video Full Report for %s %s" % ( course_handle_pretty, slug) # TODO: Remove the following message and attachment flag override after report email attachment is fixed attach_reports_to_email = False email_message = "The report has been generated. You can download it by going to the reports page under Course Administration->Reports, or by visiting https://class.stanford.edu/%s/browse_reports." % course_handle.replace( '--', '/') req_reports = [{'type': 'video_full', 'slug': slug}] elif report_type == 'video_summary': slug = request.POST["slug"] email_title = "[Class2Go] Video Summary Report for %s %s" % ( course_handle_pretty, slug) req_reports = [{'type': 'video_summary', 'slug': slug}] elif report_type == 'class_roster': email_title = "[Class2Go] Class Roster for %s" % (course_handle_pretty) req_reports = [{'type': 'class_roster'}] generate_and_email_reports.delay(request.user.username, course_handle, req_reports, email_title, email_message, attach_reports_to_email) return redirect(request.META.get('HTTP_REFERER', None))
def handle(self, *args, **options): now = datetime.now() active_courses = Course.objects.filter(mode='ready', calendar_end__gt=now) for ready_course in active_courses: email_title = "[Class2Go] Daily %s Reports" % ready_course.handle.replace('--', '-') email_message = "To generate or download any of Class2Go's report types, please visit your course's reports page from Course Administration->Reports, or by visiting https://class.stanford.edu/%s/browse_reports." % ready_course.handle.replace('--', '/') params = [{'type':'dashboard'}, {'type':'course_quizzes'}] if settings.AWS_ACCESS_KEY_ID == 'local': # do right here (note missing "delay" in next line) generate_and_email_reports('c2g_daily_report_mailer', ready_course.handle, params, email_title, email_message) else: # queue and run on util machine generate_and_email_reports.delay('c2g_daily_report_mailer', ready_course.handle, params, email_title, email_message)
def handle(self, *args, **options): now = datetime.now() active_courses = Course.objects.filter(mode='ready', calendar_end__gt=now) for ready_course in active_courses: email_title = "[Class2Go] Daily %s Reports" % ready_course.handle.replace( '--', '-') email_message = "To generate or download any of Class2Go's report types, please visit your course's reports page from Course Administration->Reports, or by visiting https://class.stanford.edu/%s/browse_reports." % ready_course.handle.replace( '--', '/') generate_and_email_reports.delay('c2g_daily_report_mailer', ready_course.handle, [{ 'type': 'dashboard' }, { 'type': 'course_quizzes' }], email_title, email_message)
def handle(self, *args, **options): now = datetime.now() active_courses = Course.objects.filter(mode='ready', calendar_end__gt=now) for ready_course in active_courses: email_title = "[Class2Go] Daily %s Reports" % ready_course.handle.replace( '--', '-') email_message = "To generate or download any of Class2Go's report types, please visit your course's reports page from Course Administration->Reports, or by visiting https://class.stanford.edu/%s/browse_reports." % ready_course.handle.replace( '--', '/') params = [{'type': 'dashboard'}, {'type': 'course_quizzes'}] if settings.AWS_ACCESS_KEY_ID == 'local': # do right here (note missing "delay" in next line) generate_and_email_reports('c2g_daily_report_mailer', ready_course.handle, params, email_title, email_message) else: # queue and run on util machine generate_and_email_reports.delay('c2g_daily_report_mailer', ready_course.handle, params, email_title, email_message)
def generate_report(request): report_type = request.POST["type"] course_handle = request.POST["course_handle"] course_handle_pretty = course_handle.replace('--', '-') url_suffix = '' email_message = "The report is attached. You can also download it by going to the reports page under Course Administration->Reports, or by visiting https://class.stanford.edu/%s/browse_reports." % course_handle.replace( '--', '/') attach_reports_to_email = True if report_type == 'dashboard': email_title = "[Class2Go] Dashboard Report for %s" % course_handle_pretty req_reports = [{'type': 'dashboard'}] url_suffix = '#' + 'dashboard' elif report_type == 'video_full': slug = request.POST["slug"] email_title = "[Class2Go] Video Full Report for %s %s" % ( course_handle_pretty, slug) # TODO: Remove the following message and attachment flag override after report email attachment is fixed attach_reports_to_email = False email_message = "The report has been generated. You can download it by going to the reports page under Course Administration->Reports, or by visiting https://class.stanford.edu/%s/browse_reports." % course_handle.replace( '--', '/') req_reports = [{'type': 'video_full', 'slug': slug}] url_suffix = '#' + 'videos_full' elif report_type == 'video_summary': slug = request.POST["slug"] email_title = "[Class2Go] Video Summary Report for %s %s" % ( course_handle_pretty, slug) req_reports = [{'type': 'video_summary', 'slug': slug}] url_suffix = '#' + 'videos_summary' elif report_type == 'class_roster': email_title = "[Class2Go] Class Roster for %s" % (course_handle_pretty) req_reports = [{'type': 'class_roster'}] url_suffix = '#' + 'class_roster' #Reports for the new assessments elif report_type == 'course_assessments': email_title = "[Class2Go] Course Assessments Report for %s" % course_handle_pretty req_reports = [{'type': 'course_assessments'}] url_suffix = '#' + 'aggregated_attempts_by_a' elif report_type == 'assessment_full': slug = request.POST["slug"] email_title = "[Class2Go] Assessment Full Report for %s %s" % ( course_handle_pretty, slug) # TODO: Remove the following message and attachment flag override after report email attachment is fixed attach_reports_to_email = False email_message = "The report has been generated. You can download it by going to the reports page under Course Administration->Reports, or by visiting https://class.stanford.edu/%s/browse_reports." % course_handle.replace( '--', '/') req_reports = [{'type': 'assessment_full', 'slug': slug}] url_suffix = '#' + 'individual_student_scores_q' elif report_type == 'assessment_summary': slug = request.POST["slug"] email_title = "[Class2Go] Assessment Summary Report for %s %s" % ( course_handle_pretty, slug) req_reports = [{'type': 'assessment_summary', 'slug': slug}] url_suffix = '#' + 'aggregated_attempts_by_q' elif report_type == 'survey_summary': slug = request.POST["slug"] email_title = "[Class2Go] Survey Summary Report for %s %s" % ( course_handle_pretty, slug) req_reports = [{'type': 'survey_summary', 'slug': slug}] url_suffix = '#' + 'survey_summary' elif report_type == 'assessment_student_scores': email_title = "[Class2Go] Assessment Student Scores Report for %s" % ( course_handle_pretty) req_reports = [{'type': 'assessment_student_scores'}] url_suffix = '#' + 'individual_student_scores_a' generate_and_email_reports.delay(request.user.username, course_handle, req_reports, email_title, email_message, attach_reports_to_email) return redirect(request.META.get('HTTP_REFERER', None) + url_suffix)