Федор Достоевский: От того, что php установлен как модуль апача, он работать не перестает. Если это хостинг, то, видимо, где-то в панели управления нужно выбрать правильную версию php.
Федор Достоевский: Из вашего вопроса ничего непонятно. У вас на сервере две версии php? Если да, то подключите для сайта нужную. Если одна и это php 5.3 - обновитесь до 5.5. Если у вас 5.5, то в чем проблема?
Сергей Титов: Я тестил события окна и документа - они срабатывали как-то очень нерегулярно. Если быстро мышь вывести за пределы экрана, то событие могло не сработать. Опять же, я в комментарии к вопросу написал, что такая проверка вообще не лучшая практика. Я могу курсор оставить в окне сайта, даже фокус на поле ввода могу оставить и уйти в другую комнату или просто отвернуться - пользователь должен сам решать, нужны ему уведомления или нет.
Несколько полезных ссылок по теме. У меня архитектура попроще, поэтому не могу сказать насколько эти библиотеки подходят под ваши задачи, предоставляю вам возможность определиться самостоятельно.
Для булевых свойств, на мой взгляд, лучше использовать markAsWatched/markAsUnwatched, это уровень языка домена. А уже внутри они могут быть реализованы через приватный setWatched.