Class WebpagesService

java.lang.Object
sk.iway.iwcm.editor.service.WebpagesService

public class WebpagesService extends Object
Priprava zoznamu web stranok a pridruzenych ciselnikov pre DT. Servis je potrebne konstruovat so zadanym group_id, podla neho sa nasledne vracaju data.
  • Field Details

  • Constructor Details

    • WebpagesService

      public WebpagesService()
    • WebpagesService

      public WebpagesService(int groupId, Identity user, Prop prop, javax.servlet.http.HttpServletRequest request)
  • Method Details

    • filterGroupsByCurrentDomain

      public static List<GroupDetails> filterGroupsByCurrentDomain(List<GroupDetails> groups)
      Ponecha v zozname len adresare z aktualne nastavenej domeny
      Parameters:
      groups -
      Returns:
    • getTemplates

      public List<TemplateDetails> getTemplates(boolean recursive)
      Vrati zoznam dostupnych sablon
      Parameters:
      recursive - - ak je true vratia sa aj sablony z podadresarov
      Returns:
    • getRootGroup

      public static GroupDetails getRootGroup()
      Vrati fiktivny korenovy adresar, je potrebny pre zobrazenie v stromovej strukture v editore ked je mozne vybrat aj korenovy adresar
      Returns:
    • getGroup

      public static GroupDetails getGroup(int groupId)
      Vrati GroupDetails objekt podla zadaneho groupId
      Parameters:
      groupId -
      Returns:
    • getBasicDoc

      public static DocDetails getBasicDoc(int docId)
      Vrati DocDetails z cache (BasicDoc), je mozne zadat aj -1 pre vratenie cisteho dokumentu
      Parameters:
      docId -
      Returns:
    • getHeaderList

      public List<DocDetails> getHeaderList(boolean addFromTemplateAndEmptyToSelect)
      Vrati zoznam hlaviciek pre zobrazenie v DT/e
      Parameters:
      addFromTemplateAndEmptyToSelect -
      Returns:
    • getMenuList

      public List<DocDetails> getMenuList(boolean addFromTemplateAndEmptyToSelect)
      Vrati zoznam menu pre zobrazenie v DT/e
      Parameters:
      addFromTemplateAndEmptyToSelect -
      Returns:
    • getHeaderFooterMenuList

      public List<DocDetails> getHeaderFooterMenuList(boolean addFromTemplateAndEmptyToSelect)
      Vrati zoznam hlaviciek/paticiek pre zobrazenie v DT/e
      Parameters:
      addFromTemplateAndEmptyToSelect -
      Returns:
    • addFromTemlateDoc

      public List<DocDetails> addFromTemlateDoc(List<DocDetails> list)
      Do zoznamu DocDetails objektov prida na prvu poziciu fiktivny DocDetails s hodnotou "Zo sablony" a id -2
      Parameters:
      list -
      Returns:
    • addEmptyDoc

      public List<DocDetails> addEmptyDoc(List<DocDetails> list, int emptyDocId)
      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

      public GroupDetails getGroup()
      Vrati nastaveny GroupDetails objekt
      Returns:
    • getOptionsInternal

      public List<LabelValueDetails> getOptionsInternal()
      Vrati ciselnik pre moznost interny adresar
      Returns:
    • getOptionsTemplates

      public List<LabelValueDetails> getOptionsTemplates(UserDetails currentUser, GroupDetails group)
      Vrati ciselnik pre zoznam sablon
    • getOptionsLanguages

      public List<LabelValueDetails> getOptionsLanguages(javax.servlet.http.HttpServletRequest request)
      Vrati ciselnik pre vyber jazyka
    • getOptionsNewPageHTMLCode

      public List<LabelValueDetails> getOptionsNewPageHTMLCode()
      Vrati ciselnik pre vyber novej stranky
      Returns:
    • getOptionsNavbar

      public List<LabelValueDetails> getOptionsNavbar(boolean isLogged)
      Vrati ciselnik pre moznosti navigacnej listy
      Parameters:
      isLogged -
      Returns:
    • getOptionsSitemap

      public List<LabelValueDetails> getOptionsSitemap(boolean isLogged)
      Vrati ciselnik pre moznost mapy stranok
      Parameters:
      isLogged -
      Returns:
    • getMenuType

      public List<LabelValueDetails> getMenuType(boolean isLogged)
      Vrati ciselnik pre sposob zobrazenia v menu
      Parameters:
      isLogged -
      Returns:
    • getPerexGroups

      public List<PerexGroupBean> getPerexGroups(boolean recursive)
      Vrati zoznam PerexGroupBean objektov
      Parameters:
      recursive - - ak je nastavene na true vrati aj PerexGroupBean z podadresarov
      Returns:
    • setAttributeToSubgroups

      public void setAttributeToSubgroups(int groupId, String attributeName, Object attributeValue)
      Pri zmene atributu nastavi jeho hodnotu do databazy dynamickym SQL prikazom
      Parameters:
      groupId - - ID adresara
      attributeName - - meno DB stlpca
      attributeValue - - 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

      public List<GroupDetails> getGroupsByTemplateId(int tempId)
      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

      public List<GroupDetails> getGroupsByPasswordProtected(int userGroupId)
      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

      public List<TemplateDetails> getTemplates(int mustHaveTempId, boolean recursive)
      Vrati Templates dostupne pre dane groupId
    • getAllItems

      public static DatatablePageImpl<DocDetails> getAllItems(GetAllItemsDocOptions options)
      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 object
      options - - options object
    • getBasicDocFromUrl

      public static DocDetails getBasicDocFromUrl(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=xxx
      Parameters:
      url -
      Returns:
    • isTreeShowPages

      public static boolean isTreeShowPages(UserDetails user)
      Overi, ci zadany pouzivatel ma zapnute zobrazovanie web stranok v stromovej strukture
      Parameters:
      user -
      Returns:
    • getUserFirstEditableGroup

      public static int getUserFirstEditableGroup(Identity user)
    • getUserLastGroupId

      public static int getUserLastGroupId(Identity user, javax.servlet.http.HttpServletRequest request)
      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

      public static String getTreeSortType(UserDetails user)
    • isTreeSortOrderAsc

      public static boolean isTreeSortOrderAsc(UserDetails user)