А что, если компания иностранная, то она обязательно должна равнятся на гугл, майкрософт и фейсбук по размеру штата? Какой-то странный аргумент. За рубежом полно компаний где кол-во народа намного меньше 300 человек. Я работал в компании где в штате было меньше 50 человек и при этом компания была одним из лидеров в своей отрасли.
eellazy: можно сделать проще. Добавить атрибут minutes со значениями 15, 35, 42. При переходе на следующий шаг или возврате заносить значение атрибута в переменную. Затем взять все три элемента с промежутками времени и если у элемента этот атрибут меньше или равно текущему значению, то красить его в красный.
Евгений Николаев: Во первых создайте поле client_ids в базе в таблице сообщений. Пусть клиент генерирует его сам на своей стороне, но только один раз. Или пусть сервер ему отправляет id в виде куков. При каждом запросе он должен отправлять свой id. Когда от клиента приходит запрос на новые сообщения отправляйте ему массив сообщений из базы, но не все, а только те, что еще не прочитаны им. Как узнать, прочитал он конкретное сообщение или нет? А вот тут как раз поможет поле client_ids в таблице сообщений. Перебираете client_ids и если там нет его id то, значит сообщение для него новое.
Евгений Николаев: я понял для чего вы это делаете. Один из запросов обрабатывает входящее сообщение, которое заносится в базу данных и затем отправляется всем клиентам. Но это делается не так. Вы построили неправильную архитектуру.
А что, если компания иностранная, то она обязательно должна равнятся на гугл, майкрософт и фейсбук по размеру штата? Какой-то странный аргумент. За рубежом полно компаний где кол-во народа намного меньше 300 человек. Я работал в компании где в штате было меньше 50 человек и при этом компания была одним из лидеров в своей отрасли.