Задача:
Добавить почтовый веб-интерфейс Kerio в КП, да не просто добавить а интегрировать, и производить обмен информацией между системами.
Решение:
Решения я изначально видел два:
Первое, долгое и тернистое, НО в конечном итоге качественное и гибкое.
Интерфейс керио выполнен на PHP, загружаясь в браузер он обменивается с сервером по API используя Аякс, запросы выполняются в json'e.
С первого взгляда всё просто пишем в битриксе интерфейс используем уже готовый API для получения полноценного интерфейса Керио WebMail.
Но, во первых, для тех кто не видел код керио:
Кусок любого кода Kerio в студию!
Как видите здесь всё "понятно" и "просто" не правда ли?
PHP код выглядит так же, с зашифрованными названиями функций и переменных.
Увиденная картина уже вызывает отвращение к первому варианту, ведь это всё предстоит понять.
А теперь решение...
Второе, быстрое и незамысловатое, по пути которого я и пошел, НО меня не покидают смутные сомнения, не приду ли я в тупик.
В этом решении нам поможет библиотека jquery и естественно iframe.
Дальше буду описывать свои действия по мере выполнения, возможно кому-нибудь поможет это, так как я не нашел похожих тем, которые помогли бы мне, и надеюсь на адекватную критику и советы.
Поехали... 8)
Добавить почтовый веб-интерфейс Kerio в КП, да не просто добавить а интегрировать, и производить обмен информацией между системами.
Решение:
Решения я изначально видел два:
Первое, долгое и тернистое, НО в конечном итоге качественное и гибкое.
Интерфейс керио выполнен на PHP, загружаясь в браузер он обменивается с сервером по API используя Аякс, запросы выполняются в json'e.
С первого взгляда всё просто пишем в битриксе интерфейс используем уже готовый API для получения полноценного интерфейса Керио WebMail.
Но, во первых, для тех кто не видел код керио:
Кусок любого кода Kerio в студию!
| Код |
|---|
var x_265 = -1;
var x_8qq = null;
var x_8qr = 0;
var x_8qs = 0;
var x_8qt = null;
var x_8qu = true;
var x_8qv = x_8qd.x_8qf;
var x_8qw = 0;
function x_8qx() {
if (x_8qy && x_8qy.x_8qz)
return x_8qy.x_8qz.x_8r0();
return null;
}
function x_8r1() {
if ((0 >= x_8qr) || (x_8qs >= x_8qt.length))
return false;
var x_8r2 = x_8r3[x_8qt[x_8qs]['x_8r4']];
if (!x_8r2)
return false;
var x_8r5 = x_8qq[x_265];
x_8r5.x_8r6 = x_8r2[x_8qj.x_8qk];
x_8r5.x_41o = x_8r7;
var x_8r8 = x_8qx();
if (x_8r8)
x_8r8.x_5a5();
x_8r9();
return true;
}
function x_8ra() {
var x_8r8 = x_8qx();
if (x_8r8)
x_8r8.x_8rb();
return true;
}
|
PHP код выглядит так же, с зашифрованными названиями функций и переменных.
Увиденная картина уже вызывает отвращение к первому варианту, ведь это всё предстоит понять.
А теперь решение...
Второе, быстрое и незамысловатое, по пути которого я и пошел, НО меня не покидают смутные сомнения, не приду ли я в тупик.
В этом решении нам поможет библиотека jquery и естественно iframe.
Дальше буду описывать свои действия по мере выполнения, возможно кому-нибудь поможет это, так как я не нашел похожих тем, которые помогли бы мне, и надеюсь на адекватную критику и советы.
Поехали... 8)
Проще говоря я не могу простым парсингом вытягивать информацию из фрейма, мне не позволит это сделать браузер.
: