Example #1
0
 public function getViewFile($page = self::DEFAULT_PAGE)
 {
     $pagesJson = Utilities\Config::ReadJSON(ROOT_PATH . 'config/pages.json');
     $backbonePage = isset($pagesJson[$page]) ? $pagesJson[$page] : array($page);
     if (!isset($backbonePage['file'])) {
         return false;
     }
     $resultPath = ROOT_PATH . 'ui/Views/' . $backbonePage['file'] . '.phtml';
     if (!file_exists($resultPath)) {
         return false;
     }
     return $resultPath;
 }
$sickLeave = Models\Sickleave::Find($_REQUEST['id'], 'sickleave');
if ($sickLeave instanceof Models\Sickleave) {
}
// intellisense only
if ($sickLeave->notifstatus == 'UNREAD' || is_string($sickLeave->read_on) && strlen($sickLeave->read_on) == 0) {
    // This is not yet read
    $db = \DB::Instance();
    $pdo = $db->pdo;
    if ($pdo instanceof PDO) {
    }
    // intellisense
    $stmt = $pdo->prepare('CALL mark_sickleave_as_read(:sickleave_id, :read_by)');
    $stmt->bindParam(':sickleave_id', $sickLeave->id);
    $stmt->bindParam(':read_by', $sessData->getUser()->id);
    if ($stmt->execute()) {
        $sickLeave = Models\Sickleave::Find($sickLeave->GetRecordID(), 'sickleave');
        // Notify via email
        $isNotificationEnabled = Utilities\Config::get('email_notification', CONFIG_PATH . 'application.ini');
        if ($isNotificationEnabled == 1) {
            try {
                Utilities\Email::NotifyPeopleFromSickleave($sickLeave);
            } catch (phpmailerException $ex) {
                $sickLeave->SetState(new ModelResponse(false, 'Failure on notifying people involved in this sick-leave: ' . $ex->getMessage()));
            }
        }
        die(new ModelResponse(true, 'Sick leave has been successfully marked as READ', $sickLeave));
    } else {
        die(new ModelResponse(false, 'Failed to mark sickleave as read'));
    }
}
die(new ModelResponse(true, 'Sick leave is already marked as READ', $sickLeave));