webForumDet fria alternativet

Administratörsrättigheter & publicering

Webbutveckling

3 svar · 464 visningar · startad av SugarDaddy

Medlem sedan apr. 20021 155 inlägg
Frågan#1

Har lite funderingar:
Bakgrund:
Man har ett antal olika admins med olika behörigheter, säg 3 nivåer, på en sida :
3 = superadmin, kan lägga till o ta bort vad & vem som helst
2 = "normal" admin, kan lägga till nya admins med samma behörighetsnivå samt publicera/redigera och ta bort texter osv
1 = "kvasi"-admin, kan inte lägga till nya admins, får lov att skriva nya texter men inte publicera dessa.

Frågeställning:
- Hur göra för det fall att en nivå 1 admin skrivit en text, vilken sedan godkänts och publicerats av nivå 2/3-admin, och författaren sedan vill göra ändringar i texten/eller ändra i andra texter?

Tankesättet "En gång publicerat, alltid publicerat?" och tillåta ändringar hur som helst?
- Hur spara en kopia av den ursprungliga versionen? Ska man lägga till en db-tabell dit orginalet flyttas/kopieras tills det tas bort? Eller tvärtom flytta/mellanlagra den ändrade versionen tills dess den godkänts och då göra switchen (då ligger ju den gamla, fortfarande gällande, texten fortfarande kvar publikt vilket ju är önskvärt)?

- Ska ändringen istället medföra att texten sparas om som en ny och tar den gamlas plats som sedan avpubliceras och markeras som arkiverad?

Oavsett vilket måste ju den nya ändrade texten överta sektions- & menyplacering osv.

- Ska man hålla ngn form av trackrecord när och vem som har skapat & ändrat en text? Krävs det inte en viss volym/antal admins för att det skall vara intressant/aktuellt?

Någon som har lite funderingar/förslag på vettiga lösningar? :)

Medlem sedan feb. 200112 078 inlägg
#2

Utan vidare tanke på projektets storlek, så hade jag nog valt att skapa två kolumner i tabellen som håller de poster som skall publiceras/godkännas, samt lägga till en boolean (true/false) som bestämmer om materialet i posten är godkänt av en behörig användare eller inte.

Tre kolumner; PostText, PostTextEdited, PostIsPublished.

Texten som visas på sidan visas uteslutande från PostText. Om PostIsPublished är False så innehåller antagligen PostTextEdited någonting, närmare bestämt den editerade versionen av PostText. När administratören med rättigheter godkänner posten, flyttas all data från PostTextEdited till PostText och PostIsPublished sätts till True. PostTextEdited töms.

Man kan även utveckla det ifall man vill och se till att lägga PostTextEdited i en egen tabell och göra en referenstabell emellan de två, för att få möjlighet att ha historik, olika versioner osv. (låter som Wikipedia :))

Medlem sedan apr. 20021 155 inlägg
#3

Override, man tackar - flera bra idéer där väl värda att fundera vidare på! :bire
Hade fastnat i tankerundgång ang diffar publik/editerad text

Medlem sedan mars 20032 667 inlägg
#4

Du kan ju tjuvkika lite här om rättighetssystem:
http://www.webforum.nu/showthread.php?s=&postid=720712#post720712

256 ms totalt · 4 externa anrop · v20260731065814-full.6fe65c25
128 ms — deklarationer (db)
0 ms — hämta statistik (cache)
125 ms — hämta tråd, inlägg och bilagor (db)
127 ms — ändringar (db)