OEModule\OphCiExamination\components\ExaminationCreator::addVisualAcuityReading PHP Method

addVisualAcuityReading() protected method

protected addVisualAcuityReading ( $userId, $visualAcuity, $unit, $vaData, $eyeLabel, $near = false )
$userId
$visualAcuity
$unit
$vaData
$eyeLabel
$near
    protected function addVisualAcuityReading($userId, $visualAcuity, $unit, $vaData, $eyeLabel, $near = false)
    {
        $vaReading = new \OEModule\OphCiExamination\models\OphCiExamination_VisualAcuity_Reading();
        if ($near) {
            $vaReading = new \OEModule\OphCiExamination\models\OphCiExamination_NearVisualAcuity_Reading();
        }
        $vaReading->element_id = $visualAcuity->id;
        $baseValue = \OEModule\OphCiExamination\models\OphCiExamination_VisualAcuityUnitValue::model()->getBaseValue($unit->id, $vaData['reading']);
        $vaReading->value = $baseValue;
        $vaReading->method_id = \OEModule\OphCiExamination\models\OphCiExamination_VisualAcuity_Method::model()->find('name = :name', array('name' => $vaData['method']))->id;
        if ($eyeLabel === 'left') {
            $vaReading->side = \OEModule\OphCiExamination\models\OphCiExamination_VisualAcuity_Reading::LEFT;
        } else {
            $vaReading->side = \OEModule\OphCiExamination\models\OphCiExamination_VisualAcuity_Reading::RIGHT;
        }
        $vaReading->created_user_id = $vaReading->last_modified_user_id = $userId;
        if (!$vaReading->save(true, null, true)) {
            throw new \CDbException('Visual Acuity Reading failed: ' . print_r($vaReading->getErrors(), true));
        }
    }