Custom Content

5 отговора 178 прегледа
#1

Custom Content

Zdraveite!

Niakoi moze li da me posavatva, koi spored vas e nai-elegantnia i barz na4in da se generira custom content za stranica, pri polozene, 4e imam 5 access levels, bazata mi e v Microsoft SQL Server, a saita e na ASP VBasic Script.
Stava vapros za elementarna stranica, v koiato iskam da skria opredeleni text-linkove v zavisimost ot auth. levela.
10x

Отговор
в отговор на pitast #2

Re: Custom Content

Можеш евентуално преди показването на всеки текстов линк да правиш някаква проверка if (AccessLevel >= X)
в случая X е левела необходим за показване на текстовия линк... можеш да развиеш идеята и предварително в някакъв дейта сет да прочиташ линковете които ще показваш за съответното ниво на достъп и да ги пердашиш после директно от дейтасета. Разбира се, имаш предвид, че потребителя може и ръчно да отиде на съответната страница, нали ? ;)

Ние сме точици във вселената. А всеки човек е една цяла вселена...
Отговор
в отговор на pitast #3

Re: Custom Content

Можеш за всеки аксес левъл да дефинираш отделен CSS.
като сетваш display: visible/none, в зависимост от левъл-а.

или пък visibility: hidden/visible.

Разбира се в HTML-a те ще присъстват като код, но няма да се виждат.

Съответно в страниците дето не требе да се посещават от даден левъл си слагаш проверка и гониш user-a оттам.

Практически динамично ще се генерира CSS-a.

Отговор
в отговор на chukumba #4

Re: Custom Content

Zvu4i interesno, ne znaeh, che moze da se defenira CSS za vseki level. Porovih se, no nesto ne uspiah da nameria kade se definira edin CSS da bade visible za opredelen level/i. Az polzvam Dreamweaver MX i tova mi e scripta za "Restrict Acces to Page":


<%
' *** Restrict Access To Page: Grant or deny access to this page
MM_authorizedUsers="Administrator,train"
MM_authFailedURL="index.asp"
MM_grantAccess=false
If Session("MM_Username") <> "" Then
If (false Or CStr(Session("MM_UserAuthorization"))="") Or _
(InStr(1,MM_authorizedUsers,Session("MM_UserAuthorization"))>=1) Then
MM_grantAccess = true
End If
End If
If Not MM_grantAccess Then
MM_qsChar = "?"
If (InStr(1,MM_authFailedURL,"?") >= 1) Then MM_qsChar = "&"
MM_referrer = Request.ServerVariables("URL")
if (Len(Request.QueryString()) > 0) Then MM_referrer = MM_referrer & "?" & Request.QueryString()
MM_authFailedURL = MM_authFailedURL & MM_qsChar & "accessdenied=" & Server.URLEncode(MM_referrer)
Response.Redirect(MM_authFailedURL)
End If
%>


10x predvaritelno

Отговор
в отговор на Pitast #5

Ако

можеш да си нафрашкаш кода с още боклуци - давай !
Програмирането не е свързано с генериране на автоматични скриптове, колкото и удобно да изглежда на пръв поглед. Опитай да сложиш нещата в лейъри - ДИВ тагове. Лесно може да им се даде в стила да са с размери 0,0 още повече че има опция и за "overflow"-а.

UB40 !
Отговор
в отговор на Pitast #6

Re: Custom Content

Аз доколкото разбрах ставаше въпрос за динамично задаване на CSS файлове - примерно де. Начи в хедъра на страницата ша сложиш:
<link rel="stylesheet" href="style<%= SecurityAccessLevel %>.css"
съответно в style1.css (което се очаква да ти е цеесес-а за най ниския левел) си дефинираш примерно:
a.ReqLvl1
{
visible: true; (или там както беше описано по-горе...)
}
a.ReqLvl2
{
visible: false;
}
a.ReqLvl3
{
visible: false;
}
a.ReqLvl4
{
visible: false;
}
a.ReqLvl5
{
visible: false;
}
По тоя начин всичките над 1-во ниво ша са невидими. После задаваш CSS и за останалите левели - style2.css, style3.css и т.н. където указваш кои линкове да са достъпни...
в страницата на всеки линк само трябва да сложиш един атрибут
<a href="....." class=ReqLvl1 ....>
Това нещо указва че за този линк е необходим Level1.

Ние сме точици във вселената. А всеки човек е една цяла вселена...
Отговор