Package com.dotmarketing.portlets.templates.model

Examples of com.dotmarketing.portlets.templates.model.Template


        String title = null;
        String drawedBody;
        if ( UtilMethods.isSet( themeInode ) ) {
            Identifier ident = APILocator.getIdentifierAPI().findFromInode( themeInode );
           
            Template template = APILocator.getTemplateAPI().findWorkingTemplate(ident.getId(), sysUser, false);

            if ( !template.getInode().equals( themeInode ) ) {
                template = (Template) InodeFactory.getInode( themeInode, Template.class );
            }

            drawedBody = ((Template) template).getDrawedBody();
            title = template.getTitle();
        } else {
            drawedBody = (String) request.getAttribute( "designedBody" );
            if ( request.getAttribute( "title" ) != null ) {
                title = (String) request.getAttribute( "title" );
            }
View Full Code Here


 
  @SuppressWarnings("unchecked")

  public Template find(String inode) throws DotStateException, DotDataException {
   
    Template template = templateCache.get(inode);
   
    if(template==null){
   
   
      HibernateUtil hu = new HibernateUtil(Template.class);
      template = (Template) hu.load(inode);
      if(template != null && template.getInode() != null)
        templateCache.add(inode, template);
    }
    return template;
  }
View Full Code Here

  @Override
  public Template copyTemplate(Template currentTemplate, Host host) throws DotDataException, DotSecurityException {
    if(currentTemplate ==null){
      throw new DotDataException("Template is null");
    }
    Template newTemplate = new Template();

    try {
      BeanUtils.copyProperties(newTemplate, currentTemplate);
    } catch (Exception e1) {
      Logger.error(TemplateFactoryImpl.class,e1.getMessage(),e1);
      throw new DotDataException(e1.getMessage());
    }
    newTemplate.setInode(null);
    newTemplate.setModDate(new Date());
    newTemplate.setDrawed(currentTemplate.isDrawed());
    newTemplate.setDrawedBody(currentTemplate.getDrawedBody());
    newTemplate.setImage(currentTemplate.getImage());
    newTemplate.setIdentifier(null);
    String newTemplateName = currentTemplate.getTitle();
    String testName = currentTemplate.getTitle();

    if(RegEX.contains(newTemplateName, " - [0-9]+$")){
      newTemplateName = newTemplateName.substring(0,newTemplateName.lastIndexOf("-")).trim();
    }
   
   
   
    Template test = null;
    for(int iter=1;iter<100000;iter++){   
      try{
        test = findWorkingTemplateByName(testName, host);
      }
      catch(Exception e){
        Logger.debug(this.getClass(), e.getMessage());
        break;
      }
      if(test != null && UtilMethods.isSet(test.getInode())){
        testName = newTemplateName + " - " + iter ;
      }
      else{
        newTemplateName = testName;
        break;
View Full Code Here

   * @param templateInode
   * @param theme
   *
   */
   public void updateThemeWithoutVersioning(String templateInode, String theme) throws DotDataException{
     Template templateToUpdate = find(templateInode);
     templateToUpdate.setTheme(theme);
       HibernateUtil.saveOrUpdate(templateToUpdate);
       templateCache.add(templateToUpdate.getInode(), templateToUpdate);
       TemplateServices.invalidate(templateToUpdate, true);
   };
View Full Code Here

    if (!permissionAPI.doesUserHavePermission(destination, PermissionAPI.PERMISSION_WRITE, user, respectFrontendRoles)) {
      throw new DotSecurityException("You don't have permission to write in the destination folder.");
    }

    boolean isNew = false;
    Template newTemplate;
    if (forceOverwrite) {
      newTemplate = FactoryLocator.getTemplateFactory().findWorkingTemplateByName(sourceTemplate.getTitle(), destination);
      if (newTemplate == null) {
        isNew = true;
        newTemplate  =templateFactory.copyTemplate(sourceTemplate, destination);
      }
    } else {
      isNew = true;
      newTemplate  =templateFactory.copyTemplate(sourceTemplate, destination);
    }


    newTemplate.setModDate(new Date());
    newTemplate.setModUser(user.getUserId());


    updateParseContainerSyntax(newTemplate);
    newTemplate.setBody(replaceWithNewContainerIds(newTemplate.getBody(), containerMappings));
    newTemplate.setDrawedBody(replaceWithNewContainerIds(newTemplate.getDrawedBody(), containerMappings));

    if (isNew) {
      // creates new identifier for this webasset and persists it
      Identifier newIdentifier = com.dotmarketing.business.APILocator.getIdentifierAPI().createNew(newTemplate, destination);
      Logger.debug(TemplateFactory.class, "Parent newIdentifier=" + newIdentifier.getInode());

      newTemplate.setIdentifier(newIdentifier.getInode());
      // persists the webasset
      save(newTemplate);
      List<Container> destinationContainers = getContainersInTemplate(newTemplate, user, respectFrontendRoles);
      associateContainers(destinationContainers, newTemplate);
View Full Code Here

        existingId = ident==null || !UtilMethods.isSet(ident.getId());
    }

      if(UtilMethods.isSet(template.getInode())) {
          try {
              Template existing=(Template) HibernateUtil.load(Template.class, template.getInode());
              existingInode = existing==null || !UtilMethods.isSet(existing.getInode());
          }
          catch(Exception ex) {
              existingInode=true;
          }
      }

      Template oldTemplate = !existingId && UtilMethods.isSet(template.getIdentifier())
        ?findWorkingTemplate(template.getIdentifier(), user, respectFrontendRoles)
            :null;


    if ((oldTemplate != null) && InodeUtils.isSet(oldTemplate.getInode())) {
      if (!permissionAPI.doesUserHavePermission(oldTemplate, PermissionAPI.PERMISSION_READ, user, respectFrontendRoles)) {
        throw new DotSecurityException("You don't have permission to read the source file.");
      }
    }

    if (!permissionAPI.doesUserHavePermission(destination, PermissionAPI.PERMISSION_CAN_ADD_CHILDREN, user, respectFrontendRoles)) {
      throw new DotSecurityException("You don't have permission to wirte in the destination folder.");
    }

    if (!permissionAPI.doesUserHavePermissions(PermissionableType.TEMPLATES, PermissionAPI.PERMISSION_EDIT, user)) {
      throw new DotSecurityException("You don't have permission to edit templates.");
    }


    //gets identifier from the current asset
    Identifier identifier = null;
    if (oldTemplate != null) {
      templateFactory.deleteFromCache(oldTemplate);
      identifier = identifierAPI.findFromInode(oldTemplate.getIdentifier());
    }
    else{
      identifier = (!existingId) ? APILocator.getIdentifierAPI().createNew(template, destination) :
                                   APILocator.getIdentifierAPI().createNew(template, destination, template.getIdentifier());
      template.setIdentifier(identifier.getId());
View Full Code Here

  }

  @Override
  public Template find(String inode, User user,  boolean respectFrontEndRoles) throws DotSecurityException,
      DotDataException {
    Template t =  templateFactory.find(inode);
    if(t!=null && InodeUtils.isSet(t.getInode()) &&
          !permissionAPI.doesUserHavePermission(t, PermissionAPI.PERMISSION_READ, user, respectFrontEndRoles)){
      throw new DotSecurityException("User does not have access to template:" + inode);
    }
    return t;
View Full Code Here

  }


  public String checkDependencies(String templateInode, User user, Boolean respectFrontendRoles) throws PortalException, SystemException, DotDataException, DotSecurityException {
    String result = null;
    Template template = (Template) InodeFactory.getInode(templateInode, Template.class);
    // checking if there are pages using this template
    List<HTMLPage> pages=APILocator.getTemplateAPI().getPagesUsingTemplate(template, user, respectFrontendRoles);

    if(pages.size()>0) {
      StringBuilder names=new StringBuilder();
View Full Code Here

   * @param respectFrontEndRoles
   * @throws DotSecurityException
   * @throws DotDataException
   */
    public void invalidateTemplatePages(String templateInode, User user, boolean live, boolean respectFrontEndRoles) throws DotSecurityException, DotDataException{
      Template template = find(templateInode, user, respectFrontEndRoles);
      List<HTMLPage> pagesForThisTemplate = APILocator.getTemplateAPI().getPagesUsingTemplate(template, APILocator.getUserAPI().getSystemUser(), false);
      for (HTMLPage page : pagesForThisTemplate) {
        //writes the page to a file
        PageServices.invalidate(page,live);
      }
View Full Code Here

    int read = -1;
    while ((read = in.read()) != -1) {
      sw.write(read);
    }
    Template t = new Template();
    t.setTitle(newName);
    t.setiDate(new Date());
    t.setModDate(new Date());
    t.setBody(sw.toString());
    try {
      tapi.saveTemplate(t, host, user, false);
    } catch (DotDataException e) {
      Logger.error(this.getClass(), "Cannot save template " + t.getTitle() + " on host " + host.getHostname()
          + " " + e.getMessage());

    } catch (DotSecurityException e) {
      Logger.error(this.getClass(), "Cannot save template " + t.getTitle() + " on host " + host.getHostname()
          + " " + e.getMessage());
    }

    TemplateFileResourceImpl tfri = new TemplateFileResourceImpl(t, host);
    return tfri;
View Full Code Here

TOP

Related Classes of com.dotmarketing.portlets.templates.model.Template

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.