Ejemplo n.º 1
0
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))
Ejemplo n.º 2
0
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))
Ejemplo n.º 3
0
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))
Ejemplo n.º 4
0
 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)
Ejemplo n.º 5
0
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)
Ejemplo n.º 8
0
    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)
Ejemplo n.º 9
0
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)