public static function printUserTableRow($Staff, $key, $Vars) { $StDate=$Staff[$GLOBALS['LDAP_ST_DATE_VACATION_FIELD']][$key]; $EndDate=$Staff[$GLOBALS['LDAP_END_DATE_VACATION_FIELD']][$key]; $VacationState=self::getVacationState($StDate, $EndDate); // проверка: в каком состоянии отпуск? ($VacationState===0) ? $tag="del" : $tag="span"; // в зависимости от этого применяем разные стили // Строки таблицы //------------------------------------------------------------------------------------------------------------- $data_parent_id=($Vars['data_parent_id']) ? "data-parent-id=".md5($Staff[$GLOBALS['LDAP_DISTINGUISHEDNAME_FIELD']][$key]) : ''; $id=($Vars['id']) ? "id=".md5($Staff[$GLOBALS['LDAP_DISTINGUISHEDNAME_FIELD']][$key]) : ''; echo"<tr class=\"".$Vars['row_css']."\" ".$id." ".$data_parent_id.">"; echo "<td>"; self::printVacOnCurrentPage($StDate, $EndDate); if($GLOBALS['THUMBNAIL_PHOTO_VIS']) echo self::makeAvatar($Staff[$GLOBALS['LDAP_DISTINGUISHEDNAME_FIELD']][$key]); if( (self::checkInVacation($StDate, $EndDate) && $GLOBALS['BIND_DEPUTY_AND_VACATION']) || !$GLOBALS['BIND_DEPUTY_AND_VACATION']) // self::printDeputyInList($Staff[$GLOBALS['LDAP_DEPUTY_FIELD']][$key], $Vars['ldap_conection']->getValue($Staff[$GLOBALS['LDAP_DEPUTY_FIELD']][$key], $GLOBALS['DISPLAY_NAME_FIELD'])); if(empty($Vars['search_str'])) //Если не велся поиск, то не подсвечивавем результаты echo self::makeNameUrlFromDn($Staff[$GLOBALS['LDAP_DISTINGUISHEDNAME_FIELD']][$key], $Staff[$Vars['display_name']][$key]); //Делаем ссылку на полную информацию о сотруднике else echo self::highlightSearchResult(self::makeNameUrlFromDn($Staff[$GLOBALS['LDAP_DISTINGUISHEDNAME_FIELD']][$key], $Staff[$Vars['display_name']][$key]), $Vars['search_str']); //Делаем ссылку на полную информацию о сотруднике echo "</td>"; if(empty($Vars['search_str'])) //Если не велся поиск, то не подсвечивавем результаты echo "<td>".self::makeTitle($Staff[$GLOBALS['LDAP_TITLE_FIELD']][$key])."</td>"; //Выводим должность else echo "<td>".self::highlightSearchResult(self::makeTitle($Staff[$GLOBALS['LDAP_TITLE_FIELD']][$key]), $Vars['search_str'])."</td>"; //Выводим должность if($Vars['locked_date']) echo "<td>".Time::modifyDateFormat(self::makeTitle($Staff[$GLOBALS['LDAP_CHANGED_DATE_FIELD']][$key]), $GLOBALS['LDAP_CHANGED_DATE_FORMAT'], "yyyy-mm-dd")."</td>"; //Выводим должность if(empty($Vars['search_str'])) //Если не велся поиск, то не подсвечивавем результаты echo "<td>".self::makeMailUrl($Staff[$GLOBALS['LDAP_MAIL_FIELD']][$key])."</td>"; //Выводим почту else echo "<td>".self::highlightSearchResult(self::makeMailUrl($Staff[$GLOBALS['LDAP_MAIL_FIELD']][$key]), $Vars['search_str'])."</td>"; if(!$GLOBALS['HIDE_ROOM_NUMBER']) { if(empty($Vars['search_str'])) //Если не велся поиск, то не подсвечивавем результаты echo "<td>".self::makePlainText($Staff[$GLOBALS['LDAP_ROOM_NUMBER_FIELD']][$key])."</td>"; //Выводим сотовый else echo "<td>".self::highlightSearchResult(self::makePlainText($Staff[$GLOBALS['LDAP_ROOM_NUMBER_FIELD']][$key]), $Vars['search_str'])."</td>"; //Делаем ссылку на полную информацию о сотруднике } echo "<td><".$tag.">".self::makeInternalPhone($Staff[$GLOBALS['LDAP_INTERNAL_PHONE_FIELD']][$key])."</".$tag."></td>"; //Выводим внутренний if(!$GLOBALS['HIDE_CITY_PHONE_FIELD']) { echo "<td><".$tag.">".self::makeCityPhone($Staff[$GLOBALS['LDAP_CITY_PHONE_FIELD']][$key])."</".$tag."></td>"; //Выводим городской } if(!$GLOBALS['HIDE_CELL_PHONE_FIELD']) { if(empty($Vars['search_str'])) //Если не велся поиск, то не подсвечивавем результаты echo "<td>".self::makeCellPhone($Staff[$GLOBALS['LDAP_CELL_PHONE_FIELD']][$key])."</td>"; //Выводим сотовый else echo "<td>".self::highlightSearchResult(self::makeCellPhone($Staff[$GLOBALS['LDAP_CELL_PHONE_FIELD']][$key]), $Vars['search_str'])."</td>"; //Делаем ссылку на полную информацию о сотруднике } if(self::showComputerName($Vars['current_login'])) //Если сотрудник является администратором справочника { if(empty($Vars['search_str'])) //Если не велся поиск, то не подсвечивавем результаты echo "<td>".self::makeComputerName($Staff[$GLOBALS['LDAP_COMPUTER_FIELD']][$key])."</td>"; //Выводим имя компьютера else echo "<td>".self::highlightSearchResult(self::makeComputerName($Staff[$GLOBALS['LDAP_COMPUTER_FIELD']][$key]), $Vars['search_str'])."</td>"; //Выводим имя компьютера } if( @$Staff[$GLOBALS['LDAP_CREATED_DATE_FIELD']][$key] ) echo "<td>".Time::getHandyDateOfDMYHI($Staff[$GLOBALS['LDAP_CREATED_DATE_FIELD']][$key], $GLOBALS['LDAP_CREATED_DATE_FORMAT'])."</td>"; //Выводим дату принятия на работу if($GLOBALS['XMPP_ENABLE'] && $GLOBALS['XMPP_MESSAGE_LISTS_ENABLE'] && $_COOKIE['dn']) { if(is_array($_COOKIE['xmpp_list']) && in_array($Staff[$GLOBALS['LDAP_USERPRINCIPALNAME_FIELD']][$key], $_COOKIE['xmpp_list'])) $xmpp_link_class="in_xmpp_list"; else $xmpp_link_class='out_xmpp_list'; echo "<td> <a href=\"#\" class=\"add_xmpp_list ".$xmpp_link_class." in_link\" title=\"".$GLOBALS['L']->l("add_contact_to_xmpp_list")."\" data-login="******"></a> </td>"; //Выводим иконку добавления сотрудника в группу рассылки } if($GLOBALS['FAVOURITE_CONTACTS'] && $_COOKIE['dn']) { if(is_array($Vars['favourite_dns'])) $favourite_link_class=(in_array($Staff[$GLOBALS['LDAP_DISTINGUISHEDNAME_FIELD']][$key], $Vars['favourite_dns'])) ? 'fav_true' : 'fav_false'; else $favourite_link_class='fav_false'; echo "<td> <a href=\"javascript: F();\" class=\"favourite ".$favourite_link_class." in_link\" title=\"Добавить контакт в избранные.\"></a> <div class=\"hidden\"> <div class=\"favourite_user_dn\">".$Staff[$GLOBALS['LDAP_DISTINGUISHEDNAME_FIELD']][$key]."</div> </div> </td>"; } if(empty($_COOKIE['dn']) && $GLOBALS['ENABLE_DANGEROUS_AUTH']) { echo "<td><div><a href=\"\" class=\"is_it_you window in_link\">Это я!</a></div><div class=\"window hidden\">".self::getAuthForm(md5($Staff[$GLOBALS['LDAP_DISTINGUISHEDNAME_FIELD']][$key]), $Staff[$GLOBALS['LDAP_DISTINGUISHEDNAME_FIELD']][$key])."</div></td>"; } echo"</tr>"; //------------------------------------------------------------------------------------------------------------- }
public static function printVacOnCurrentPage($StDate, $EndDate) { $VacationState = self::getVacationState($StDate, $EndDate); if (self::checkShowVacOnCurrentPage($StDate, $EndDate)) { if ($VacationState === 0) { $class = 'alarm'; $vac_title = $GLOBALS['L']->l("in_vacation_until"); $vac_period = Time::getHandyDateOfDMYHI($EndDate, $GLOBALS['BIRTH_DATE_FORMAT']); if ($GLOBALS['menu_marker'] == 'si_employeeview') { $vac_title = "<h6 class=\"alarm\">" . $GLOBALS['L']->l("in_vacation") . ":</h6>"; $vac_period = Time::getHandyDateOfDMYHI($StDate, $GLOBALS['BIRTH_DATE_FORMAT']) . " — " . Time::getHandyDateOfDMYHI($EndDate, $GLOBALS['BIRTH_DATE_FORMAT']); } } if ($VacationState > 0) { $class = 'next_vac'; $vac_title = "Ближайший отпуск: "; $vac_period = Time::getHandyDateOfDMYHI($StDate, $GLOBALS['BIRTH_DATE_FORMAT']) . " — " . Time::getHandyDateOfDMYHI($EndDate, $GLOBALS['BIRTH_DATE_FORMAT']); if ($GLOBALS['menu_marker'] == 'si_employeeview') { $vac_title = "<h6 class=\"" . $class . "\">" . $vac_title . "</h6>"; } } if ($VacationState < 0) { $class = 'prev_vac'; $vac_title = "Прошедший отпуск: "; $vac_period = Time::getHandyDateOfDMYHI($StDate, $GLOBALS['BIRTH_DATE_FORMAT']) . " — " . Time::getHandyDateOfDMYHI($EndDate, $GLOBALS['BIRTH_DATE_FORMAT']); if ($GLOBALS['menu_marker'] == 'si_employeeview') { $vac_title = "<h6 class=\"" . $class . "\">" . $vac_title . "</h6>"; } } if ($GLOBALS['menu_marker'] == 'si_alph_staff_list' || $GLOBALS['menu_marker'] == 'si_dep_staff_list' || $GLOBALS['menu_marker'] == 'si_stafflist') { echo "<span class=\"" . $class . "\">" . $vac_title . $vac_period . "</span>"; } if ($GLOBALS['menu_marker'] == 'si_employeeview') { echo "<div class=\"birthday\">" . $vac_title . $vac_period . "</div>"; } } }