Форум программистов, компьютерный форум, киберфорум
HCL Notes: Программирование
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.93/55: Рейтинг темы: голосов - 55, средняя оценка - 4.93
0 / 0 / 0
Регистрация: 16.11.2008
Сообщений: 308
1

Сайт на домине

14.02.2017, 18:05. Показов 11016. Ответов 102
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Привет, совсем заморочился, прошу свежего взгляда на проблемку.

Задача вот какая. Сайт на домине. Причем хочется
1. Правильные урл из серии хост/раздел/документ для сео
Причем количество разделов произвольно.

2. Урл для создания секций сайта для отслеживания/рекламирования типа
хост/секция/раздел/документ
Причем количество разделов произвольно, количество секций хотелось бы произвольно.

3. Картинки в документе желательно задавать через импорт (чтобы пользователь видел итоговый результат)

4. На сайте необходимо иметь возможность сделать выборку данных

5. Сайт должен работать быстро.
============================================================

В общем, вот какие варианты:

Если отказаться от пункта 3 и вносить картинки как аттачи и как то ручками прописывать пути к ним, то есть отказаться от лотусового ричтекста, то задача решается по-моему прописыванием substitution типа

* ->/база.nsf/html?readform&key=*, где потом урл разбирается, вытаскивается из него ключ, ищется нужный док и отображается агентом wqo.
вид соотвественно тоже отображается агентом.
выборка отображается агентом с ftsearch

----------------------------------

А если не отказываться от лотусового ричтекста, то надо доставать сам документ
и пока пришел к таким substitution

хост/раздел/документ

/*/ -> /база/вид/*?OpenDocument
/*/$file/* -> /база/вид/*/$file/*
/*/*/ -> /база/вид/*~*?openDocument
/*/*/$file/* -> /база/вид/*~*/$file/*

хост/секция/раздел/документ

/s-*/*/ -> /база/вид/s-*~*?OpenDocument
/s-*/*/$file/* -> /база/вид/s-*~*/$file/*
/s-*/*/*/ -> /база/вид/*~*?openDocument
/s-*/*/*/$file/* -> /база/вид/s-*~*~*/$file/*

где s-* это секции типа s-1, s-2, s-...

в этом случае в документе есть несколько ключей, к каким секциям он относится, можно отображать лотусовый ричтекст, можно отображать виды - встроенными видами.

Но минус - надо всегда задавать секции в документе
-----------------------------

для выборки отображаются агентом с ftsearch

а также думал, может есть смысл закидывать данные на mysql и агентом вытаскивать выборку

----------------------------------------

Секции нужны по идее впереди, чтобы можно было использовать конструкцию base href, если виды не строить агентом. И в метрике потом будет четко видно где тусили посетители.

---------------------------------------------

ну и может у кого есть идеи, как пункт 3 реализовать без лотусового ричтекста

С одной стороны можно написать вставщик тэга картинки типа

Вид спереди<br><br>
<img src="/board-games/iq-link/images/iq-link-front.jpg" width=640 height=480 alt="Настольная игра Ай-Кью-Колечки, вид спереди.">

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


Еще уточню, что секции нужны для двух задач

а) отследить откуда пришел посетитель на сайт, например на контекстную рекламу от яндекса я назначаю секцию s-1 и все посетители тусят в этой секции не переходя на основной сайт.

б) отрекламировать с помощью определенного источника часть документов (содержащие к примеру описание услуг), тогда в секцию s-2 попадет урезанная выборка, которая будет рекламироваться с помощью например тематической рекламы.

Спасибо за внимание, что вы думаете об этом. Извиняюсь за сумбурный поток мыслей.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
14.02.2017, 18:05
Ответы с готовыми решениями:

При попытка зайти на любой сайт антишпионом перехватывается сайт partner-pop.men. Как убрать этот сайт?
При попытка зайти на любой сайт через Гугл Хром антишпионом Антимальварэ-байтс перехватывается сайт...

Сайт после 5 секунд заходит на другой сайт (взломали сайт)
Когда я открою свое сайт он после 5 секунд заходит на другой сайт (взломали сайт) там написано что...

При запуске google открывается сайт nftds2.ru и перенаправляет на сайт с рекламой
При запуске google открывается сайт nftds2.ru, потом перенаправляет на nftds.ru, после он...

я создал сайт на dreamwaver как установить на мой сайт cms joomla
я создал сайт на dreamwaver как установить на мой сайт cms joomla

102
0 / 0 / 0
Регистрация: 28.05.2005
Сообщений: 347
22.02.2017, 20:53 81
Author24 — интернет-сервис помощи студентам
Цитата Сообщение от Domino-Designer
Вы в результате придете к автору вот этого http://asozd2.duma.gov.ru/main... RN=ЧЧЧЧЧ-Ч
Рыдаю. Походу, автор ни $$SearchTemplateDefaul ни $$ViewTemplateDefault в школе не проходил, особенно тут http://asozd2.duma.gov.ru/addwork/stat.nsf
Сайты интернета вообще не настроены.
0
0 / 0 / 0
Регистрация: 16.11.2008
Сообщений: 308
22.02.2017, 21:14 82
Цитата Сообщение от lmike
IP бывают разные и большинство, в современном мире временные или за NAT...
т.о. плавно подходим к теме кукисов и трекинга ;)
Ну это уже расширение функционала Начну с простого ip

Кстати, для того чтобы накормить https://developers.google.com/... /insights/ пришлось содержимое css засунуть в профильный док, а затем в header его вставить. Зато 100/100 !
0
0 / 0 / 0
Регистрация: 28.05.2005
Сообщений: 347
23.02.2017, 00:23 83
Цитата Сообщение от Gandliar
Ну это уже расширение функционала Начну с простого ip
Все же лучше начать с удобного движка и контента, а аудитория, источники трафика, поведение, конверсии и все что даже не снилось уже давно есть в Гугле Аналитикс и Вебмастере на Яндексе. С профайлами еще та песня - легко возвращают данные из поздней реплики в новую.
0
0 / 0 / 0
Регистрация: 26.05.2006
Сообщений: 1,313
23.02.2017, 23:20 84
Цитата Сообщение от NetWood
.. С профайлами еще та песня - легко возвращают данные из поздней реплики в новую.
Это ЕСЛИ в той реплике профайла НЕ было. При обращении к профайлу он СОЗДАЁТСЯ (пустой?), а при репликации "затаптывает" актуальный
0
0 / 0 / 0
Регистрация: 28.05.2005
Сообщений: 347
24.02.2017, 10:02 85
Цитата Сообщение от Constantin A Chervonenko
Это ЕСЛИ в той реплике профайла НЕ было.
Так, да не так. Профайл есть в обоих репликах. Есть у меня агент по расписанию, который прописывает всяко-разно изменения и обновления доков вроде результата лога. Раньше писал это в профайл и оттуда доставал, но при РУЧНОЙ репликации с тестового сервака старые данные легко влетали в новый, который уже сто раз обновился на боевом сервере. Забил и сделал через док. В профайле оставил только Стоунхендж. Пишу РУЧНОЙ, потому что при автоматической репликации между серверами по расписанию такой проблемы нет. Хз.
0
0 / 0 / 0
Регистрация: 16.11.2008
Сообщений: 308
24.02.2017, 10:30 86
Цитата Сообщение от Constantin A Chervonenko
Это ЕСЛИ в той реплике профайла НЕ было. При обращении к профайлу он СОЗДАЁТСЯ (пустой?), а при репликации "затаптывает" актуальный
При любом обращении? @GetProfileField вызывает создание профайла?
0
0 / 0 / 0
Регистрация: 28.05.2005
Сообщений: 347
24.02.2017, 12:29 87
Я, вот, написал про профайл и понял в чем причина). Он же не док и дата его изменения равна дате изменения текущей реплики и любым изменениям в базе, соответственно профайл становится свежее той куда реплицируется. Из-за этого, при репликации, все что в нем было накатывается на то что есть. А на сервере все работало потому что обновлялось раньше и реплицировалось на актуальную.
0
0 / 0 / 0
Регистрация: 26.05.2006
Сообщений: 1,313
24.02.2017, 23:49 88
Цитата Сообщение от Gandliar
При любом обращении? @GetProfileField вызывает создание профайла?
Именно. Вы не знали???


--- Добавлено 26 фев 2017. Первое сообщение размещено 26 фев 2017 ---




Цитата Сообщение от NetWood
Я, вот, написал про профайл и понял в чем причина). Он же не док и дата его изменения равна дате изменения текущей реплики и любым изменениям в базе, соответственно профайл становится свежее той куда реплицируется. Из-за этого, при репликации, все что в нем было накатывается на то что есть. А на сервере все работало потому что обновлялось раньше и реплицировалось на актуальную.
Гм.. Это ДО v5 профайл был частью дизайна. В v6 это стало опцией, на выбор: дизайн/док-т.
Вплоть до 8.5 поведение профайлов было вполне предсказуемым.
Что не гарантировало от ошибок - по собственному недомыслию ЛИБО по подляне репликатора: на больших объёмах, в 8-ке (м.б. и в др.версиях, но к милионным базам мы пришли с 8-кой) рано или поздно филиальская реплика вдруг оказывается неполной - отсутствуют эл-ты дизайна, и/или док-ты. Иногда среди пропаж оказывается и профайл. И вот тогда...

По 9-ке у меня статистики нет, м.б. индусы там чего нового накрутили (говорят, бывает более одной ноты с тем-же UNID-ом)
0
0 / 0 / 0
Регистрация: 12.11.2009
Сообщений: 882
25.02.2017, 07:26 89
ИМХО под веб профайлы для динамических данных лучше не использовать. Тут и ограничения в 6 тыс, и непонятки с репликами и т.п.
Есть вариант быстрого чтения созданных через хеш доков - типа @GetDocField(@Middle(@Password("hash string"),2,32); fieldName ).
Создание через LS, типа: doc.UniversalID=Mid(Join(Evaluate(|@Password({|+me.hashstr+|})|)),2,32).
Через вьюшки при интенсивном обновлении будут тормоза...
Которые впрочем обходятся через live view refresh
0
0 / 0 / 0
Регистрация: 16.11.2008
Сообщений: 308
25.02.2017, 14:07 90
Цитата Сообщение от rinsk
ИМХО под веб профайлы для динамических данных лучше не использовать. Тут и ограничения в 6 тыс, и непонятки с репликами и т.п.
Есть вариант быстрого чтения созданных через хеш доков - типа @GetDocField(@Middle(@Password("hash string"),2,32); fieldName ).
Создание через LS, типа: doc.UniversalID=Mid(Join(Evaluate(|@Password({|+me.hashstr+|})|)),2,32).
Через вьюшки при интенсивном обновлении будут тормоза...
Которые впрочем обходятся через live view refresh
Ну вот решение на первое время = отдельная база и getDocumentByUINID
0
0 / 0 / 0
Регистрация: 20.07.2014
Сообщений: 93
25.02.2017, 14:16 91
Цитата Сообщение от Gandliar
Вопрос был как лучше полнотекстом или тащить из реляционной базы.
проблема в сортировках, для каждого варианта сортировок нужен вид, я так думаю
а также есть сомнения если из реляционки я вытащу только 30 записей для текущей страницы, то полнотекст будет всегда брать все записи и мне придется позиционироваться на нн-й док

Поэтому и спрашиваю, у кого какой опыт есть
Ну я бы использовал FTSearchSorted
А рест клиент из экстеншн либрари(xpages) не подойдет? Создать 1 пейдж, кинуть туда 1 контрол.. А дальше работай с ним как хочешь.
В любом случае можно посмотреть как он работает, приложил, вдруг пригодится
0
0 / 0 / 0
Регистрация: 16.11.2008
Сообщений: 308
25.02.2017, 16:20 92
Прикольно, что есть в лотусскрипте функция FTSearchSorted
Спасибо за инфу. В хелпе ее нет, по крайней мере на 8.5.3

Кстати, есть ли большой смысл перейти на 9ку, в плане веб-приложений?
0
0 / 0 / 0
Регистрация: 28.05.2005
Сообщений: 347
25.02.2017, 21:01 93
Цитата Сообщение от rinsk
Есть вариант быстрого чтения созданных через хеш доков - типа @GetDocField(@Middle(@Password("hash string"),2,32); fieldName ).
Создание через LS, типа: doc.UniversalID=Mid(Join(Evaluate(|@Password({|+me.hashstr+|})|)),2,32).
Через вьюшки при интенсивном обновлении будут тормоза...
Хочется думать, что это хитрый способ получения содержимого чужого дока во вьюхе), но @GetDocField не работает же в колумнах. Или я что-то пропустил? Да же если так, то тормозить будет знатно, да. Я собираю во вьюх-док .
0
0 / 0 / 0
Регистрация: 16.11.2008
Сообщений: 308
26.02.2017, 17:45 94
Сделал функцию проверки ip на уникальность.

LotusScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
Private Function checkIp(section As String, ip As String, doc As NotesDocument) As Boolean
Dim dtNow As NotesDateTime
Set dtNow = New NotesDateTime(CStr(Now))
Dim fieldName As String
fieldName = "ip_"+section
Dim ipList As Variant
With doc
ipList = .Getitemvalue(fieldName)
If ipList(0) = "" then
Call .Replaceitemvalue(fieldName, CStr(dtNow.LSLocalTime)+"~"+ip)
Else
Dim i As Integer
i = UBound(ipList)
If i>900 Then i=900
Dim a() As String
ReDim a(i+1)
Dim j As Integer
j = i
While j>=0
Dim dtString As String
dtString = StrLeftBack$(ipList(j),"~")
Dim dt As NotesDateTime
Set dt = New NotesDateTime(dtString)
If dtNow.TimeDifference(dt)>1800 Then
j=-1
Else
a(j) = ipList(j)
Dim flag As Boolean
If StrRightBack$(ipList(j),"~") = ip Then flag = True
j=j-1
End If
Wend
If Not flag Then
a(i+1) = CStr(dtNow.LSLocalTime)+"~"+ip
End If
Dim ta As Variant
ta = FullTrim(a)
Call .Replaceitemvalue(fieldName, ta)
End If
End With
If Not flag Then checkIp = true
End Function
0
0 / 0 / 0
Регистрация: 12.11.2009
Сообщений: 882
27.02.2017, 07:15 95
Цитата Сообщение от NetWood
Хочется думать, что это хитрый способ получения содержимого чужого дока во вьюхе)
да не - это вариант применения этой вот штуки: https://www.ibm.com/developerw... estsearch/
Изврат еще тот - но иногда помогает)
0
0 / 0 / 0
Регистрация: 28.05.2005
Сообщений: 347
27.02.2017, 15:03 96
Цитата Сообщение от rinsk
Изврат еще тот - но иногда помогает)
Не, изврат мне намедни приснился). Ставим на вьюху Аякс запрос типа $("hard").load("doUnid?readform&id=unid") с юнидом искомого дока, и волшебным образом получаем все, что так не хватало в <div id="hard"></div> хоть в .html. Ну а что! Должно работать. Правда, в логах doUnid будет в супер топе и как браузеры к этому отнесутся на больших вьюхах с таким батальоном запросов не проверял . Вместо формы можно еще агент прикрутить или в строке вьюхи получить другую вьюху. Во!
0
0 / 0 / 0
Регистрация: 12.11.2009
Сообщений: 882
27.02.2017, 18:01 97
Цитата Сообщение от NetWood
Вместо формы можно еще агент прикрутить или в строке вьюхи получить другую вьюху. Во!
Ну будет по 1-2 отрисовывать - по кол-ву XHR запросов одновременных в браузере)
Не - эта штука для другого - отказ от вьюхи.
Я на ней сделал под веб лочку доков. Ключ - ИД обьекта, хеш от ключа - UID дока.
0
0 / 0 / 0
Регистрация: 16.11.2008
Сообщений: 308
28.02.2017, 10:43 98
Есть в документе 10 картинок в в ричтекстовом поле, прикрепленные как аттачи.
Есть соответственно 10 стринговых полей, в которых указаны имена файлов этих картинок.

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

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

заранее благодарю
0
0 / 0 / 0
Регистрация: 20.07.2014
Сообщений: 93
28.02.2017, 11:25 99
Мне на ум приходит ток Pass-Thru HTML и попробовать вывести там img
0
0 / 0 / 0
Регистрация: 28.05.2005
Сообщений: 347
28.02.2017, 18:36 100
Цитата Сообщение от Gandliar
Есть в документе 10 картинок в в ричтекстовом поле, прикрепленные как аттачи.
Есть соответственно 10 стринговых полей, в которых указаны имена файлов этих картинок.
А не могли бы объяснить уважаемой публике, зачем эти 10 стринговых полей для хранения имен и чем не устраивает функция @AttachmentNames? А если будет 20 аттачей еще 20 полей добавите? Вот же в посте #10 я приводил конструкцию, которая выводит картинки. И в посте #2 как конвертить RT в HTML с картинками. Это вообще не читали?

И напуркуа вообще что-то разаттачивать на диск... Читаю ваши вопросы, и не могу избавиться от ощущения, что попал на форум по SQL с необъяснимыми проблемами из той же области.
0
28.02.2017, 18:36
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
28.02.2017, 18:36
Помогаю со студенческими работами здесь

При заходе в интернет и клике на любой сайт перекидывает редиректом на др.сайт
Нужна помощь. Подскажите плиз что делать. Где искать вредоносный файл и как удалить. При заходе в...

При переходе на сайт с мобильного телефона открывается порно сайт
Сделал сайт на джумле 2.5. вот сайт При переходе на сайт с мобильного телефона открывается ....

Открывает каждые 10-20 минут сайт с рекламой+вирусный сайт chatozov.ru
В свойствах Google Chrome ссылки chatozov.ru нету. А когда играешь или что нибудь делаешь бесит...

Забанили сайт, защел через прокси сайт не могу залогиниться
В общем забанили лост фильм, захожу через проксифрии или 010101pro-4u, но когда пытаюсь логин и...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
100
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru