Dev:UseCases/Sprava albumu
Navigation: Dev:UseCases.
Uzivatel, ktery je ve skupine prirazene k albu, muze mit moznost prirazovat k albu skupiny a menit atributy alba. Take muze mit moznost spravovat fotky v albu a diskuzi alba.
Vlastnik alba ma vsechny moznosti prace s albem. Muze take album zrusit.
Contents |
Sprava alba
Uzivatel muze mit moznost spravovat album - prirazovat k albu skupiny a menit atributy alba. Take muze mit moznost spravovat fotky v albu a diskuzi alba. Dale uzivatel muze mit tytez moznosti prace s albem jako ostatni uzivatele, coz bylo popsano v kapitole Detail albumu.
Pokud jsou v systemu povolena alba (atribut GlobalSettings.Album.hide_all_albums) a pokud ma uzivatel prava spravovat album, jejichz zjisteni bylo popsano v kapitole Prehlad albumov, tak se uzivateli, ktery si zobrazi album pro spravu, zobrazi detail alba stejne jako ostatnim uzivatelum a ma tytez moznosti jako ostatni uzivatele, coz bylo popsano v kapitole Detail albumu. Navic se uzivateli zobrazuji nektere dalsi informace o albu a uzivatel muze mit nektere dalsi moznosti prace s albem.
Uzivatel take muze mit moznost spravovat fotky v albu a diskuzi alba, coz bylo popsano v kapitolach Fotky albumu a Diskusia albumu.
Informace o albu
Pokud jsou v systemu povoleny fotky (atribut GlobalSettings.Photo.hide_all_photos) a pokud je uzivatel ve skupine, ktera smi v tomto albu potvrzovat fotky (atribut GroupInAlbum.may_confirm_photo), zobrazi se uzivateli pocet fotek, jejichz stav je nastaven na cekajici na potvrzeni (atribut PhotoInAlbum.state).
Pokud jsou v systemu povolene diskuze u alb (atribut GlobalSettings.Album.hide_discussion) a pokud je uzivatel ve skupine, ktera smi v tomto albu potvrzovat prispevky (atribut GroupInAlbum.may_confirm_discussion), zobrazuje se uzivateli pocet prispevku v diskuzi alba, jejichz stav je nastaven na cekajici na potvrzeni (atribut Album.Discussion.Item.state).
Uzivateli se u kazde fotky zobrazuje navic jeji stav v tomto albu (atribut PhotoInAlbum.state) a pokud je zakazana, tak se zobrazi i duvod (atribut Album.reason).
Uzivateli se v detailu alba take zobrazi, ktery skin ma album nastaven (atribut Album.skin).
Vse se zobrazuje ve skinu, ktery ma uzivatel vybran (atribut Visitor.Settings.skin).
Uzivateli se aktualizuje cas posledniho pristupu k albu stejne jako pri zobrazovani detailu alba, coz bylo popsano v kapitole Detail albumu.
Dalsi moznosti
Pokud je uzivatel ve skupine, ktera ma v tomto albu pravo menit jeho atributy (atribut GroupInAlbum.may_modify_attributes), muze uzivatel zmenit atributy alba, coz bude popsano dale.
Pokud jsou v systemu povoleny skupiny (atribut GlobalSettings.Group.hide_all_groups) a pokud je uzivatel ve skupine, ktera ma pravo spravovat skupiny prirazene k albu (atribut GroupInAlbum.may_manage_groups), muze uzivatel nastavovat prava skupinam prirazenym k tomuto albu nebo k albu priradit dalsi skupinu, coz bude popsano dale.
Uzivatel si muze zobrazit album jako pro ostatni uzivatele, coz bylo popsano v kapitole Detail albumu.
Detail alba pro vlastnika
Vlastnikovi alba se zobrazi totez co uzivateli, coz bylo popsano vyse. Vlastnikovi se v detailu alba zobrazi take stav alba v adresari (atribut Album.state) a pokud je zakazano, tak se zobrazi i duvod zakazani (atribut Album.reason).
Vlastnik ma vsechna prava pro praci s albem (popsana ve tride GroupInAlbum), vse probiha stejne jako u uzivatele, jak bylo popsano vyse.
Vlastnik muze svoje album smazat, coz bylo popsano v kapitole Prehlad albumov.
Vlastnikovi alba se take nastavi cas posledniho pristupu k albu (atribut FavouriteAlbum.last_photos_access) na aktualni hodnotu.
Poznamky
Poznamka: Vlastnikovi alba, ktery se do detailu sveho alba dostal z prehledu alb, se zobrazi uzivatelska verze detailu alba, ktera byla popsana v kapitole Detail albumu.
Poznamka: Vlastnikovi alba, ktery se do detailu sveho alba dostal z prehledu svych alb, se zobrazi tato verze alba pro spravu.
Zmena atributu
Uzivatel muze mit moznost zmenit nektere atributy alba - nazev, popis atd.
Pokud jsou v systemu povolena alba (atribut GlobalSettings.Album.hide_all_albums) a pokud je uzivatel ve skupine, ktera ma v tomto albu pravo menit jeho atributy (atribut GroupInAlbum.may_modify_attributes), muze uzivatel zmenit atributy alba.
Uzivatel muze zmenit nektere atributy z tridy Album a vsechny atributy z tridy Album.Rules. Dale muze uzivatel zmenit adresar alba, coz bylo popsano v kapitole Prehlad albumov.
Zmena atributu
Uzivateli se zobrazi editovatelny seznam atributu alba vyplneny aktualnim hodnotami atributu. Uzivatel zada povinne atributy - nazev alba (atribut Album.name), pripadne i nepovinne atributy - popis alba (atribut Album.description. Take muze zmenit ikonu (atribut Album.icon) a skin alba (atribut Album.skin), coz bylo popsano v kapitole Prehlad albumov. Dale muze uzivatel zmenit nastaveni alba (vsechny atributy z tridy Album.Rules). Tato nastaveni jsou podrobne popsana ve tride Album.Rules. U kazdeho atributu si vybere z jeho moznych hodnot.
Poznamka: Pokud neni v systemu povolena diskuze u alb (atribut GlobalSettings.Album.hide_discussion) nebo v systemu nejsou povoleny fotky (atribut {{link attr|Settings|GlobalSettings.Photo|hide_all_photos}), nemaji nektera nastaveni z tridy Album.Rules smysl a tedy se nebudou uzivateli zobrazovat.
Poznamka: Jine atributy alba (atributy Album.owner a Album.state) uzivatel zmenit nemuze.
Kontrola
Po potvrzeni zmeny se hodnoty zkontroluji, zda jsou stale vyplneny povinne atributy. Dale se podle nastaveni html-tagu (atribut GlobalSettings.allow_html_tags) zkontroluje popis alba a nepovolene html-tagy se odstrani. V jinych atributech nejsou povoleny zadne html-tagy. Take se zkontroluje, zda popis alba nepresahuje maximalni povolenou hodnotu (atribut GlobalSettings.Album.max_description_length).
Pokud je vse v poradku, hodnoty atributu se ulozi a zobrazovany seznam atributu se aktualizuje.
Pokud ne, je uzivateli vypsano varovne hlaseni (s rozmezim moznych hodnot apod.) a musi hodnotu daneho atributu opravit.
Skupiny
Uzivatel muze mit moznost nastavovat prava skupinam prirazenym k tomuto albu nebo k nemu prirazovat dalsi skupiny.
Pokud jsou v systemu povoleny skupiny (atribut GlobalSettings.Group.hide_all_groups) a pokud je uzivatel ve skupine, ktera ma pravo spravovat skupiny prirazene k albu (atribut GroupInAlbum.may_manage_groups), muze uzivatel nastavovat prava skupinam prirazenym k tomuto albu nebo k albu priradit dalsi skupinu.
Prirazeni skupiny
Skupina prirazena k albu ma pravo prohlizet si album a muze mit i dalsi prava pro praci s albem.
Uzivatel muze k albu priradit jiz existujici skupinu. Uzivateli se zobrazi seznam vsech skupin, jejichz stav je nastaven na potvrzen (atribut Group.state) - v seznamu se zobrazi nazvy skupin (atribut GroupCategory.name). Uzivatel muze kteroukoliv z nich priradit k albu. Vybrana skupina se priradi k albu.
Nove prirazenym skupinam se nastavi defaultni prava pro praci v albu (vsechny atributy z tridy GroupInAlbum).
Zmena prav
Uzivateli se zobrazi seznam skupin, ktere jsou prirazene k tomuto albu. V seznamu se zobrazi nazvy skupin (atribut GroupCategory.name). Uzivatel muze vybrane skupine zmenit jeji prava. Prava skupin v albu jsou podrobne popsana ve tride GroupInAlbum. U kazdeho prava muze uzivatel vybrane skupine nastavit, jestli je ma nebo nema.