Package com.dotmarketing.portlets.htmlpages.model

Examples of com.dotmarketing.portlets.htmlpages.model.HTMLPage


            template.setBody("<html><body>\n #parseContainer('"+container.getIdentifier()+"')\n </body></html>");
            template=APILocator.getTemplateAPI().saveTemplate(template, host, sysuser, false);

            // detail page for url mapped structure
            Folder folder=APILocator.getFolderAPI().createFolders("/detail/", host, sysuser, false);
            detailPage=new HTMLPage();
            detailPage.setFriendlyName("detail");
            detailPage.setPageUrl("detail."+pageExt);
            detailPage.setTitle("index page");
            detailPage.setTemplateId(template.getIdentifier());
            detailPage=APILocator.getHTMLPageAPI().saveHTMLPage(detailPage, template, folder, sysuser, false);
View Full Code Here


        APILocator.getFolderAPI().createFolders("/a_test/b_test/", host, sysuser, false);
        Folder Fa=APILocator.getFolderAPI().findFolderByPath("/a_test/", host, sysuser, false);
        Folder Fab=APILocator.getFolderAPI().findFolderByPath("/a_test/b_test", host, sysuser, false);

        HTMLPage page1=new HTMLPage();
        page1.setFriendlyName("index");
        page1.setPageUrl("index."+pageExt);
        page1.setTitle("index page");
        page1.setTemplateId(template.getIdentifier());
        page1=APILocator.getHTMLPageAPI().saveHTMLPage(page1, template, Fa, sysuser, false);

        HTMLPage page2=new HTMLPage();
        page2.setFriendlyName("something");
        page2.setPageUrl("something."+pageExt);
        page2.setTitle("something");
        page2.setTemplateId(template.getIdentifier());
        page2=APILocator.getHTMLPageAPI().saveHTMLPage(page2, template, Fa, sysuser, false);

        HTMLPage page3=new HTMLPage();
        page3.setFriendlyName("index");
        page3.setPageUrl("index."+pageExt);
        page3.setTitle("index page");
        page3.setTemplateId(template.getIdentifier());
        page3=APILocator.getHTMLPageAPI().saveHTMLPage(page3, template, Fab, sysuser, false);

        HTMLPage page4=new HTMLPage();
        page4.setFriendlyName("something");
        page4.setPageUrl("something."+pageExt);
        page4.setTitle("something");
        page4.setTemplateId(template.getIdentifier());
        page4=APILocator.getHTMLPageAPI().saveHTMLPage(page4, template, Fab, sysuser, false);

        extlinks=new String[] {
            page1.getURI(), page2.getURI(), page3.getURI(), page4.getURI(), // direct hit!
            "/a_test/", "/a_test/b_test", // should be good as it hits index page
            "/a_test/notnotnot_exists."+pageExt,  // a bad one!
            "?relative=yes", // should be ignored
            "#id_inside_page", // ignored too
            page2.getURI()+"?a=1&b=2" // with query string
        };

        sb=new StringBuilder("<html><body>\n");
        for(String ll : extlinks) sb.append("<a href='").append(ll).append("'>link</a>\n");
        sb.append("</body></html>");

        con=new Contentlet();
        con.setStructureInode(structure.getInode());
        con.setStringProperty("html", sb.toString());
        con=APILocator.getContentletAPI().checkin(con, sysuser, false);
        APILocator.getContentletAPI().isInodeIndexed(con.getInode());

        invalids = APILocator.getLinkCheckerAPI().findInvalidLinks(con);
        assertTrue(invalids!=null);
        assertEquals(invalids.size(),1);
        assertEquals(invalids.get(0).getUrl(),"/a_test/notnotnot_exists."+pageExt);

        ////////////////////////
        // basic urlmap links //
        ////////////////////////
        con=new Contentlet();
        con.setStructureInode(urlmapstructure.getInode());
        con.setStringProperty("a", "url1");
        con=APILocator.getContentletAPI().checkin(con, sysuser, false);
        APILocator.getContentletAPI().isInodeIndexed(con.getInode());

        con=new Contentlet();
        con.setStructureInode(urlmapstructure.getInode());
        con.setStringProperty("a", "url2");
        con=APILocator.getContentletAPI().checkin(con, sysuser, false);
        APILocator.getContentletAPI().isInodeIndexed(con.getInode());

        extlinks=new String[] {
           "/test_mapped/url1","/test_mapped/url2/", // those should be good
           "/test_mapped/url1#ignorethis",
           "/test_mapped/url2/#againignore",
           "/test_mapped/url3" // a bad one
        };
        sb=new StringBuilder("<html><body>\n");
        for(String ll : extlinks) sb.append("<a href='").append(ll).append("'>link</a>\n");
        sb.append("</body></html>");

        con=new Contentlet();
        con.setStructureInode(structure.getInode());
        con.setStringProperty("html", sb.toString());
        con=APILocator.getContentletAPI().checkin(con, sysuser, false);
        APILocator.getContentletAPI().isInodeIndexed(con.getInode());

        invalids = APILocator.getLinkCheckerAPI().findInvalidLinks(con);
        assertTrue(invalids!=null);
        assertEquals(invalids.size(),1);
        assertEquals(invalids.get(0).getUrl(),"/test_mapped/url3");

        /* Now using two hosts. In host1 we gonna put a content with a valid
         * internal link to a page. Then we add the contentlet in a page that
         * lives in another host. That should break the internal link */
        con=new Contentlet();
        con.setStringProperty("html", "<html><body>" +
                          "<a href='"+page2.getURI()+"'>thislink</a>" +
                          "<a href='"+page3.getURI()+"'>thislink</a>" +
                          "<a href='"+page4.getURI()+"'>thislink</a>" +
                      "</body></html>");
        con.setStructureInode(structure.getInode());
        con=APILocator.getContentletAPI().checkin(con, sysuser, false);
        APILocator.getContentletAPI().isInodeIndexed(con.getInode());
        MultiTree mtree=new MultiTree();
        mtree.setParent1(page1.getIdentifier());
        mtree.setParent2(container.getIdentifier());
        mtree.setChild(con.getIdentifier());
        mtree.setTreeOrder(1);
        MultiTreeFactory.saveMultiTree(mtree);

        // that should be ok. It is in the same host where those pages are valid
        invalids = APILocator.getLinkCheckerAPI().findInvalidLinks(con);
        assertTrue(invalids!=null);
        assertEquals(invalids.size(),0);

        // now lets add some salt here. If the content is added in a page in host2 it
        // should break the internal links
        Folder home=APILocator.getFolderAPI().createFolders("/home/", host2, sysuser, false);
        HTMLPage page5=new HTMLPage();
        page5.setFriendlyName("something");
        page5.setPageUrl("something."+pageExt);
        page5.setTitle("something");
        page5.setTemplateId(template.getIdentifier());
        page5=APILocator.getHTMLPageAPI().saveHTMLPage(page5, template, home, sysuser, false);

        mtree=new MultiTree();
        mtree.setParent1(page5.getIdentifier());
        mtree.setParent2(container.getIdentifier());
        mtree.setChild(con.getIdentifier());
        mtree.setTreeOrder(1);
        MultiTreeFactory.saveMultiTree(mtree);

View Full Code Here

        // folder where the page lives
        Folder folder=APILocator.getFolderAPI().createFolders(
                "/test_junit/test_"+UUIDGenerator.generateUuid().replaceAll("-", "_"), host, sysuser, false);

        // the page
        HTMLPage page=new HTMLPage();
        page.setPageUrl("testpage"+ext);
        page.setFriendlyName("testpage"+ext);
        page.setTitle("testpage"+ext);
        page=APILocator.getHTMLPageAPI().saveHTMLPage(page, template, folder, sysuser, false);

        // associate some contentlets with the page/container
        List<Contentlet> conns=APILocator.getContentletAPI().search(
                "+structureName:"+st.getVelocityVarName(), 5, 0, "moddate", sysuser, false);
        assertEquals(5, conns.size());

        for(Contentlet cc : conns) {
            MultiTreeFactory.saveMultiTree(
              new MultiTree(page.getIdentifier(),container.getIdentifier(),cc.getIdentifier()));
        }

        final String pageInode=page.getInode(),pageIdent=page.getIdentifier(),
                     templateInode=template.getInode(), templateIdent=template.getIdentifier(),
                     containerInode=container.getInode(), containerIdent=container.getIdentifier();

        // let's delete
View Full Code Here

    }

    @Test
    public void move() throws Exception {
      User sysuser=null;
      HTMLPage page=null;
      Template template=null;
      Container container=null;
      Role role=null;
      Folder folderWithPerms=null;
      Folder folder=null;

      try {
        sysuser=APILocator.getUserAPI().getSystemUser();
        Host host=APILocator.getHostAPI().findDefaultHost(sysuser, false);
        String ext="."+Config.getStringProperty("VELOCITY_PAGE_EXTENSION");

        // a container to use inside the template
        container = new Container();
        container.setFriendlyName("test container");
        container.setTitle("his is the title");
        container.setMaxContentlets(5);
        container.setPreLoop("preloop code");
        container.setPostLoop("postloop code");
        Structure st=StructureCache.getStructureByVelocityVarName("FileAsset");
        // commented by issue-2093

        List<ContainerStructure> csList = new ArrayList<ContainerStructure>();
            ContainerStructure cs = new ContainerStructure();
            cs.setStructureId(st.getInode());
            cs.setCode("this is the code");
            csList.add(cs);

        container = APILocator.getContainerAPI().save(container, csList, host, sysuser, false);

        // a template for the page
        template=new Template();
        template.setTitle("a template "+UUIDGenerator.generateUuid());
        template.setBody("<html><body> #parseContainer('"+container.getIdentifier()+"') </body></html>");
        template=APILocator.getTemplateAPI().saveTemplate(template, host, sysuser, false);

        // folder where the page gets moved from
        folder=APILocator.getFolderAPI().createFolders(
            "/test_junit/test_"+UUIDGenerator.generateUuid().replaceAll("-", "_"), host, sysuser, false);

        // the page
        page=new HTMLPage();
        page.setPageUrl("testpage"+ext);
        page.setFriendlyName("testpage"+ext);
        page.setTitle("testpage"+ext);
        page=APILocator.getHTMLPageAPI().saveHTMLPage(page, template, folder, sysuser, false);

        // folder with some perms, where the page gets moved to
        folderWithPerms=APILocator.getFolderAPI().createFolders(
            "/test_junit/test_"+UUIDGenerator.generateUuid().replaceAll("-", "_"), host, sysuser, false);
View Full Code Here

        List<MultiTree> multiTrees = MultiTreeFactory.getMultiTreeByChild( identifier.getInode() );
        for ( MultiTree multitree : multiTrees ) {
            //Get the Identifiers of the related pages
            Identifier htmlPageIdentifier = APILocator.getIdentifierAPI().find( multitree.getParent1() );
            //Get the pages
            HTMLPage htmlPage = ( HTMLPage ) APILocator.getVersionableAPI().findLiveVersion( htmlPageIdentifier, APILocator.getUserAPI().getSystemUser(), false );

            //OK..., lets try to find this page in the cache...
            HTMLPage foundPage = ( HTMLPage ) CacheLocator.getCacheAdministrator().get( "HTMLPageCache" + htmlPage.getIdentifier(), "HTMLPageCache" );

            //Validations
            assertTrue( foundPage == null || ( foundPage.getInode() == null || foundPage.getInode().equals( "" ) ) );
        }
    }
View Full Code Here

      APILocator.getFolderAPI().save( testFolder, user, false );


      // HTMLPAGE
      HTMLPage htmlPage = new HTMLPage();

      htmlPage.setEndDate( new Date() );
      htmlPage.setFriendlyName( "newstest-detail.html" );
      htmlPage.setIDate( new Date() );
      htmlPage.setMetadata( "" );
      htmlPage.setModDate( new Date() );
      htmlPage.setModUser( user.getUserId() );
      htmlPage.setOwner( user.getUserId() );
      htmlPage.setPageUrl( "newstest-detail.html" );
      htmlPage.setRedirect( "" );
      htmlPage.setShowOnMenu( true );
      htmlPage.setSortOrder( 2 );
      htmlPage.setStartDate( new Date() );
      htmlPage.setTitle( "News Test Detail" );
      htmlPage.setType( "htmlpage" );
      htmlPage.setWebEndDate( "" );
      htmlPage.setWebStartDate( "" );

      htmlPage = APILocator.getHTMLPageAPI().saveHTMLPage( htmlPage, template, testFolder, user, false );

      PermissionAPI permissionAPI = APILocator.getPermissionAPI();
      RoleAPI roleAPI = APILocator.getRoleAPI();

      Permission newPermission = new Permission( htmlPage.getPermissionId(), roleAPI.loadCMSAnonymousRole().getId(), PermissionAPI.PERMISSION_READ, true );
      permissionAPI.save( newPermission, htmlPage, user, false );

      //Make it working and live
      APILocator.getVersionableAPI().setWorking( htmlPage );
      APILocator.getVersionableAPI().setLive( htmlPage );

      // WIDGET


      widget = new Contentlet();
      widget.setReviewInterval("1m");
      widget.setStructureInode(simpleWidgetSt.getInode());
      widget.setHost(demoHost.getIdentifier());

      Field widgetTitle =  simpleWidgetSt.getFieldVar("widgetTitle");
      Field widgetCode = simpleWidgetSt.getFieldVar("code");


      ContentletAPI contentletAPI = APILocator.getContentletAPI();

      contentletAPI.setContentletProperty( widget, widgetTitle, "newsTestWidget" );
      contentletAPI.setContentletProperty( widget, widgetCode, "$URLMapContent.story" );

      widget = contentletAPI.checkin( widget, null, permissionAPI.getPermissions( simpleWidgetSt ), user, false );
      APILocator.getVersionableAPI().setLive(widget);

      // add the widget to the detail page
      MultiTreeFactory.saveMultiTree( new MultiTree( htmlPage.getIdentifier(), container.getIdentifier(), widget.getIdentifier() ) );

     
      // STRUCTURE
      testSt = new Structure();

      testSt.setDefaultStructure( false );
      testSt.setDescription( "News Test" );
      testSt.setFixed( false );
      testSt.setIDate( new Date() );
      testSt.setName( "NewsTest" +salt);
      testSt.setOwner( user.getUserId() );
      testSt.setStructureType( Structure.STRUCTURE_TYPE_CONTENT );
      testSt.setType( "structure" );
      testSt.setVelocityVarName( "NewsTest" +salt );
      testSt.setUrlMapPattern("/newstest"+salt+"/{urlNewsTitle}");
      testSt.setDetailPage( htmlPage.getIdentifier() );

      StructureFactory.saveStructure( testSt );

      //Creating and adding permissions
      Permission permissionRead = new Permission( testSt.getInode(), roleAPI.loadCMSAnonymousRole().getId(), PermissionAPI.PERMISSION_READ );
View Full Code Here

TOP

Related Classes of com.dotmarketing.portlets.htmlpages.model.HTMLPage

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.