xmoonlight, нннну, такое себе решение, правда, больше похоже на задротство 80-го уровня. Если, например, убрать ul.subdirector, по схеме выйдет, что начальство само по себе и подчинённые сами по себе.
xmoonlight, ну, это ведь частный случай; всё это можно и ранее приведёнными библиотеками отрисовать. ЗЫ чёт с фамилии последнего коммиттера прямо в голосину... o)
Игорь Васильев, обычно всё это дело называется 'graph visualization', сиречь "визуализация графов". А линии между вершинами графа, что на рисунке из примера -- кривые Безье.
Артур Артур, пира, транка, с т. з. Астериска -- это по сути одно и то же. ЗЫ: хотя мне кажется, что проблема где-то на стыке настроек Outbound Routes и SIP Trunks.
Артур Артур, не во что. Единственное условие, чтобы такой расклад на одних префиксах сработал -- это если каждый офис сидит на собственном транке, иначе придётся огороды городить.
freshik312, все остальные диски стоит проверить таким же манером. Ну, и по совету т-ща Филипп неплохо бы попробовать восстановить права доступа к пользовательской папке.
Артур Артур, префикс определяет совпадение в начальных цифрах набранного номера. При вызове совпадающие цифры будут отброшены, а вызов перенаправлен в сооветствующий транк.
Игорь Гордеев, ясно-понятно. Судя по всему, именно в этом методе (и реализованных подобно ему) собака и порылась. Любой код, который не взаимодействует с UI напрямую, нужно выполнять в отдельных потоках.