Code Monkey home page Code Monkey logo

ldap-phonebook's People

Contributors

impuls2003 avatar pfzim avatar yuriysam avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

ldap-phonebook's Issues

Импорт пользователей и контактов из AD

Добрый день!
Спасибо разработчику, все запустилось.
Импорт пользователей из AD проходит нормально, но мне нужно импортировать еще и контакты.
В LDAP_FILTER выставляю (|(objectClass=contact)(objectClass=person)(objectClass=user)), при формировании файла inc.config.php через браузер показывает, что доступны все мои 53 контакта, но в последствии при синхронизации контакты не импортируются, а импортируются только пользователи.

Удаление старых контактов

Скажите, синхронизация с AD проходит только в сторону добавления контактов? Например при увольнении сотрудника мы отключаем уч. запись и перемещаем ее в отдельный OU за пределами компании. После синхронизации контакт остается в списке, хотя его даже нет в OU, на который нацелена книга.
Если так, то как проще всего очистить мусорные контакты? Очистить всю БД (контакты используем только из AD) и синхронизировать?
Спасибо.

Добавить отображение номера комнаты

Добрый день. Как добавить вывод номера комнаты?
Я пробовал использовать параметр physicalDeliveryOfficeName чтобы показывать данные из строки Office во вкладке General, но никаких данных он не выдает(
У меня не используется строка Company, поэтому я поменял в файле pb.php $s_organization = @$account['physicalDeliveryOfficeName'][0];, но в таблице в столбце org ничего не появляется. Я пробовал менять на initials и инициалы появлялись.
В файле inc.config я добавлял в "LDAP_ATTRS" значение physicalDeliveryOfficeName

Установка телефонного справочника без подключения Active Directory

Добрый день!
В рекомендуемых требованиях у вас написано что Active Directory (optional), т.е. наличие AD опционально и не обязательно.
Однако без AD я не могу установить ваш телефонный справочник через мастер установки, подскажите пожалуйста, как быть в данном случае?

Фотографии пользователей

Приветствую.
Прошу подсказать как реализовать отображение фотографий пользователей, выгруженных не из AD, а, например, из сетевой папки? Уж очень маленькие размеры фотографий в AD. Для страницы "Map" идеальные, но для станицы "Contacts" маленькие.
Так же это усложняет поддержку фото пользователей, т.к. им нужно загружать фото самостоятельно (по крайней мере я знаю только такой способ - через owa).
Может есть ещё какой альтернативный метод..?

Отключение обновление

Как можно отключить обновление, при запуске пытается обновить.
А при нажатии upgrade ошибки:

`Upgrading...

Create 'config' table...
Error: Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)
Add column 'ldap' to 'users' table...
Error: Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)
Set db_version = '1'...
Error: Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)
Upgrade to version 1 complete!

Add column 'type' to 'contacts' table...
Error: Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)
Set db_version = '2'...
Error: Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)

Now you must add to inc.config.php something like

$g_icons = array("Human", "Printer", "Fax");
And replace files templ/marker-static-[0-nn].png with you icons

Upgrade to version 2 complete!

Create 'handshake' table...
Error: Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)
Set db_version = '3'...
Error: Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)

Upgrade to version 3 complete!`

Проблема с кнопкой Sync

Добрый день!

Обнаружил следующую проблему, при нажатии кнопки Sync для получения данных из AD. Ничего не происходит, после чего в браузере просто пустая страница. (скриншот в приложении). До этого подобной проблемы не было, после обновления данных пользователей в AD и нажатии кнопки Sync, контакты обновлялись. Сейчас этого не происходит. Не подскажите с чем может быть связана данная причина? Возможно сталкивались с ней ранее?
screenshot_8

Не синхронизирует LDAP

При нажатии "Синхронизировать"
выдает ошибку
Exception: File: C:\pb\routes\contacts_sync.php[44]: ldap_parse_result return error: Success Trace:
#0 C:\pb\modules\Router.php(103): contacts_sync(Object(Core), Array, Array)
#1 C:\pb\pb.php(316): Router->process('contacts_sync', Array)
#2 {main}
Но в тоже время зайти как администратор с доменной учетной записью удается.

ошибка при запуске проекта

Спасибо за ваш отличный проект. Я пытаюсь запустить проект на локальном хосте. После добавления папки в папку htdocs xampp меня перенаправляют на страницу install.php.

Я ввожу необходимые пароли и учетные данные, но затем, когда я пытаюсь получить доступ к индексной странице, я получаю эту ошибку:

Fatal error: Uncaught mysqli_sql_exception: Access denied for user 'dbuser'@'localhost' (using password: YES) in ...\xampp\htdocs\ldap-phonebook-master\modules\MySQLDB.php:95 Stack trace: #0 ...\xampp\htdocs\ldap-phonebook-master\modules\MySQLDB.php(95): mysqli_connect('localhost', 'dbuser', '123456', 'websco') #1 ...\xampp\htdocs\ldap-phonebook-master\modules\MySQLDB.php(223): MySQLDB->connect(true) #2 ...\xampp\htdocs\ldap-phonebook-master\modules\Config.php(33): MySQLDB->select_ex(Array, 'SELECT m.name...') #3 ...\xampp\htdocs\ldap-phonebook-master\modules\Config.php(62): Config->load(0) #4 D:\xampp\htdocs\ldap-phonebook-master\modules\Config.php(80): Config->get_ex(0, 'db_version', 0) #5 ...\xampp\htdocs\ldap-phonebook-master\pb.php(150): Config->get_global('db_version', 0) #6 {main} thrown in ...\xampp\htdocs\ldap-phonebook-master\modules\MySQLDB.php on line 95

что случилось?

Отсутствие кнопок

Доброго времени суток.
Подскажи пожалуйста. При авторизации под админом отсутствуют кнопка редактирования абонента, удаления, добавления фото. Так же при удалении контакта из AD абонент в базе остается. Так и задумано?

Обновление

Здравствуйте! Спасибо за вашу разработку!
Может это и глупый вопрос....подскажите пожалуйста, как обновить до последней вашей версии, внести ваши доработки и исправления в прошлую версию 2019г?

Не подтягиваются аватарки

Развернул справочник, синхронизировал с AD, но аватарки пользователей не подтянулись. Что можно поправить, чтобы устранить это?
image

Автоматическое обновление (cron)

Можно ли реализовать обновление данных с AD посредством цикличной cron задачи без рукоприкладства со стороны администратора web-gui ?

ошибка NotAllFilled

Имеется необходимость добавить в телефонный справочник дополнительную функцию "Регистрация переговорной комнаты"
Добавил новую таблицу со столбцами "pb_ peregovorka"
добавил в header дополнительное меню.

создал файл для получения данных из базы .
файл - routes/pk.php

создал форму и заполнил ее.
файл - templates/tpl.pk.php

создал файл для редактирования и создания новых записей в таблицу.
файл - routes/pk_edit.php

основываясь на информации как в файлах user_save.php и contact_save.php
создал для своих столбцов таблицы файл routes/pk_save.php

добавил эти файлы в pb.php
$core->Router->add_route('pk', 'pk');
$core->Router->add_route('pk_edit', 'pk_edit', TRUE);
$core->Router->add_route('pk_save', 'pk_save', TRUE);
в файле pb.js дописал
unction on_saved(action, data)
{
if(action == 'permission_save')
{
//f_get_perms(data.pid);
window.location = window.location;
}
else if(action == 'user_save')
{
window.location = window.location;
}
else if(action == 'pk_save')
{
window.location = window.location;
}
***//

В итоге данные из таблицы отображаются, форма для создания новых записей и форма редактирования открывается.
Но при нажатии кнопки "OK" в форме отображается сообщение "NotAllFilled"
Пробовал отключать эту проверку в созданных файлах но ничего не помогло.

Администратор по Умолчанию (admin)

Здравствуйте.
Работает на Ура.
Все вытащил и А.Д. ну все что было прописано для каждого пользователя.
Но есть не знаю проблема ли и так глюк.

  1. Так как подключается к А.Д. Админ по умолчанию но может войти?
  2. как и где подправить код чтобы показывать Дни рождения есть такая необходимость.

И вот сейчас попробовал в файле inc.config.php убрать значение
define('PB_USE_LDAP_AUTH', 0); и сразу админ смог зайти без проблем.

Ошибка: tpl.users.php

Warning: include(/var/www/webapps/pb/templates/tpl.tree-list.php): failed to open stream: No such file or directory in /var/www/webapps/pb/templates/tpl.users.php on line 2

Warning: include(): Failed opening '/var/www/webapps/pb/templates/tpl.tree-list.php' for inclusion (include_path='./:/usr/share/php/pear/:/usr/share/php/modules/') in /var/www/webapps/pb/templates/tpl.users.php on line 2
Управление локальными пользователями

В текущем релизе файл отсутствует.
Как решить?

Мультиязычность

Приветствую.
Прошу подсказать, как реализовать смену языка для пользователей сайта?
Т.е. добавить кнопку выбора языка, которая бы меняла язык интерфейса и выгружала значений из других ячеек таблицы БД.
Я примерно понимаю как это реализовать, в базу сам добавлю необходимые поля и загрузку/выгрузку значений, но опыта в php нет, поэтому прошу помощи.

Дублируется информация в пустые поля контактов

Добрый день.
Описываю ситуацию, которую заметил и хотел бы решение как отключить эту зависимость:
Есть Контакт №1, у которого заполнены все поля в форме добавления контакта.
Есть Контакт №2, у которого заполнены 2 первых поля и много пустых полей.
Есть Контакт №3, у которого заполнены 2 последних поля, а остальные пустые.
Если, например, нажать кнопку Изменить Контакта №1, внести изменения в любое заполненное поле, потом нажать кнопку Сохранить и не обновлять страницу, то при нажатии кнопки Изменить у Контакта №2 все пустые поля "втихоря" заполняются информацией из полей Контакта №1, что редко замечаешь вообще, нажимаешь Сохранить и потом получается что e-mail, телефон и т.п. одинаковые у разных сотрудников. Контакт №3, например, заполнит пустые поля информацией из заполненных полей Контакта №2 и т.д.
Когда массово меняю всем контактам адреса, например, то данная опция совершенно неудобна мне.
Решение есть конечно, но неудобное, необходимо после изменения полей Контакта №1 и нажатия кнопки Сохранить, нажимать F5 и только после этого можно править поля других контактов и не боятся, что информация задублируется, но не всегда вспоминаешь об обновлении страницы после редактирования каждого контакта в массовом режиме.
Где эта строчка кода, которая за это отвечает?
Хотелось бы ее закомментировать, чтобы было удобно массово изменять контакты не обновляя страницу каждый раз и чтобы информация не подтягивалась туда-сюда лишняя.
Спасибо.

IP Phone вместо Phone City

Здравствуйте! Подскажите как и где исправить код, чтоб таблица pcity заполнялась данными из AD, а не в ручную. Хочу в это поле выводить IP телефон, но все мои попытки увенчались неудачей. Сама телефонная книга работает отлично. Спасибо за сие творение.

AJAX Error code 500

Здравствуйте!
Заметил, что элемент номера телефона является активным, но при нажатии выходит ошибка AJAX Error code 500. Механизм колбека? Если да, то как заставить работать? Имею в сети asterisk.

Дни рождения в контактах импортированных из AD

Добрый день.
Подскажите, пожалуйста, существует ли возможность редактировать контакты, импортированные из AD? Если нет, то подскажите какой атрибут импортируется из AD для подстановки в графу дня рождения?

Названия комнат в карте

Можно ли поменять названия комнат в карте Floor 1, Floor 3, Floor 6, Floor14, Floor 25 ?
На Этаж 1, Этаж 2, Филиал 7, Центральный офис.

Create admin account

При создании admin получаю ошибку
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '('12345'), '[email protected]', 0)' at line 1

Server version: 8.0.16 MySQL Community Server - GPL

Вкладка "Рукопожатия"

Вкладка "Рукопожатия" пустая.
Я так понял она нужна для сопоставления компьютеров с учетными записями пользователей.
Подскажите как заполнить ее данными?

Скорость работы базы

Добрый день.
Подскажите, пожалуйста, почему справочник на Windows Server 2019 работает быстрее, чем на Windows 10?
Т.е. у меня Windows 10 + Hyper-V и на виртуалке Windows Server 2019 в 10 раз быстрее работает добавление контактов вручную, чем если у меня все так же поднято на Windows 10. Именно меню это на сайте справочника "добавить контакт" молниеносно открывается на Windows Server 2019, а на Windows 10 и phpmyadmin висит по 10 секунд после каждого нажатия и меню "добавить контакт" на сайте справочника тоже. Ссылаюсь, что, возможно, проблема в какой-то низкой скорости работы базы MariaDB на Windows 10. Что необходимо доустановить или поднастроить, чтобы у меня на локальном хосте на Windows 10 сайт справочника работал очень быстро? На Windows Server 2019, видимо, уже какие-то интересные компоненты предустановлены, что сайт справочника и phpmyadmin просто летают...

Группировка, сортировка и отображение контактов

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

Save config error

Добрый день!
Не могу записать конфиг., пишите ошибку "Save config error",
Как отловить ошибку?
Все шаги, по подключению базы, создания пользователя, базы, таблицы, e-mail, создания учетной записи ,- проходят успешно.

Вот что установлено на Linux
php -ver
PHP 5.6.36 (cli) (built: Apr 25 2018 10:02:39)
Copyright (c) 1997-2016 The PHP Group
Zend Engine v2.6.0, Copyright (c) 1998-2016 Zend Technologies

apachectl -ver
Server version: Apache/2.4.6 (CentOS)
Server built: Apr 20 2018 18:10:38

mysql -V
mysql Ver 15.1 Distrib 10.3.7-MariaDB, for Linux (x86_64) using readline 5.1

Модули есть:
php --ini | grep fileinfo
/etc/php.d/20-fileinfo.ini,
php --ini | grep ldap
/etc/php.d/20-ldap.ini,

Ф.И.О.

Здравствуйте.
Как сделать чтобы в колонке (Name) ФИО шли в алфавитном порядке?
Спасибо.

ошибка первого входа после установки

Установил, настроил, все проверки система прошла. При первом входе ошибка 500. В логах сервера текст "PHP Parse error: syntax error, unexpected ')', expecting :: (T_PAAMAYIM_NEKUDOTAYIM) in /var/www/html/ldph/pb.php on line 134"
система - centos 7, PHP 5.4.16

информация о модулях:

LDAP Support | enabled
RCS Version | $Id$
Total Links | 0/unlimited
API Version | 3001
Vendor Name | OpenLDAP
Vendor Version | 20444
SASL Support | Enabled

Отображение ФИО в списке,

После обновления пропала возможность выводить ФИО (отображаемое имя) вместо отдельных полей фамилия и имя.
Ранее обсуждалось, было решение вопроса, сейчас этот метод не работает.

Первый запуск / install.php

Привет.
Благодарю за интересный проект, мне он очень понравился, но я не очень дружу с линейкой ОС линукс (только учусь).
На CentOS 7 были развёрнуты Apache, PHP и MariaDB. Проверил работу, подсунув в каталог "/var/www/html" простенький index.php. Далее подсунул в эту же директорию ваш проект. При открытии сайта идёт переадресация на страницу install.php, но страница не открывается, появляется ошибка:
Страница недоступна
Сайт 192.168.11.11 пока не может обработать этот запрос.
HTTP ERROR 500

Прошу подсказать куда копать.
Если есть полная инструкция по развёртыванию проекта, то буду признателен, если подскажете где её найти.

Отображение мобильных телефонов только после прохождения авторизации

Добрый день!
Не подскажите, как можно сделать, чтобы мобильные номера отображались только после прохождения авторизации на веб интерфейсе книги? Сам понимаю, что нужно просто вторую страничку сделать, которая бы задействовалась после логина, но не смог найти в коде где идет этот самый переход.

Отображение Контактов из AD

Приветствую. Нет придела совершенству, и хотел бы узнать как включить в данном чудесном справочнике отображение контактов из AD. Все пользователи отображаются корректно и все работает очень быстро и стабильно. Но увы, не отображаются контакты созданные в AD. Пользователи отображаются, контакты нет. Было бы замечательно если бы в адресную книгу попадали контакты без учетной записи в AD.

SSO

Спасибо Вам за труд!
Как на счет расширить функционал поддержкой SSO и сделать доступ по группам AD? Подобное реализовано в dokuwiki. Имя пользователя показывать вместо кнопки "Вход"
При логине пользователя, входящего в LDAP_ADMIN_GROUP_DN - открывать полный функционал, остальным только просмотр. Опционально пользователям можно разрешать изменение своих личных данных. Не вошедшим в систему показывать какой-либо урезанный список контактов.
А на сами номера в таком случае можно повесить хороший экшн - набрать номер при нажатии. Видеть номера удобно, но набирать мобильники или в другие страны - много кнопок.
Я в php не силен, но вот если будет авторизация плюс определение дополнительных атрибутов вошедшего пользователя, то originate в asterisk я прикручу, наверное.

Ограничение контактов

Добрый день! Установил, все работает, контакты импортируются , но не все! Около 70 контактов нормально отображается, а стальные нет (всего около 300). Куда посмотреть?

Cannot modify header information

после установки появляется такая ошибка:

Warning: Cannot modify header information - headers already sent by (output started at /var/www/html/language/ru.php:86) in /var/www/html/inc.user.php on line 222

Warning: Cannot modify header information - headers already sent by (output started at /var/www/html/language/ru.php:86) in /var/www/html/inc.user.php on line 223

Warning: Cannot modify header information - headers already sent by (output started at /var/www/html/language/ru.php:86) in /var/www/html/pb.php on line 1169

image

Что делать?

Поиск по номеру

Возможно ли в строке поиска игнорировать спецсимволы? Номера мобильных телефонов могут быть записаны +7, 7, 8 и пр, для легкого чтения в номере иногда выделяют префикс в скобки, ставят дефисы/пробелы. Поиск же работает по строгому соответствию... Хотя нет, он работает странным образом. При вводе в строку "79" отбираются номера 891, 892, +7(91, 798, при вводе "89" отбираются почти те же диапазоны (ключевое "почти", есть различия). При вводе "791" совсем ничего не находится. При "891" находятся 891, +7(91...
Я так понимаю, что имеется какая-то реализация замены 8 с +7 и наоборот, но работает она не понятно для меня. Хотелось бы видеть номера в приятном глазу виде и иметь поиск без ввода пробелов, скобок, дефисов.
Спасибо!

Ошибка при добавлении пользователя

Добрый день.
У меня во время использования начала появляться ошибка при попытках добавить пользователя "руками". Всплывает два сообщения: на зеленом фоне "added (ID 0)" и сразу другое на красном "Invalid Identifier". При этом пользователи из AD загружаются и обновляются без проблем. Проблема в ручном добавлении. Скорее всего это началось после того, как я вернулся к старой точке восстановления на виртуальной машине, на которой установлен веб сервис.
Как я понял, сервис пытается создать новую запись в базе данных с ID = 0, но SQL это сделать не позволяет.
Что я делал для устранения ошибки: Создавал новую базу, как руками, так и через "install.php", создавал нового пользователя для БД, вручную переделывал ID одного из действующих адресатов на ID=0. Ничего не помогло. Подскажите, куда копать?
image

несколько каталогов АД

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

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.