Beispiel #1
0
require_once "lib/gradebook.inc.php";
if (isset($_GET['cancel'])) {
    $msg->addFeedback('CANCELLED');
    header('Location: gradebook_tests.php');
    exit;
} else {
    if (isset($_GET['save'])) {
        foreach ($_GET as $key => $value) {
            $value = $addslashes($value);
            if (preg_match('/^grade_(.*)_(.*)$/', $key, $matches) > 0) {
                $matches[1] = intval($matches[1]);
                $matches[2] = intval($matches[2]);
                $sql = "SELECT grade_scale_id FROM " . TABLE_PREFIX . "gradebook_tests WHERE gradebook_test_id = " . $matches[1];
                $result = mysql_query($sql, $db) or die(mysql_error());
                $row = mysql_fetch_assoc($result);
                $sql = "REPLACE " . TABLE_PREFIX . "gradebook_detail SET gradebook_test_id = " . $matches[1] . ", member_id=" . $matches[2] . ", grade='" . get_mark_by_grade($row["grade_scale_id"], $value) . "'";
                $result = mysql_query($sql, $db) or die(mysql_error());
            }
        }
    }
}
$orders = array('asc' => 'desc', 'desc' => 'asc');
if (isset($_GET['asc'])) {
    $order = 'asc';
    $order_col = $addslashes($_GET['asc']);
} else {
    if (isset($_GET['desc'])) {
        $order = 'desc';
        $order_col = $addslashes($_GET['desc']);
    } else {
        // no order set
Beispiel #2
0
function get_class_avg($gradebook_test_id)
{
    global $db;
    $sql = "SELECT * FROM " . TABLE_PREFIX . "gradebook_tests WHERE gradebook_test_id=" . $gradebook_test_id;
    $result = mysql_query($sql, $db) or die(mysql_error());
    $row = mysql_fetch_assoc($result);
    if ($row["id"] != 0) {
        require_once AT_INCLUDE_PATH . '../mods/_standard/tests/lib/test_result_functions.inc.php';
        $sql_test = "SELECT * FROM " . TABLE_PREFIX . "tests WHERE test_id=" . $row["id"];
        $result_test = mysql_query($sql_test, $db) or die(mysql_error());
        $row_test = mysql_fetch_assoc($result_test);
        if ($row_test['out_of'] == 0 || $row_test['result_release'] == AT_RELEASE_NEVER) {
            return _AT("na");
        }
        $sql_marks = "SELECT * FROM " . TABLE_PREFIX . "tests_results WHERE test_id=" . $row["id"] . " AND status=1";
        $result_marks = mysql_query($sql_marks, $db) or die(mysql_error());
        $num_students = 0;
        $total_final_score = 0;
        $total_out_of = 0;
        while ($row_marks = mysql_fetch_assoc($result_marks)) {
            if ($row_marks['final_score'] == '') {
                continue;
            }
            $num_students++;
            $total_final_score += $row_marks["final_score"];
            if ($row_test['random']) {
                $total_out_of += get_random_outof($row_marks['test_id'], $row_marks['result_id']);
            } else {
                $total_out_of += $row_test['out_of'];
            }
        }
        if ($num_students > 0) {
            $avg_final_score = round($total_final_score / $num_students);
            $avg_out_of = round($total_out_of / $num_students);
        }
        if ($avg_final_score != "") {
            $avg_grade = get_mark_by_grade($row["grade_scale_id"], $avg_final_score, $avg_out_of);
        } else {
            $avg_grade = "";
        }
    } else {
        $sql_grades = "SELECT * FROM " . TABLE_PREFIX . "gradebook_detail WHERE gradebook_test_id=" . $gradebook_test_id . " ORDER BY grade";
        $result_grades = mysql_query($sql_grades, $db) or die(mysql_error());
        $grade_array = array();
        while ($row_grades = mysql_fetch_assoc($result_grades)) {
            $grade_array[] = $row_grades["grade"];
        }
        $avg_grade = median($grade_array);
    }
    if ($avg_grade == "") {
        return _AT("na");
    } else {
        return $avg_grade;
    }
}
Beispiel #3
0
if (isset($_GET['cancel'])) {
    $msg->addFeedback('CANCELLED');
    $return_url = $_SESSION['tool_origin']['url'];
    tool_origin('off');
    header('Location: ' . $return_url);
    exit;
} else {
    if (isset($_GET['save'])) {
        foreach ($_GET as $key => $value) {
            $value = $addslashes($value);
            if (preg_match('/^grade_(.*)_(.*)$/', $key, $matches) > 0) {
                $matches[1] = intval($matches[1]);
                $matches[2] = intval($matches[2]);
                $sql = "SELECT grade_scale_id FROM %sgradebook_tests WHERE gradebook_test_id = %d";
                $row = queryDB($sql, array(TABLE_PREFIX, $matches[1]), TRUE);
                $sql = "REPLACE %sgradebook_detail SET gradebook_test_id = %d, member_id=%d, grade='" . get_mark_by_grade($row["grade_scale_id"], $value) . "'";
                $result = queryDB($sql, array(TABLE_PREFIX, $matches[1], $matches[2]));
                if ($result > 0) {
                    $msg->addFeedback('ACTION_COMPLETED_SUCCESSFULLY');
                }
            }
        }
    }
}
$orders = array('asc' => 'desc', 'desc' => 'asc');
if (isset($_GET['asc'])) {
    $order = 'asc';
    $order_col = $addslashes($_GET['asc']);
} else {
    if (isset($_GET['desc'])) {
        $order = 'desc';
Beispiel #4
0
function get_class_avg($gradebook_test_id)
{
    $sql = "SELECT * FROM %sgradebook_tests WHERE gradebook_test_id=%d";
    $row = queryDB($sql, array(TABLE_PREFIX, $gradebook_test_id), TRUE);
    if ($row["id"] != 0) {
        require_once AT_INCLUDE_PATH . '../mods/_standard/tests/lib/test_result_functions.inc.php';
        $sql_test = "SELECT * FROM %stests WHERE test_id=%d";
        $row_test = queryDB($sql_test, array(TABLE_PREFIX, $row["id"]), TRUE);
        if ($row_test['out_of'] == 0 || $row_test['result_release'] == AT_RELEASE_NEVER) {
            return _AT("na");
        }
        $sql_marks = "SELECT * FROM %stests_results WHERE test_id=%d AND status=1";
        $rows_marks = queryDB($sql_marks, array(TABLE_PREFIX, $row["id"]));
        $num_students = 0;
        $total_final_score = 0;
        $total_out_of = 0;
        foreach ($rows_marks as $row_marks) {
            if ($row_marks['final_score'] == '') {
                continue;
            }
            $num_students++;
            $total_final_score += $row_marks["final_score"];
            if ($row_test['random']) {
                $total_out_of += get_random_outof($row_marks['test_id'], $row_marks['result_id']);
            } else {
                $total_out_of += $row_test['out_of'];
            }
        }
        if ($num_students > 0) {
            $avg_final_score = round($total_final_score / $num_students);
            $avg_out_of = round($total_out_of / $num_students);
        }
        if ($avg_final_score != "") {
            $avg_grade = get_mark_by_grade($row["grade_scale_id"], $avg_final_score, $avg_out_of);
        } else {
            $avg_grade = "";
        }
    } else {
        $sql_grades = "SELECT * FROM %sgradebook_detail WHERE gradebook_test_id= %d ORDER BY grade";
        $rows_grades = queryDB($sql_grades, array(TABLE_PREFIX, $gradebook_test_id));
        $grade_array = array();
        foreach ($rows_grades as $row_grades) {
            $grade_array[] = $row_grades["grade"];
        }
        $avg_grade = median($grade_array);
    }
    if ($avg_grade == "") {
        return _AT("na");
    } else {
        return $avg_grade;
    }
}