Autor Zpráva
peta
Profil *
pro nastaveni prav jsem si udelal 32 checkboxu typu:

<td><input type="checkbox" name="ch1[1]" checked="checked"/></td>

a protoze chci rekneme zobrazovat 20 uzivatelskych prav a pro kazde pravo se ma zobrazit 32 checkboxu, tak to dela celkem 2,3k x 20 = 46k .

Takze ma otazka zni, lze to vypsat nejak usporne jako skupinu?
Neco jako <base target="" href="ddd.cz/"/>
<a href="ddd.htm">
Zatim mne napada jedine reseni a to, vypsat to JS, coz je asi 2k kodu misto 46k.
MzM
Profil *
zaveď si role, jednotlivým rolím přiřadíš práva a uživatelům dej roli. Je to jednodušší na správu.
Rolí budeš mít třeba 5, a jejich práva měnit jednou za čas. U každého uživaele pak jednoduché combo. Můžeš to vylepšít tím, že uživatel může mít více rolí.
peta
Profil *
MzM
No jo, SELECTy, to pouzivas mozna ty, ale ja mam skupin s opravnenimi asi 40, prav pocitam, ze bude take tolik.
- www prava = admin, zmeny na portale, edit, del...
- blog prava = edit, del, komentar, ...
- eshop prava1 = edit, del, pridavani inzeratu, cteni, cteni podrobnosti, ...
- eshop prava2 = jako 1, ale trochu jiny druh

A to vsechno delim jeste na skupiny:
anonymni
prihlaseny
spravce
moderator
admin

Kde proste eshop1 bude mit trochu rozdilnou skupinu prav s nekterymi prvky navic, proti 2 a naopak.
A techto skupin bude vice, aby si kazdy uzivatel mohl nastavi, pro ktery druh uzivatele povoli jake prava. S temi 5ti druhy uzivatelu si snad vystaci :)

Mno a problem prave popsaneho je v tom, ze kdyz si na strance necham zobrazit vsechny opravneni, i ta, ktera dana kategorie webu nepotrebuje, tak jich je rekneme 32.
A protoze tech prav necham zobrazit po 10, tak je to 320 checkboxu.
A 320 checkboxu v nastaveni
<td><input type="checkbox" name="ch1[1]" checked="checked"/></td>
je opravdu docela znacny kod, ktery by se adminovi nemusel posilat v PHP. Konkretne 66 x 320 = 22k

Kdyby se dalo pouzit, ze nasledujici skupina bude type=checkbox, hodne by to zmenilo vysledek.
neco jako
<group tag="input" type="checkbox">
<td><input name="ch1[1]" checked="checked"/></td>
<td><input name="ch1[1]" checked="checked"/></td>
<td><input name="ch1[1]" checked="checked"/></td>
To uz je jen 50x320 = 16k + nejake smeti za ten tag.

Takhle tam dam asi generator JS na celou tabulku nebo jen prava, coz by u admina vadit nemelo, ten snad JS bude mit vzdy povolene.
nothrem
Profil
A jak často se bude ta 46kB stránka načítat? Určitě to nebude tak často, aby to nějak zatěžovalo server nebo linku.

A pokud jde délku načítání, dej na začátek tohle:

<body onload="document.getElementById('loading').style.display = 'none';">


<p id="loading" style="
position:absolute; right:1em; top:1em;
border:red 2px solid;
background:white; color:black;
padding:0.5em 1em;
">Čekejte... stránka se načítá</p>
peta
Profil *
nothrem Tak jako javascriptem si muzu vypsat ty checkboxy, ale tomu jsem se chtel vyhnout. Samozrejme to JS vypisu, protoze proste lepsi reseni neni.

Jeste jsem dostal tip na XML nebo to byla mozna mozilla syntaxe.

<repeat ref="group">
<repeat ref="law">
<select>
<label>.....</label>
<itemset ref="labels>
<label ref="label"/>
<value ref="value"/>
</itemset>
</select>
</repeat>
</repeat>
Toto téma je uzamčeno. Odpověď nelze zaslat.