if ($enc_obj->loadEncounterData($pn)) {
    if ($mode == 'release' && !(isset($lock) || $lock)) {
        $date = empty($x_date) ? date('Y-m-d') : formatDate2STD($x_date, $date_format);
        $time = empty($x_time) ? date('H:i:s') : convertTimeToStandard($x_time);
        switch ($relart) {
            case 1:
            case 2:
            case 7:
            case 3:
                $released = $enc_obj->Discharge($pn, $relart, $date, $time);
                break;
            case 4:
                $released = $enc_obj->DischargeFromWard($pn, $relart, $date, $time);
                break;
            case 5:
                $released = $enc_obj->DischargeFromRoom($pn, $relart, $date, $time);
                break;
            case 6:
                $released = $enc_obj->DischargeFromBed($pn, $relart, $date, $time);
                break;
            default:
                $released = false;
        }
        if ($released) {
            if (!empty($info)) {
                $data_array['notes'] = $info;
                $data_array['encounter_nr'] = $pn;
                $data_array['date'] = $date;
                $data_array['time'] = $time;
                $data_array['personell_name'] = $encoder;
                $enc_obj->saveDischargeNotesFromArray($data_array);