Ejemplo n.º 1
0
	public static function getCompanyNameLdapFilter()
		{
			$bookmark_name=LDAP::escapeFilterValue($GLOBALS['BOOKMARK_NAME']);
			$bookmark_attr=$GLOBALS['bookmark_attr'];

			if(($bookmark_name=="*") || ( (@$_POST['form_sent']) && (@!$GLOBALS['only_bookmark']) ) )
				{

				foreach($GLOBALS['BOOKMARK_NAMES'] AS $key=>$value)
					{		
					$bookmark_names=LDAP::escapeFilterValue(array_keys($value));		

					if($GLOBALS['BOOKMARK_NAME_EXACT_FIT'][$bookmark_attr])
						$filters[]="|(".$key."=".implode(")(".$key."=", $bookmark_names).")";
					else
						{
						$filter="|(".$key."=*".implode("*)(".$key."=*", $bookmark_names)."*)";
						$filters[]=str_replace("***", "*", $filter);
						}
					}
				$filter="(&(".implode(")(", $filters)."))";
				}
			else
				{
				if($GLOBALS['BOOKMARK_NAME_EXACT_FIT'][$bookmark_attr])
					$filter="(".$bookmark_attr."=".$bookmark_name.")";
				else
					$filter="(".$bookmark_attr."=*".$bookmark_name."*)";
				}

		//echo $filter;
		return $filter;
		}
Ejemplo n.º 2
0
<form class="heads" method="POST" action="<?php echo $_SERVER['PHP_SELF'] ?>">
<?php
//Получаем переменные для сортировки
@$_GET['sortcolumn']=($_GET['sortcolumn'])?$_GET['sortcolumn']:"ФИО";
@$_GET['sorttype']=($_GET['sorttype'])?$_GET['sorttype']:"ASC";
?>
<div class="heads">
<?php
if($BLOCK_VIS[$menu_marker]['birthdays'])
	include("./libs/birth.php");
if($BLOCK_VIS[$menu_marker]['search'])
	include("./libs/search.php");
if($BLOCK_VIS[$menu_marker]['profile'])	
	include("./libs/profile.php");
if($BLOCK_VIS[$menu_marker]['fast_move'])
	{
	echo"<br/>";
	Alphabet::printGeneralLetters(); //Печатаем буквы алфавита, для быстрого перехода на сотрудников
	}
?>
</div>
</form>
<?php
$ldap=new LDAP($LDAPServer, $LDAPUser, $LDAPPassword); //Соединяемся с сервером

// Делаем фильтр для выборки сотрудников нужных компаний
//-------------------------------------------------------------------------------------------------------------
$CompanyNameLdapFilter=Application::getCompanyNameLdapFilter();
//-------------------------------------------------------------------------------------------------------------
Ejemplo n.º 3
0
	if($GLOBALS['XMPP_ENABLE'] && $GLOBALS['XMPP_MESSAGE_LISTS_ENABLE'] && !empty($_COOKIE['dn']))	
		echo Application::getCollTitle("");
	if($FAVOURITE_CONTACTS && $_COOKIE['dn'])
		echo Application::getCollTitle("");

	if(empty($_COOKIE['dn']) && $ENABLE_DANGEROUS_AUTH)
		echo Application::getCollTitle();
	//-------------------------------------------------------------------------------------------------------------
	

	$FavouriteDNs=$ldap->getAttrValue($_COOKIE['dn'], $LDAP_FAVOURITE_USER_FIELD);

	//Выводим пользователей, которые есть в избраном
	if($GLOBALS['FAVOURITE_CONTACTS'] && is_array($FavouriteDNs) && !empty($_COOKIE['dn']))
		{
		$Filter="(&(".$LDAP_CN_FIELD."=*)".$DIS_USERS_COND."(|(".$LDAP_DISTINGUISHEDNAME_FIELD."=".implode(")(".$LDAP_DISTINGUISHEDNAME_FIELD."=", LDAP::escapeFilterValue($FavouriteDNs)).")))";
		//echo "$Filter";
		$Favourites=$ldap->getArray($OU, $Filter, $LdapListAttrs);

		if(is_array($Favourites))
			{
			$row=0;
			foreach($Favourites[$LDAP_DISTINGUISHEDNAME_FIELD] AS $key=>$value)
				{	
				$Vars['row_css']=($row%2) ? "even favourite" : "odd favourite";
				$Vars['current_login']=$Login;
				$Vars['display_name']=$DisplayName;
				$Vars['ldap_conection']=$ldap;
				$Vars['favourite_dns']=$FavouriteDNs;
				$Vars['data_parent_id']=true;
				$Vars['id']=false;
Ejemplo n.º 4
0
    } else {
        echo Staff::makeNameUrlFromDn($ManDN);
    }
    echo "</div>";
}
if (isset($Manager)) {
    echo $Manager;
}
echo "</td>";
echo "</tr>";
echo "<tr>";
echo "<td colspan='2'>";
echo "<div class=\"staff\" id=\"people\"><h6>Подчиненные:</h6></div>";
$table = new LDAPTable($LDAPServer, $LDAPUser, $LDAPPassword, false, false);
if ($USE_DISPLAY_NAME) {
    $table->addColumn($DISPLAY_NAME_FIELD . ", distinguishedname", "ФИО", true, 0, false, "ad_def_full_name");
} else {
    $table->addColumn("distinguishedname", "ФИО", true, 0, false, "ad_def_full_name");
}
$table->addColumn($LDAP_INTERNAL_PHONE_FIELD, $L->l('intrenal_phone'), true);
$table->addColumn("title", "Должность");
$table->addPregReplace("/^(.*)\$/eu", "Staff::makeNameUrlFromDn('\\1')", "ФИО");
$table->addPregReplace("/^\\.\\./u", "", "Должность");
$table->addPregReplace("/^\\./u", "", "Должность");
$table->addPregReplace("/^(.*)\$/eu", "Staff::makeInternalPhone('\\1')", $L->l('intrenal_phone'));
echo "<div id=\"people_table\">";
$table->printTable($OU, "(&(company=*)(manager=" . LDAP::escapeFilterValue($dn) . ")" . $DIS_USERS_COND . ")");
echo "</div>";
echo "</td>";
echo "</tr>";
echo "</table>";
Ejemplo n.º 5
0
<form class="heads" method="POST" action="<?php echo $_SERVER['PHP_SELF'] ?>">
<?php
@$_GET['sortcolumn']=($_GET['sortcolumn'])?$_GET['sortcolumn']:"ФИО";
@$_GET['sorttype']=($_GET['sorttype'])?$_GET['sorttype']:"ASC";
?>
<div class="heads">
<?php
if($BLOCK_VIS[$menu_marker]['birthdays'])
	include("./libs/birth.php");
if($BLOCK_VIS[$menu_marker]['search'])	
	include("./libs/search.php");
if($BLOCK_VIS[$menu_marker]['profile'])
	include("./libs/profile.php");
?>
</div>
<?php
//Печатаем контейнер в который JS будет класть ссылки для быстрого перехода на отделы
if($BLOCK_VIS[$menu_marker]['fast_move'])
{
	echo "<br/>
	<span id=\"ALPH_ITEM_IN_LINE\" class=\"h\">".$DEP_ITEM_IN_COL."</span>
	<fieldset id=\"move_to_dep\">
		<legend>".$L->l('fast_move_to_department')."</legend>
	</fieldset>
	";
}
?>
</form>
<?php
//=================================================================================================================
Ejemplo n.º 6
0
 }
 if (is_array($_POST['resipients'])) {
     foreach ($_POST['resipients'] as $key => $value) {
         $conn->message(current(explode("@", $value)) . "@" . $XMPP_ACCOUNT_END, $message);
     }
 }
 if (is_array($_POST['groups'])) {
     $Filter = "(|(" . $LDAP_DISTINGUISHEDNAME_FIELD . "=" . implode(")(" . $LDAP_DISTINGUISHEDNAME_FIELD . "=", LDAP::escapeFilterValue($_POST['groups'])) . "))";
     //echo $Filter;
     $Entries = $ldap->ldap_search($OU, $Filter, array($LDAP_MEMBER_FIELD));
     for ($i = 0; $i < $Entries['count']; $i++) {
         if ($i == 0) {
             $Filter = "(|";
         }
         for ($j = 0; $j < $Entries[$i][$LDAP_MEMBER_FIELD]['count']; $j++) {
             $Filter .= "(" . $LDAP_DISTINGUISHEDNAME_FIELD . "=" . LDAP::escapeFilterValue($Entries[$i][$LDAP_MEMBER_FIELD][$j]) . ")";
         }
     }
     if ($j > 0) {
         $Filter .= ")";
         $Entries = $ldap->ldap_search($OU, $Filter, array($LDAP_USERPRINCIPALNAME_FIELD));
         for ($i = 0; $i < $Entries['count']; $i++) {
             $conn->message(current(explode("@", $Entries[$i][$LDAP_USERPRINCIPALNAME_FIELD][0])) . "@" . $XMPP_ACCOUNT_END, $message);
         }
     }
 }
 $conn->disconnect();
 if (is_array($_COOKIE['xmpp_messages_list'])) {
     if (!in_array($_POST['message'], $_COOKIE['xmpp_messages_list'])) {
         $index = sizeof($_COOKIE['xmpp_messages_list']);
         if ($index >= $XMPP_NUM_OF_LAST_MESSAGES_PER_USER) {