Обратите внимание, что новости можно получать по RSS.
X
-

Информационные технологии, Infused Bytes - архив

25 октября 2001, 00:00 (8209 дней назад, №6061)PHPGroupWare - совместная работа над проектом

PHPGroupWare (далее "PGW") - сравнительно новое приложение, предназначенное для совместной работы над проектами (в том числе, когда разработчики географически удалены друг от друга). По-английски это называется "multi-user groupware suite". Основная идея заключается в том, что несколько человек по ходу работы над проектом иногда заходят на сайт типа www.youroffice.ru/pgw и отмечают что уже сделано, что еще планируется сделать, в какие сроки, насколько важна та или иная часть проекта, обмениваются сообщениями в форуме, читают новости. При этом руководитель проекта получает возможность контролировать процесс. Также в системе предусмотрены некие общие сервисы (email, news, файловый архив).

Особенностью PGW по сравнению с другими продуктами этой категории (обычно упоминают MS Exchange) является тот факт, что он полностью реализован на PHP (+ MySql либо Postgres), имеет web интерфейс, возможность написания собственных дополнительных модулей (используя документированный API), свободно доступен под GNU лицензией.

Различные варианты web интерфейса PGW (default, verdilak, id_society, justweb).

Каждый модуль представлен иконкой (строчкой) общего меню системы. Например Calendar, ToDoList, Manual, Notes, AddressBook.

На данный момент в PGW входят следующие модули (любой из них можно сделать "главным" - он будет запускаться при входе в систему):

Календарь (Calendar)

Позволяет отмечать события, включая название, описание, приоритет, начальную и конечную дату/время, категорию, участников (Participants) - из числа пользователей системы.
Участники события могут подтвердить свое участие - для этого предусмотрены состояния: "Подтверждаю" (Accepted), "Отказываюсь" (Rejected), "Пробую" (Tentative), "Нет ответа" (No response).

События можно пометить повторяющимися (ежедневно, еженедельно, ежемесячно, ежегодно).

Если событие по времени пересекается с уже введенным - выдается предупреждение (которое можно игнорировать).

Введенные события отображаются в виде календаря на требуемый промежуток времени: день, неделю, месяц, год.
Взависимости от выбранного промежутка - по-разному (текстом, цветом, рамкой вокруг даты).
Есть возможность показать только личные события (фильтр), вывести календарь в пригодном для печати на принтере виде. Предусмотрен поиск.

Через модуль Admin можно ввести даты праздников которые будут автоматически отмечаться в календаре.

С практической точки зрения Календарь позволяет планировать события (указывая описание, промежуток времени) с поименным или групповым указанием их участников. События могут пересекаться по времени. События видны всем, кто отмечен как участник данного события. 
События можно редактировать и удалять, но не всем, а по некоей логике суть которой мне постичь не удалось.

Список дел (To do list)

Позволяет планировать дела (todo) составляя их список и помечая для каждого срочность (Urgency), начальную и конечную дату, завершенность (в процентах), категорию. Список может быть отсортирован по одному из признаков.
Внутри дело может разбиваться на дела второго уровня (sub) - "этапы".
Также есть поиск.

Можно посмотреть "View Matrix of actual Month" - как распределяются все дела по дням текущего месяца (срочность выделяется цветом, видны пересечения дел по времени).

Серьезным недостатком являются затруднения с передачей дел от одного пользователя к другому. Хотя через Preferences можно сделать список своих дел доступным другому пользователю (или группе), однако, к примеру, "View Matrix of actual Month" будет работать только у пользователя который создал список.

Печально, что между Календарем и Списком дел нет связи. Изменения в Списке дел не отражаются в Календаре (равно как и наоборот). Это сильно ограничивает возможности по общей оценке использования времени, состояния работ.

AddressBook

Адресная книга. В числе прочего (множество полей для каждого человека) позволяет экспорт и импорт записей (в форматах Netscape, Outlook, Palm Desktop). Каждая запись может быть привязана к выбранной категории.
Есть также поиск и фильтры.

Notes

Простая записная книжка. Записки могут быть привязаны к выбранной категории. Дата записки проставляется автоматически. Есть поиск.

Общими для перечисленных приложений (Calendar, ToDo List, Notes, Address Book) являются понятия:

Категория (Category) - список категорий, определяется через модуль Admin. Поддерживаются вложенные категории (для каждой можно указать предка и потомка). Существуют глобальные категории и категории локальные для каждого модуля.
На практике можно использовать категории для разделения данных и записей при работе по нескольким проектам.

Приоритет (Priority, Urgency) - обычный, низкий, высокий (Normal, Low, High).

Private (Личное) - если заметка/событие отмечено как Личное, оно не показывается другим пользователям. Обычно предоставляется возможность фильтровать выводимые события/дела по этому признаку (например - показывать только личные).

File Manager

Организует "файловую систему" с разграничением доступа пользователей PGW к файлам. Операции: Upload, Download, Create, Edit, Copy, Delete, Rename.

Администратор (Admin)

Предназначен для установки глобальных параметров и для настройки конкретных модулей. Доступен только администратору.
Сюда, в частности, входит: 

Добавление/редактирование пользователей (перечисление доступных им модулей, принадлежность к группе, дата после которой пользователь становится неактивным).

Добавление/редактирование групп (перечисление модулей доступных пользователям в данной группе, помещение пользователей в выбранную группу).

Добавление/редактирование модулей (имя, заголовок, статус, где должна находится иконка, возможен ли анонимный доступ к модулю).

Добавление/редактирование категорий.

Список текущих пользователей, статистика по работе пользователей в системе (когда, кто и сколько пользовался системой).

и другое..

Установки (Preferences)

Предназначены для изменения настроек интерфейса и настройки модулей под текущего пользователя.
В частности позволяет: изменить пароль, формат даты, язык, вид интерфейса.

Показывать меню в виде иконок и/или текста.

Выбрать интерфейс/шаблон из предлагаемых (default, justweb, verdilak, idsociety), цвета и шрифты.

Ограничение/разрешение доступа к своим данным других пользователей.

Другие модули

Кроме того, есть еще два-три десятка модулей из которых можно упомянуть:

Bookmarks, BookKeeping, Chat, Forum, Headlines, EMail, NNTP, Polls, Wap, Weather.

Большинство из них требует дополнительной установки (помимо установки самого PGW). 

Поддержка языков/стран

Об этом следует сказать особо. PGW является многоязычным.
Текстовые сообщения, меню и т.п. вынесены в отдельные файлы, которые при необходимости можно перевести на русский язык. 
Можно также установить нужный формат отображения даты/времени, национальную денежную единицу, часовой пояс.

По умолчанию в PGW включена поддержка English/American. Чтобы добавить поддержку русского языка, нужно произвести как минимум следующие действия:

До создания таблиц (то есть, до шага N1 установки PGW) необходимо в файле setup/sql/common_default_records.inc.php заменить:

@$phpgw_setup->db->query("INSERT INTO languages (lang_id, lang_name, available) values ('ru','Russian','No')");

на:

@$phpgw_setup->db->query("INSERT INTO languages (lang_id, lang_name, available) values ('ru','Russian','Yes')");

и создать файл /setup/phpgw_ru.lang из одной строчки:

charset#common#ru#windows-1251

(# - табуляция)

Затем, после создания таблиц, на шаге N3 (language management) нажать "Manage Languages", пометить "Russian", нажать "Install".

И уже в Preferences для данного пользователя выбрать язык "Russian".

Такие действия позволят использовать русские буквы в формах, однако интерфейс останется английским. В перспективе кто-нибудь, вероятно, его переведет (для этого в файле /setup/phpgw_ru.lang нужно перечислить соответствие русских слов английским ключевым словам (см. /setup/phpgw_en.lang и другие *.lang файлы).
Если перевод для какого-либо ключевого слова отсутствует, то на экране отображается само это слово (английское) с символом '*' в конце.

Написание собственных/дополнительных модулей. API.

В PGW существует документированная возможность написания собственных модулей. Насколько можно понять из API, обмен данными между приложениями не предусмотрен. Однако модулю доступны ряд функций и переменных которые, к примеру, позволяют:

- Вывести стандартное меню PGW;
- Узнать права доступа и другую информацию о текущем пользователе, и/или группе;
- Разместить в Preferences и Admin блок относящийся к собственному модулю;
- Осуществлять доступ к базе данных, файловой системе, управление сессиями;

Можно отметить, что в PGW поддерживается шифрование через библиотеку mcrypt;

Появились первые сторонние разработки модулей к PGW. Например SkyBoard - http://www.tms-px.co.jp/

Недостатки

Перечислю недостатки, поскольку плюсы достаточно очевидны. Итак:

1.Слабая логическая связь модулей между собой - они больше напоминают независимые приложения вокруг ядра, предоставляющего некий набор сервисов. В результате, руководителю/администратору затруднительно получить общую информацию о ходе работ. По-видимому, система создавалась в первую очередь для удобства отдельных разработчиков, а не для контроля над их работой.

2.Почти полное отсутствие документации.

3.Периодически возникают ситуации обработка которых не предусмотрена (выдаются PHP ошибки).

Учитывая, что это лишь версия 0.9.12, можно надеяться, что проблемы (2) и (3) будут решены. Однако (1) - скорее идея, нежели недоработка. Конечно, кое-то можно сделать написав собственные модули.

Кстати, на www.hotscripts.com PGW оценивают как 4.3 из 5 баллов.

Ссылки


Опубликовано: Пётр Соболев

Случайная заметка

5641 день назад, 18:055 ноября 2008 "UAProf" - Wapforum реализация W3C стандарта "CC/PP". Иногда употребляются как синонимы.Предназначение CC/PP, UAProf - предоставить серверу (а также прокси и гейту) информацию о технических возможностях мобильного устройства (телефона) пользователя и о его, пользователя предпочтениях (например, на каком языке он предпочитает видеть ...далее

Избранное

2538 дней назад, 01:575 мая 2017 Часть 1: От четырёх до восьми Я люблю читать воспоминания людей, заставших первые шаги вычислительной техники в их стране. В них всегда есть какая-то романтика, причём какого она рода — сильно зависит от того, с каких компьютеров люди начали. Обычно это определяется обстоятельствами — местом работы, учёбы, а иногда и вовсе — ...далее

2050 дней назад, 20:305 сентября 2018 "Finally, we come to the instruction we've all been waiting for – SEX!" / из статьи про микропроцессор CDP1802 / В начале 1970-х в США были весьма популярны простые электронные игры типа Pong (в СССР их аналоги появились в продаже через 5-10 лет). Как правило, такие игры не имели микропроцессора и памяти в современном понимании этих слов, а строились на жёсткой ...далее