001/* 002 * (C) Copyright 2006-2009 Nuxeo SAS <http://nuxeo.com> and others 003 * 004 * All rights reserved. This program and the accompanying materials 005 * are made available under the terms of the Eclipse Public License v1.0 006 * which accompanies this distribution, and is available at 007 * http://www.eclipse.org/legal/epl-v10.html 008 * 009 * Contributors: 010 * Jean-Marc Orliaguet, Chalmers 011 * 012 * $Id$ 013 */ 014 015package org.nuxeo.theme.webengine.fm.filters.widgets; 016 017import org.nuxeo.theme.models.Region; 018import org.nuxeo.theme.rendering.RenderingInfo; 019import org.nuxeo.theme.views.AbstractView; 020 021public final class BlockRegionView extends AbstractView { 022 023 @Override 024 public String render(final RenderingInfo info) { 025 final Region region = (Region) info.getModel(); 026 final StringBuilder s = new StringBuilder(); 027 if ("".equals(region.name)) { 028 s.append("<div class=\"nxthemesRegionNotSet\">").append("No region name is set...").append("</div>"); 029 } else { 030 s.append("<div class=\"themeRegion\">"); 031 s.append("<@block name=\"").append(region.name).append("\">"); 032 if ("".equals(region.defaultSrc)) { 033 s.append(region.defaultBody); 034 } else { 035 s.append("<#include \"").append(region.defaultSrc).append("\" />"); 036 } 037 s.append("</@block>"); 038 s.append("</div>"); 039 } 040 return s.toString(); 041 } 042 043}