Initial commit.

This commit is contained in:
Konstantin Shalygin 2016-06-14 15:17:51 +06:00
parent 3cbec5a2cd
commit f4a731b35b
No known key found for this signature in database
GPG key ID: DAB31F3D3E5BCB69
7 changed files with 243 additions and 2 deletions

84
thunderbird.php Normal file
View file

@ -0,0 +1,84 @@
<?php
// (c) 2015-2016, Konstantin Shalygin <k0ste@k0ste.ru>
require_once 'ldap.cfg.php';
require_once 'ldap.defaults.php';
require_once 'ldap.siga.php';
if(empty($_GET['user'])) {
exit('Error: user not present');
}
$link = ldap_connect($ldap_host, $ldap_port);
ldap_set_option($link, LDAP_OPT_PROTOCOL_VERSION, 3);
$ldap_bind = ldap_bind($link, $ldap_user, $ldap_password);
if(!$ldap_bind) {
$ldap_errno = ldap_errno($link);
$ldap_error = ldap_err2str($ldap_errno);
exit('Error (' . ldap_errno($link) . '): ' . $ldap_error . "\n");
}
$result_uid = ldap_search($link, $ldap_base, $ldap_filter);
$entry_uid = ldap_first_entry($link, $result_uid);
if($entry_uid == false) {
ldap_unbind($link);
exit('Error: uid not found <br>');
}
$info = ldap_get_entries($link, $result_uid);
if (isset($info[0]["telephonenumber"]) == false) {
$ldap_extention = '';
}
else {
$ldap_extention = ($info[0]["telephonenumber"][0]);
$ldap_extention = " exten. 1-$ldap_extention<br>";
}
if (isset($info[0]["telexnumber"]) == false) {
$ldap_icq = $icq_default;
}
else {
$ldap_icq = ($info[0]["telexnumber"][0]);
$ldap_icq = "ICQ: $ldap_icq";
}
if (isset($info[0]["pager"]) == false) {
$ldap_pager = '';
}
else {
$ldap_pager = ($info[0]["pager"][0]);
$ldap_pager = "+$ldap_pager<br>";
}
require_once 'ldap.vars.php';
$result_manager = ldap_search($link, $ldap_base_manager, $ldap_filter_manager);
$entry_manager = ldap_first_entry($link, $result_manager);
if($entry_manager == false) {
if($ldap_gid == $ldap_target_gid) {
$signature = getSignatureManager($siga_marketing, $siga_prefix, $ldap_givenname_exploded, $ldap_sn, $ldap_title, $siga_url, $telnumber_all, $ldap_extention, $ldap_pager, $ldap_icq, $siga_postfix);
}
else {
$signature = getSignatureAll($siga_prefix, $ldap_givenname_exploded, $ldap_sn, $ldap_title, $siga_url, $telnumber_all, $ldap_extention, $siga_postfix);
}
}
else {
$ldap_attributes = ldap_get_attributes($link, $entry_manager);
$counter = $ldap_attributes["count"];
if($counter < 1) {
$signature = getSignatureAll($siga_prefix, $ldap_givenname_exploded, $ldap_sn, $ldap_title, $siga_url, $telnumber_all, $ldap_extention, $siga_postfix);
}
else {
$signature = getSignatureManager($siga_marketing, $siga_prefix, $ldap_givenname_exploded, $ldap_sn, $ldap_title, $siga_url, $telnumber_manager, $ldap_extention, $ldap_pager, $ldap_icq, $siga_postfix);
}
}
ldap_unbind($link);
require_once 'ldap.settings.php';
?>