Ассоциация ЭБНИТ    ИРБИС-корпорация    Вики-Ирбис    Online/CHM справка Ирбис   
Web Ирбис и Z-Ирбис :  ИРБИС Irbis
 
Скрыть Электронную библиотеку в режиме Гость
Пользователь: s.d.t-aelita@mail.ru (IP-адрес скрыт)
Дата: 25, June, 2019 10:22

Добрый день ! у меня вопрос можно ли скрыть электронную библиотеку в режиме ГОСТЬЯ? если да то как это сделать ! скрин прилагаю

Вложения: 8888.jpg (187.5KB)  
Re: Скрыть Электронную библиотеку в режиме Гость
Пользователь: SokV (IP-адрес скрыт)
Дата: 25, June, 2019 15:11

Если у вас хватит навыков для внесения правок в файл формата, то вы можете это сделать.

Нужно добавить условие в формат search_mnu.pft в том месте где происходит перебор баз данных и формируется список "Найдено в других БД".

В этом условии вы можете проверять, что если вход гостевой, и если база данных такая то, то не включать её в список.

Факт гостевого входа можно установить по значению виртуального поля v1002.

Re: Скрыть Электронную библиотеку в режиме Гость
Пользователь: s.d.t-aelita@mail.ru (IP-адрес скрыт)
Дата: 26, June, 2019 11:33

if &uf('+1R8')<>'' then
/* '<table class="advanced" border=0 cellpadding=0 cellspacing=2 bgcolor=#EAEAEA width=100%>',
'<table width=100% style="border:1px solid #99ccff;font-size:12px;margin-bottom:10px" cellspacing="5" cellpadding="5">',
'<TR>',
'<TD VALIGN=TOP>',
'&nbsp;<span style="color: blue; ">Найдено в других БД:</span>',
'</td>',
(if &uf('+5Tdbn_web_ft.mnu')<>'' then
if &uf('+1R6') = &uf('+5Tdbn_web_ft.mnu')
then
else
&uf('+1W9#',&uf('+3F',&uf('+5Tdbn_web_ft.mnu'),',0,','|',&uf('+1R3'),'|',&uf('+1R34'),&uf('+1R33'),'|',',')),
if val(&uf('+1R9'))>0 then
'<TD VALIGN=TOP>',
дальше я не поняла

Re: Скрыть Электронную библиотеку в режиме Гость
Пользователь: SokV (IP-адрес скрыт)
Дата: 26, June, 2019 13:11

Дальше несколько строк начинающихся с /* эти строки закомментированы, они игнорируются форматером.

А после закомментированных строк как раз интересующий блок, который и нужно обернуть в условие. Этот блок формирует html теги <span>, где каждый span является ссылкой на результаты поиска в другой БД.

Re: Скрыть Электронную библиотеку в режиме Гость
Пользователь: SokV (IP-адрес скрыт)
Дата: 26, June, 2019 13:15

Немного ошибся. В условие нужно оборачивать начиная с '<TD VALIGN=TOP>',

то есть весь (закомментированные строки опустил) следующий блок:

'<TD VALIGN=TOP>',

'<span style="color: blue; cursor: pointer; font: 10px;" onclick="new WebIrbisSystem(CGI_PATH).goPortionAtDatabase(',&Uf('+9F39'),&uf('+5Tdbn_web_ft.mnu'),&Uf('+9F39'),');">',
if &uf('+5Fdbn_web_ft.mnu')<>'' then &uf('+5Fdbn_web_ft.mnu') else &uf('+5Tdbn_web_ft.mnu') fi,
' (',&uf('+1R9'),')',
'</span>','</td>',

Re: Скрыть Электронную библиотеку в режиме Гость
Пользователь: s.d.t-aelita@mail.ru (IP-адрес скрыт)
Дата: 02, July, 2019 08:23

Добрый день! вопрос касательно электронной библиотеки у меня не получилось,,,, ничего не изменилось,, можете уточнить где и куда вставить этот код
может есть какое то другое ваше предложение?

Re: Скрыть Электронную библиотеку в режиме Гость
Пользователь: SokV (IP-адрес скрыт)
Дата: 02, July, 2019 11:01

Добрый день!

"где и куда вставить этот код"? Но я не давал вам конкретный код, только идею. И вы не пишете, что конкретно вы попытались поменять. Что вставить и в какое место.

Если я изменю под вас формат и дам вам его, я фактически ввяжусь в поддержку вашего Веб-ИРБИС. Чего мне не хотелось бы.

Мы не предполагаем возможность таких настроек как нечто типовое. И даже не вполне понимаем вашей задумки, для чего это делается. Может быть ваша задумка может повлечь необходимость ещё каких то изменений.

Поэтому, реализация задуманного это ваша ответственность.

Я готов отвечать на конкретные технические вопросы, и даже помогать писать вам формат самостоятельно, и писать для вас в качестве примера какие то кусочки формата. Но не готов сделать вам готовый формат и заниматься его поддержкой. Любые не типовые изменения требуют понимания, внимания и поддержки при дальнейшей жизни системы.

Подумайте, что произойдет при обновлении? Если поменяется этот формат? Или вы не будете обновляться. Или вы забудете, что у вас есть особые изменения формата, обновитесь, и ваши изменения пропадут. Или же вы или какой то специалист должен будет проанализировать, что поменялось при обновлении, и как перенести доработку в обновленную версию. Это серьезное дело.

И, кстати, изменение формата search_mnu.pft уже было сделано, одновременно с вашим вопросом. Я не знаю, было выпущено это обновление или нет. Там нет существенных изменений с точки зрения формата как программы, но все же.



Редактировано 3 раз. Последний раз 02.07.2019 11:25 пользователем SokV.

Re: Скрыть Электронную библиотеку в режиме Гость
Пользователь: s.d.t-aelita@mail.ru (IP-адрес скрыт)
Дата: 03, July, 2019 06:27

есть другие методы чтоб скрыть электронную библиотеку в режиме Гость?

Re: Скрыть Электронную библиотеку в режиме Гость
Пользователь: elkinaos (IP-адрес скрыт)
Дата: 03, July, 2019 07:44

Мы делали для гостя свой список доступных баз dbn2_web_ft_yar.mnu и вносили изменения в файл web_mnu_select_ft.pft
Имя файла записали в переменную
if v1002='GUEST' then &uf('+1w500#','dbn2_web_ft_yar.mnu') else &uf('+1w500#','dbn_web_ft.mnu') fi
И дальше по тексту обращение к файлу dbn_web_ft.mnu заменили на переменную.

Re: Скрыть Электронную библиотеку в режиме Гость
Пользователь: SokV (IP-адрес скрыт)
Дата: 03, July, 2019 10:03

s.d.t-aelita@mail.ru написал(а):
-------------------------------------------------------
> есть другие методы чтоб скрыть электронную
> библиотеку в режиме Гость?


Другие - это без языка форматирования? Насколько я знаю, нет.


elkinaos написал(а):
-------------------------------------------------------
> Мы делали для гостя свой список доступных баз
> dbn2_web_ft_yar.mnu и вносили изменения в файл
> web_mnu_select_ft.pft
> Имя файла записали в переменную
> if v1002='GUEST' then
> &uf('+1w500#','dbn2_web_ft_yar.mnu') else
> &uf('+1w500#','dbn_web_ft.mnu') fi
> И дальше по тексту обращение к файлу
> dbn_web_ft.mnu заменили на переменную.

Вот, хороший подход в плане гибкости. Один раз внести изменения в формат, при этом вводится дополнительная сущность - ещё один mnu файл. Зато в дальнейшем списками можно управлять через mnu файлы.

Внеся правки в web_mnu_select_ft.pft вы управляете списком баз данных, который попадает в переключатель баз данных (он не у всех может быть включен, показ/сокрытие переключателя управляется через ini файл).

А кроме этого в пользовательском интерфейсе после поиска появляются ссылки на другие базы данных. Вы можете увидеть это в изображении, прикрепленном к первому сообщению в данной теме.

Пользуясь этими ссылками гость может попасть в другие базы данных без переключателя.

Re: Скрыть Электронную библиотеку в режиме Гость
Пользователь: SokV (IP-адрес скрыт)
Дата: 03, July, 2019 10:09

Выясняется, что не одна библиотека хочет скрывать какие то базы от пользователя.

А какую цель вы преследуете? Цель в том, чтобы скрыть именно базу целиком, даже биб. описания? Или достаточно было бы не отдавать полные тексты? Или ещё что то?

По моему, есть средства для ограничения для доступа к полным текстам гостю. Для этого есть специальная служебная база, где задаются права.

Re: Скрыть Электронную библиотеку в режиме Гость
Пользователь: elkinaos (IP-адрес скрыт)
Дата: 03, July, 2019 10:45

SokV написал(а):
-------------------------------------------------------
> Выясняется, что не одна библиотека хочет скрывать
> какие то базы от пользователя.
>
> А какую цель вы преследуете? Цель в том, чтобы
> скрыть именно базу целиком, даже биб. описания?
> Или достаточно было бы не отдавать полные тексты?
> Или ещё что то?
>
> По моему, есть средства для ограничения для
> доступа к полным текстам гостю. Для этого есть
> специальная служебная база, где задаются права.

Скрыть нам нужно именно всю базу, а не полные тексты. Т.к. мы участвуем в проекте МАРС, к этой базе по договору мы можем предоставлять доступ только читателям библиотеки. Когда мы это настраивали еще не было режима "Найдено в других базах", спасибо надо будет подумать как и это убрать у гостя.



Извините, только зарегистрированные пользователи могут писать в этом форуме.
This forum powered by Phorum.