Package sk.iway.iwcm.editor.service
Class WebpagesService
java.lang.Object
sk.iway.iwcm.editor.service.WebpagesService
Priprava zoznamu web stranok a pridruzenych ciselnikov pre DT.
Servis je potrebne konstruovat so zadanym group_id, podla neho sa nasledne vracaju data.
-
Field Summary
Fields -
Constructor Summary
ConstructorsConstructorDescriptionWebpagesService(int groupId, Identity user, Prop prop, javax.servlet.http.HttpServletRequest request) -
Method Summary
Modifier and TypeMethodDescriptionstatic StringaddBaseSpecSearch(SpecSearch<DocDetails> specSearch, Map<String, String> params, List<javax.persistence.criteria.Predicate> predicates, javax.persistence.criteria.Root<DocDetails> root, javax.persistence.criteria.CriteriaBuilder builder) Get and process params as searchAuthorName, userGroupId etc.addEmptyDoc(List<DocDetails> list, int emptyDocId) Do zoznamu DocDetails objektov prida na prvu poziciu fiktivny DocDetails s hodnotou "Ziadna" a zadanym emptyDocIdaddFromTemlateDoc(List<DocDetails> list) Do zoznamu DocDetails objektov prida na prvu poziciu fiktivny DocDetails s hodnotou "Zo sablony" a id -2static voidaddOptions(DatatablePageImpl<DocDetails> pageImpl, GetAllItemsDocOptions options) Add options to DatatablePage objectstatic voidaddOptions(DatatablePageImpl<DocDetails> pageImpl, GetAllItemsDocOptions options, boolean forceGroupId) Add options to DatatablePage objectstatic voidaddSpecSearch(Map<String, String> params, List<javax.persistence.criteria.Predicate> predicates, javax.persistence.criteria.Root<DocDetails> root, javax.persistence.criteria.CriteriaBuilder builder, Identity user) Add special conditions to search query based on request parametersstatic List<GroupDetails>filterGroupsByCurrentDomain(List<GroupDetails> groups) Ponecha v zozname len adresare z aktualne nastavenej domenystatic DatatablePageImpl<DocDetails>getAllItems(GetAllItemsDocOptions options) Vrati zoznam web stranok podla zadanych kriterii v options objekte pre pouzitie v DTstatic DocDetailsgetBasicDoc(int docId) Vrati DocDetails z cache (BasicDoc), je mozne zadat aj -1 pre vratenie cisteho dokumentustatic List<DocDetails>getBasicDocDetailsByGroupRecursive(int groupId, boolean titleIncludePath) Ziska zoznam stranok z lokalneho system adresara vratane jeho podadresarov (PRVEJ UROVNE)static DocDetailsgetBasicDocFromUrl(String url) Vrati DocDetails (ako docDB.getBasicDocDetails) zo zadanej URL adresy Ta moze byt v tvare: http://domena.sk/adresar/stranka.html?nejakyParameter=aaa http://domena.sk/showdoc.do?docid=xxx&nejakyParameter=aaa /adresar/stranka.html /showdoc.do?docid=xxxgetGroup()Vrati nastaveny GroupDetails objektstatic GroupDetailsgetGroup(int groupId) Vrati GroupDetails objekt podla zadaneho groupIdstatic List<javax.persistence.criteria.Predicate>getGroupIdCondition(int groupId, boolean recursive, javax.persistence.criteria.Root<DocDetails> root, javax.persistence.criteria.CriteriaBuilder builder) Vrati JPA podmienku pre zobrazenie podla zadaneho groupId a pripadne rekurzivneho zobrazeniagetGroupsByPasswordProtected(int userGroupId) Vrati zoznam adresarov podla zadanej skupiny pouzivatelovgetGroupsByTemplateId(int tempId) Return list of groups (from this domain) that use specific template.getHeaderFooterMenuList(boolean addFromTemplateAndEmptyToSelect) Vrati zoznam hlaviciek/paticiek pre zobrazenie v DT/egetHeaderList(boolean addFromTemplateAndEmptyToSelect) Vrati zoznam hlaviciek pre zobrazenie v DT/egetMenuList(boolean addFromTemplateAndEmptyToSelect) Vrati zoznam menu pre zobrazenie v DT/egetMenuType(boolean isLogged) Vrati ciselnik pre sposob zobrazenia v menustatic DocDetailsgetOneItem(long id, int groupId, int historyId, EditorFacade editorFacade, DocAtrDefRepository docAtrDefRepository, List<NotifyBean> notifyList, javax.servlet.http.HttpServletRequest request) Vrati ciselnik pre moznost interny adresargetOptionsLanguages(javax.servlet.http.HttpServletRequest request) Vrati ciselnik pre vyber jazykagetOptionsNavbar(boolean isLogged) Vrati ciselnik pre moznosti navigacnej listyVrati ciselnik pre vyber novej strankygetOptionsSitemap(boolean isLogged) Vrati ciselnik pre moznost mapy stranokgetOptionsTemplates(UserDetails currentUser, GroupDetails group) Vrati ciselnik pre zoznam sablongetPerexGroups(boolean recursive) Vrati zoznam perex groups ako OptionDto pre DTstatic GroupDetailsVrati fiktivny korenovy adresar, je potrebny pre zobrazenie v stromovej strukture v editore ked je mozne vybrat aj korenovy adresargetTemplates(boolean recursive) Vrati zoznam dostupnych sablongetTemplates(int mustHaveTempId, boolean recursive) Vrati Templates dostupne pre dane groupIdstatic StringgetTreeSortType(UserDetails user) static intstatic intgetUserLastGroupId(Identity user, javax.servlet.http.HttpServletRequest request) Vrati posledne zapamatane groupId pre daneho pouzivatela, alebo prve jeho nastavene podla prav, alebo defaultnestatic booleanisTreeShowPages(UserDetails user) Overi, ci zadany pouzivatel ma zapnute zobrazovanie web stranok v stromovej strukturestatic booleanstatic DatatablePageImpl<DocDetails>preparePage(org.springframework.data.domain.Page<DocDetails> page, GetAllItemsDocOptions options) static DocBasicprocessFromEntity(DocBasic entity, ProcessItemAction action, javax.servlet.http.HttpServletRequest request, boolean addFields) Vykona nastavenie EditorFields atributov pred vratenim z REST rozhraniastatic voidregenerateUrl(int rootGroupId, Identity user, javax.servlet.http.HttpServletRequest request, boolean onlyChangeUrlInheritGroup) Pregeneruje URL adresy stranok v zadanom adresarivoidsetAttributeToSubgroups(int groupId, String attributeName, Object attributeValue) Pri zmene atributu nastavi jeho hodnotu do databazy dynamickym SQL prikazom
-
Field Details
-
groupId
protected int groupId -
DATA_NOT_LOADED
- See Also:
-
-
Constructor Details
-
WebpagesService
public WebpagesService() -
WebpagesService
-
-
Method Details
-
filterGroupsByCurrentDomain
Ponecha v zozname len adresare z aktualne nastavenej domeny- Parameters:
groups-- Returns:
-
getTemplates
Vrati zoznam dostupnych sablon- Parameters:
recursive- - ak je true vratia sa aj sablony z podadresarov- Returns:
-
getRootGroup
Vrati fiktivny korenovy adresar, je potrebny pre zobrazenie v stromovej strukture v editore ked je mozne vybrat aj korenovy adresar- Returns:
-
getGroup
Vrati GroupDetails objekt podla zadaneho groupId- Parameters:
groupId-- Returns:
-
getBasicDoc
Vrati DocDetails z cache (BasicDoc), je mozne zadat aj -1 pre vratenie cisteho dokumentu- Parameters:
docId-- Returns:
-
getHeaderList
Vrati zoznam hlaviciek pre zobrazenie v DT/e- Parameters:
addFromTemplateAndEmptyToSelect-- Returns:
-
getMenuList
Vrati zoznam menu pre zobrazenie v DT/e- Parameters:
addFromTemplateAndEmptyToSelect-- Returns:
-
addFromTemlateDoc
Do zoznamu DocDetails objektov prida na prvu poziciu fiktivny DocDetails s hodnotou "Zo sablony" a id -2- Parameters:
list-- Returns:
-
addEmptyDoc
Do zoznamu DocDetails objektov prida na prvu poziciu fiktivny DocDetails s hodnotou "Ziadna" a zadanym emptyDocId- Parameters:
list-emptyDocId- - ID prazdneho dokumentu- Returns:
-
getBasicDocDetailsByGroupRecursive
public static List<DocDetails> getBasicDocDetailsByGroupRecursive(int groupId, boolean titleIncludePath) Ziska zoznam stranok z lokalneho system adresara vratane jeho podadresarov (PRVEJ UROVNE)- Parameters:
groupId-titleIncludePath- - ak je true, bude vrateny objekt kopia povodneho a title bude upravene tak, ze obsahuje cestu (pre ciselniky)- Returns:
-
getGroup
Vrati nastaveny GroupDetails objekt- Returns:
-
getOptionsInternal
Vrati ciselnik pre moznost interny adresar- Returns:
-
getOptionsTemplates
Vrati ciselnik pre zoznam sablon -
getOptionsLanguages
Vrati ciselnik pre vyber jazyka -
getOptionsNewPageHTMLCode
Vrati ciselnik pre vyber novej stranky- Returns:
-
getOptionsSitemap
Vrati ciselnik pre moznost mapy stranok- Parameters:
isLogged-- Returns:
-
getMenuType
Vrati ciselnik pre sposob zobrazenia v menu- Parameters:
isLogged-- Returns:
-
getPerexGroups
Vrati zoznam perex groups ako OptionDto pre DT- Parameters:
recursive- - ak je nastavene na true vrati aj PerexGroupBean z podadresarov- Returns:
-
setAttributeToSubgroups
Pri zmene atributu nastavi jeho hodnotu do databazy dynamickym SQL prikazom- Parameters:
groupId- - ID adresaraattributeName- - meno DB stlpcaattributeValue- - hodnota
-
regenerateUrl
public static void regenerateUrl(int rootGroupId, Identity user, javax.servlet.http.HttpServletRequest request, boolean onlyChangeUrlInheritGroup) Pregeneruje URL adresy stranok v zadanom adresari- Parameters:
rootGroupId-user-request-onlyChangeUrlInheritGroup- //Default false, ak je true bude vykonane pregenerovanie iba pre tie kt. maju urlInheritGroup = true
-
getGroupsByTemplateId
Return list of groups (from this domain) that use specific template.- Parameters:
tempId- id of template that group must use- Returns:
- list of groups
-
getGroupsByPasswordProtected
Vrati zoznam adresarov podla zadanej skupiny pouzivatelov- Parameters:
userGroupId-- Returns:
-
getGroupIdCondition
public static List<javax.persistence.criteria.Predicate> getGroupIdCondition(int groupId, boolean recursive, javax.persistence.criteria.Root<DocDetails> root, javax.persistence.criteria.CriteriaBuilder builder) Vrati JPA podmienku pre zobrazenie podla zadaneho groupId a pripadne rekurzivneho zobrazenia- Parameters:
groupId-recursive-- Returns:
-
processFromEntity
public static DocBasic processFromEntity(DocBasic entity, ProcessItemAction action, javax.servlet.http.HttpServletRequest request, boolean addFields) Vykona nastavenie EditorFields atributov pred vratenim z REST rozhrania- Parameters:
entity-action-request-- Returns:
-
getTemplates
Vrati Templates dostupne pre dane groupId -
getAllItems
Vrati zoznam web stranok podla zadanych kriterii v options objekte pre pouzitie v DT- Parameters:
options-- Returns:
-
preparePage
public static DatatablePageImpl<DocDetails> preparePage(org.springframework.data.domain.Page<DocDetails> page, GetAllItemsDocOptions options) -
addOptions
public static void addOptions(DatatablePageImpl<DocDetails> pageImpl, GetAllItemsDocOptions options) Add options to DatatablePage object- Parameters:
pageImpl- - current response Page objectoptions- - options object
-
addOptions
public static void addOptions(DatatablePageImpl<DocDetails> pageImpl, GetAllItemsDocOptions options, boolean forceGroupId) Add options to DatatablePage object- Parameters:
pageImpl- - current response Page objectoptions- - options objectforceGroupId- - if true, force options.groupId to WebpagesService even if it's < 1
-
getBasicDocFromUrl
Vrati DocDetails (ako docDB.getBasicDocDetails) zo zadanej URL adresy Ta moze byt v tvare: http://domena.sk/adresar/stranka.html?nejakyParameter=aaa http://domena.sk/showdoc.do?docid=xxx&nejakyParameter=aaa /adresar/stranka.html /showdoc.do?docid=xxx- Parameters:
url-- Returns:
-
isTreeShowPages
Overi, ci zadany pouzivatel ma zapnute zobrazovanie web stranok v stromovej strukture- Parameters:
user-- Returns:
-
getUserFirstEditableGroup
-
getUserLastGroupId
Vrati posledne zapamatane groupId pre daneho pouzivatela, alebo prve jeho nastavene podla prav, alebo defaultne- Parameters:
user-request-- Returns:
-
addBaseSpecSearch
public static String addBaseSpecSearch(SpecSearch<DocDetails> specSearch, Map<String, String> params, List<javax.persistence.criteria.Predicate> predicates, javax.persistence.criteria.Root<DocDetails> root, javax.persistence.criteria.CriteriaBuilder builder) Get and process params as searchAuthorName, userGroupId etc.- Parameters:
specSearch-params-predicates-root-builder-- Returns:
- String value of processed param groupIdList
-
addSpecSearch
public static void addSpecSearch(Map<String, String> params, List<javax.persistence.criteria.Predicate> predicates, javax.persistence.criteria.Root<DocDetails> root, javax.persistence.criteria.CriteriaBuilder builder, Identity user) Add special conditions to search query based on request parameters -
getOneItem
public static DocDetails getOneItem(long id, int groupId, int historyId, EditorFacade editorFacade, DocAtrDefRepository docAtrDefRepository, List<NotifyBean> notifyList, javax.servlet.http.HttpServletRequest request) -
getTreeSortType
-
isTreeSortOrderAsc
-