Задача № 40 439 от 15.08.2016 - Уведомление о выполнении: Обновление до LDAP


Серебреников => Все сделал в расширении. Спасибо!


РОЛЬ: _ИМЦ_LDAP_ВНЕШНИЙПОЛЬЗОВАТЕЛЬ

ЧТЕНИЕ КОНСТАНТЫ, ПРОСМОТР ОБЩЕЙ ФОРМЫ,


ОБЩИЙ МОДУЛЬ: _ИМЦ_LDAP_СЕРВЕРНЫЕПРОЦЕДУРЫИФУНКЦИИ


V - СЕРВЕР, ВЫЗОВ СЕРВЕРА


////////////////////////////////////////////////////////////////////////////////////////////////////
// ЭКСПОРТНЫЕ ПРОЦЕДУРЫ И ФУНКЦИИ

//ВЫПОЛНЯЕТ РЕГИСТРАЦИЮ ПОЛЬЗОВАТЕЛЯ LDAP В СИСТЕМЕ
//
//ВХОДНЫЕ ПАРАМЕТРЫ:
// - ЛОГИН, СТРОКА. ЛОГИН ПОЛЬЗОВАТЕЛЯ
// - ПАРОЛЬ, СТРОКА. ПАРОЛЬ ПОЛЬЗОВАТЕЛЯ
// - ВЫПОЛНЕНОУСПЕШНО, БУЛЕВО. ПРИЗНАК УСПЕШНОГО ЗАВЕРШЕНИЯ

ПРОЦЕДУРА ЗАРЕГИСТРИРОВАТЬПОЛЬЗОВАТЕЛЯLDAP(ЛОГИН, ПАРОЛЬ, ВЫПОЛНЕНОУСПЕШНО, ТЕКСТОШИБКИ = "") ЭКСПОРТ
 
 ВЫПОЛНЕНОУСПЕШНО = ЛОЖЬ;
 
 ЕСЛИ НЕ ЗНАЧЕНИЕЗАПОЛНЕНО(ЛОГИН) ТОГДА
  ТЕКСТОШИБКИ = "ПОЛЕ ""ЛОГИН"" НЕ ЗАПОЛНЕНО!";
  ВОЗВРАТ;
 КОНЕЦЕСЛИ;
 
 ПОПЫТКА
  ПОЛЬЗОВАТЕЛЬЛДАП = ПОЛЬЗОВАТЕЛИ.НАЙТИПОИМЕНИ(ЛОГИН);
  
  ЕСЛИ ПОЛЬЗОВАТЕЛЬЛДАП = НЕОПРЕДЕЛЕНО ТОГДА
   
   ВЫПОЛНЕНОУСПЕШНО = СОЗДАТЬПОЛЬЗОВАТЕЛЯЛДАП(ЛОГИН, ПАРОЛЬ, ТЕКСТОШИБКИ);
   
  ИНАЧЕ 
   ЕСЛИ ЗНАЧЕНИЕЗАПОЛНЕНО(ПОЛЬЗОВАТЕЛЬЛДАП) ТОГДА
    ПОЛЬЗОВАТЕЛЬОБЪЕКТЛДАП = ПОЛЬЗОВАТЕЛЬЛДАП.ПОЛУЧИТЬОБЪЕКТ();

    ПОЛЬЗОВАТЕЛЬОБЪЕКТЛДАП.НЕДЕЙСТВИТЕЛЕН = ЛОЖЬ;
    ПОЛЬЗОВАТЕЛЬОБЪЕКТЛДАП.ПОМЕТКАУДАЛЕНИЯ = ЛОЖЬ;
    ПОЛЬЗОВАТЕЛЬОБЪЕКТЛДАП.ЗАПИСАТЬ();
    
    ПОЛЬЗОВАТЕЛЬИБ = ПОЛЬЗОВАТЕЛИИНФОРМАЦИОННОЙБАЗЫ.НАЙТИПОИМЕНИ(ЛОГИН);
    ЕСЛИ ПОЛЬЗОВАТЕЛЬИБ = НЕОПРЕДЕЛЕНО ТОГДА
     ТЕКСТОШИБКИ = "ПРОИЗОШЛА ОШИБКА ПРИ ОБНОВЛЕНИИ ДАННЫХ ПОЛЬЗОВАТЕЛЯ: ПОЛЬЗОВАТЕЛЬ ИБ НЕ НАЙДЕН.";
     ВОЗВРАТ;
    КОНЕЦЕСЛИ;
    
    ПОЛЬЗОВАТЕЛЬИБ.ПОКАЗЫВАТЬВСПИСКЕВЫБОРА = ЛОЖЬ;
    ПОЛЬЗОВАТЕЛЬИБ.ПАРОЛЬ = ПАРОЛЬ;
    ПОЛЬЗОВАТЕЛЬИБ.АУТЕНТИФИКАЦИЯСТАНДАРТНАЯ = ИСТИНА;
    ЕСЛИ НЕ ПОЛЬЗОВАТЕЛЬИБ.РОЛИ.СОДЕРЖИТ(МЕТАДАННЫЕ.РОЛИ._ИМЦ_LDAP_ВНЕШНИЙПОЛЬЗОВАТЕЛЬ) ТОГДА
     ПОЛЬЗОВАТЕЛЬИБ.РОЛИ.ДОБАВИТЬ(МЕТАДАННЫЕ.РОЛИ._ИМЦ_LDAP_ВНЕШНИЙПОЛЬЗОВАТЕЛЬ);
    КОНЕЦЕСЛИ;
    
    ПОЛЬЗОВАТЕЛЬИБ.ЗАПИСАТЬ();
    ВЫПОЛНЕНОУСПЕШНО = ИСТИНА;
   КОНЕЦЕСЛИ;
  КОНЕЦЕСЛИ;
  
 ИСКЛЮЧЕНИЕ
  ТЕКСТОШИБКИ = ОПИСАНИЕОШИБКИ();
  ВОЗВРАТ;
 КОНЕЦПОПЫТКИ;
 

КОНЕЦПРОЦЕДУРЫ

ФУНКЦИЯ СОЗДАТЬПОЛЬЗОВАТЕЛЯЛДАП(ЛОГИН, ПАРОЛЬ, ТЕКСТОШИБКИ) ЭКСПОРТ
 
 ПОПЫТКА
  СВОЙСТВАПОЛЬЗОВАТЕЛЯ = ПОЛЬЗОВАТЕЛИ.НОВОЕОПИСАНИЕПОЛЬЗОВАТЕЛЯИБ();
  
  СВОЙСТВАПОЛЬЗОВАТЕЛЯ.ИМЯ = ЛОГИН;
  СВОЙСТВАПОЛЬЗОВАТЕЛЯ.ПОЛНОЕИМЯ = ЛОГИН;
  СВОЙСТВАПОЛЬЗОВАТЕЛЯ.ПАРОЛЬ = ПАРОЛЬ;
  СВОЙСТВАПОЛЬЗОВАТЕЛЯ.АУТЕНТИФИКАЦИЯСТАНДАРТНАЯ = ИСТИНА;
  
  СВОЙСТВАПОЛЬЗОВАТЕЛЯ.РОЛИ = НОВЫЙ МАССИВ;
  СВОЙСТВАПОЛЬЗОВАТЕЛЯ.РОЛИ.ДОБАВИТЬ(МЕТАДАННЫЕ.РОЛИ._ИМЦ_LDAP_ВНЕШНИЙПОЛЬЗОВАТЕЛЬ.ИМЯ);
  СВОЙСТВАПОЛЬЗОВАТЕЛЯ.ВСТАВИТЬ("ДЕЙСТВИЕ", "ЗАПИСАТЬ");
  
  МПОЛЬЗОВАТЕЛЬ = СПРАВОЧНИКИ.ПОЛЬЗОВАТЕЛИ.СОЗДАТЬЭЛЕМЕНТ();
  МПОЛЬЗОВАТЕЛЬ.НАИМЕНОВАНИЕ = ЛОГИН;
  МПОЛЬЗОВАТЕЛЬ.НЕДЕЙСТВИТЕЛЕН = ЛОЖЬ;
  
  МПОЛЬЗОВАТЕЛЬ.ДОПОЛНИТЕЛЬНЫЕСВОЙСТВА.ВСТАВИТЬ("ОПИСАНИЕПОЛЬЗОВАТЕЛЯИБ", СВОЙСТВАПОЛЬЗОВАТЕЛЯ);
  МПОЛЬЗОВАТЕЛЬ.ЗАПИСАТЬ();
  
  ПОЛЬЗОВАТЕЛЬИБ = ПОЛЬЗОВАТЕЛИИНФОРМАЦИОННОЙБАЗЫ.НАЙТИПОУНИКАЛЬНОМУИДЕНТИФИКАТОРУ(МПОЛЬЗОВАТЕЛЬ.ИДЕНТИФИКАТОРПОЛЬЗОВАТЕЛЯИБ);
  ЕСЛИ НЕ ПОЛЬЗОВАТЕЛЬИБ.РОЛИ.СОДЕРЖИТ(МЕТАДАННЫЕ.РОЛИ._ИМЦ_LDAP_ВНЕШНИЙПОЛЬЗОВАТЕЛЬ) ТОГДА
   ПОЛЬЗОВАТЕЛЬИБ.РОЛИ.ДОБАВИТЬ(МЕТАДАННЫЕ.РОЛИ._ИМЦ_LDAP_ВНЕШНИЙПОЛЬЗОВАТЕЛЬ);
  КОНЕЦЕСЛИ;
  ПОЛЬЗОВАТЕЛЬИБ.ЗАПИСАТЬ();
  
 ИСКЛЮЧЕНИЕ
  ТЕКСТОШИБКИ = ОПИСАНИЕОШИБКИ();
  ВОЗВРАТ ЛОЖЬ;
 КОНЕЦПОПЫТКИ;
 
 ВОЗВРАТ ИСТИНА;
КОНЕЦФУНКЦИИ


ОБЩАЯ ФОРМА _ИМЦ_LDAP_РАБОЧИЙСТОЛ

СИНОНИМ РАБОЧИЙ СТОЛ ПОЛЬЗОВАТЕЛЯ LDAP

РЕКВИЗИТ ФОРМЫ ТЕКСТРАБОЧЕГОСТОЛА (СТРОКА)


МОДУЛЬ ФОРМЫ



&НАСЕРВЕРЕ
ПРОЦЕДУРА ПРИСОЗДАНИИНАСЕРВЕРЕ(ОТКАЗ, СТАНДАРТНАЯОБРАБОТКА)
 ТЕКСТРАБОЧЕГОСТОЛА = КОНСТАНТЫ._ИМЦ_LDAP_ТЕКСТПРИВЕТСТВИЯ.ПОЛУЧИТЬ();
КОНЕЦПРОЦЕДУРЫ


&НАКЛИЕНТЕ
ПРОЦЕДУРА ТЕКСТРАБОЧЕГОСТОЛАПРИНАЖАТИИ(ЭЛЕМЕНТ, ДАННЫЕСОБЫТИЯ, СТАНДАРТНАЯОБРАБОТКА)
 ЕСЛИ ДАННЫЕСОБЫТИЯ.HREF <> НЕОПРЕДЕЛЕНО ТОГДА
  СТАНДАРТНАЯОБРАБОТКА = ЛОЖЬ;
  ЕСЛИ НАЙТИ(ДАННЫЕСОБЫТИЯ.HREF, "E1CIB") > 0 ТОГДА
   ПЕРЕЙТИПОНАВИГАЦИОННОЙССЫЛКЕ(ДАННЫЕСОБЫТИЯ.HREF);
  ИНАЧЕ
   ЗАПУСТИТЬПРИЛОЖЕНИЕ(ДАННЫЕСОБЫТИЯ.HREF);
  КОНЕЦЕСЛИ;
 КОНЕЦЕСЛИ;
КОНЕЦПРОЦЕДУРЫ



КОНСТАНТА _ИМЦ_LDAP_ТЕКСТПРИВЕТСТВИЯ - СТРОКА


СОДЕРЖИМОЕ:


<HTML>
    <HEAD>
        <META HTTP-EQUIV="CONTENT-TYPE" CONTENT="TEXT/HTML; CHARSET=UTF8"/>
        <LINK HREF="HTTP://SSAU.RU/CSS/SU_STYLE.CSS" REL="STYLESHEET" TYPE="TEXT/CSS">
        <META CONTENT="HTTP://WWW.SSAU.RU/IMG/SU/LOGO.PNG" PROPERTY="OG:IMAGE">
        <TITLE>САМАРСКИЙ УНИВЕРСИТЕТ</TITLE>
    </HEAD>
    <BODY>
        <DIV CLASS="NAMESU">
            <DIV CLASS="LOGO">
                <BR>
                <IMG ONCONTEXTMENU="RETURN FALSE;" ALT="САМАРСКИЙ УНИВЕРСИТЕТ ИМЕНИ АК. С.П. КОРОЛЕВА" SRC="HTTP://WWW.SSAU.RU/IMG/SU/LOGO.PNG"/>
            </DIV>
            <SPAN>ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ АВТОНОМНОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ОБРАЗОВАНИЯ</SPAN>
            «САМАРСКИЙ НАЦИОНАЛЬНЫЙ ИССЛЕДОВАТЕЛЬСКИЙ УНИВЕРСИТЕТ ИМЕНИ АКАДЕМИКА С.П. КОРОЛЕВА»
        </DIV>   
        <SECTION CLASS="MAIN-NEWS">
            <BR>
            <P ALIGN="CENTER"><B><FONT SIZE=5PX>УВАЖАЕМЫЙ <B>ПОЛЬЗОВАТЕЛЬ</B>!</P>
            <P ALIGN="CENTER">ДОБРО ПОЖАЛОВАТЬ В МОДУЛЬ "БИБЛИОТЕКА" СИСТЕМЫ УПРАВЛЕНИЯ УНИВЕРСИТЕТОМ!</FONT></B></P>
            <BR>
            <P ALIGN="CENTER">ЕСЛИ ВЫ ЧИТАЕТЕ ДАННОЕ СООБЩЕНИЕ, ЗНАЧИТ ДЛЯ ВАС НЕ НАСТРОЕНЫ ПРАВА ДОСТУПА К СИСТЕМЕ.</P>
            <P ALIGN="CENTER">ЧТОБЫ СКОРЕЙШИМ ОБРАЗОМ РАЗРЕШИТЬ ЭТУ НЕСПРАВЕДЛИВОСТЬ, ПОЖАЛУЙСТА, ОБРАТИТЕСЬ В <A HREF="HTTP://SSAU.RU/IT/UIT/">УПРАВЛЕНИЕ ИНФОРМАТИЗАЦИИ И ТЕЛЕКОММУНИКАЦИЙ</A></P>
        </SECTION>               
    </BODY>
</HTML>





Новая - 15 августа 2016 г. 14:04:41 - Серебреников -