Example #1
0
    case 'report':
        $teacher_name = urlencode(base64_decode(rawurldecode($_PORTAL['params']['teacher'])));
        $class_name = urlencode(base64_decode(rawurldecode($_PORTAL['params']['class'])));
        $activity_name = urlencode(base64_decode(rawurldecode($_PORTAL['params']['activity'])));
        $member_list = urlencode(base64_decode(rawurldecode($_PORTAL['params']['members'])));
        $class_identifier = urlencode(base64_decode(rawurldecode($_PORTAL['params']['uuid'])));
        $url = 'http://' . $portal_config['diy_server'] . $portal_config['diy_server_path'] . '/reports/' . $diy_id . '/sail_jnlp?users=' . $member_list . '&system.report.class.name=' . $class_name . '&system.report.teacher.name=' . $teacher_name . '&system.report.activity.name=' . $activity_name . '&group_id=' . $class_identifier . '&group_list=' . urlencode($class_members);
        //  . '&group_list_url=' . $class_list_url;
        break;
    case 'run':
        $url = 'http://' . $portal_config['diy_server'] . $portal_config['diy_server_path'] . '/' . $portal_config['diy_activities_name'] . '/' . $diy_id . '/sail_jnlp/' . $member_interface_path . '?group_id=' . $class_identifier . '&system.report.class.name=' . urlencode($class_name) . '&group_list=' . urlencode($class_members);
        // . '&group_list_url=' . $class_list_url ;
        break;
    case 'show':
        $url = 'http://' . $portal_config['diy_server'] . $portal_config['diy_server_path'] . '/' . $portal_config['diy_activities_name'] . '/' . $diy_id;
        break;
    case 'usage':
        $url = 'http://' . $portal_config['diy_server'] . $portal_config['diy_server_path'] . '/' . $portal_config['diy_activities_name'] . '/' . $diy_id . '/usage';
        break;
    case 'work':
        $class_info = portal_get_class_info_by_student($student_id);
        $class_members = implode(',', portal_get_class_students_diy_ids($class_info['class_id']));
        $class_identifier = $class_info['class_uuid'];
        $class_name = $class_info['class_name'];
        $class_id_prefix = strlen($reporting_param) == 0 ? '?group_id=' : '&group_id=';
        $url = 'http://' . $portal_config['diy_server'] . $portal_config['diy_server_path'] . '/' . $portal_config['diy_activities_name'] . '/' . $diy_id . '/sail_jnlp/' . $student_interface_path . '/view' . $reporting_param . $class_id_prefix . $class_identifier . '&system.report.class.name=' . urlencode($class_name) . '&group_list=' . urlencode($class_members);
        // . '&group_list_url=' . $class_list_url;
        break;
}
mystery_redirect($url);
exit;
function portal_generate_class_aggregate_report_link($activity, $class_id)
{
    $diy_id = $activity['activity_id'];
    $report_link = '';
    $reports = portal_get_diy_reports_for_activity($diy_id);
    if (count($reports) > 0) {
        $class_info = portal_get_class_info($class_id);
        $teacher_info = portal_get_member_info($class_info['class_teacher']);
        $class_members = portal_get_class_students_diy_ids($class_id);
        $class_name = $class_info['class_name'];
        $class_uuid = $class_info['class_uuid'];
        $class_teacher_name = $teacher_info['member_first_name'] . ' ' . $teacher_info['member_last_name'];
        $report_links = array();
        for ($i = 0; $i < count($reports); $i++) {
            $reports[$i]['name'] = ucwords(str_replace('_', ' ', $reports[$i]['name']));
            $report_links[] = '<a title="View class report: ' . $reports[$i]['name'] . '" href="/diy/report/' . $reports[$i]['id'] . '/class/' . rawurlencode(base64_encode($class_name)) . '/teacher/' . rawurlencode(base64_encode($class_teacher_name)) . '/members/' . rawurlencode(base64_encode(implode(',', $class_members))) . '/uuid/' . rawurlencode(base64_encode($class_uuid)) . '/activity/' . rawurlencode(base64_encode($activity['activity_name'])) . '/">' . portal_icon('report') . '</a>';
        }
        $report_link = '<br>' . implode(' ', $report_links);
    }
    return $report_link;
}