You are viewing a plain text version of this content. The canonical link for it is here.
Posted to graffito-commits@incubator.apache.org by cl...@apache.org on 2005/01/27 22:29:22 UTC
svn commit: r128436 - in incubator/graffito/trunk/portlets/src: java/org/apache/portals/graffito/portlets java/org/apache/portals/graffito/portlets/resources webapp/WEB-INF webapp/WEB-INF/tabs webapp/WEB-INF/velocity webapp/WEB-INF/view webapp/WEB-INF/view/document webapp/WEB-INF/view/folder webapp/WEB-INF/view/security
Author: clombart
Date: Thu Jan 27 14:29:21 2005
New Revision: 128436
URL: http://svn.apache.org/viewcvs?view=rev&rev=128436
Log:
Continue to work on the ContentBrowser portlet:
* In the view mode : display content tree with a simple folder navigator. when a user click on doc, a corresponding viewer is used in fonction of the document type.
* In the edit mode : it is possible to manage folders and documents.
Added:
incubator/graffito/trunk/portlets/src/webapp/WEB-INF/view/document/
incubator/graffito/trunk/portlets/src/webapp/WEB-INF/view/document/document-text-edit.vm
incubator/graffito/trunk/portlets/src/webapp/WEB-INF/view/document/document-text-view.vm
incubator/graffito/trunk/portlets/src/webapp/WEB-INF/view/document/document-type.vm
incubator/graffito/trunk/portlets/src/webapp/WEB-INF/view/document/document.vm
- copied, changed from r126056, incubator/graffito/trunk/portlets/src/webapp/WEB-INF/view/document.vm
incubator/graffito/trunk/portlets/src/webapp/WEB-INF/view/folder/
incubator/graffito/trunk/portlets/src/webapp/WEB-INF/view/folder/folder-browser.vm
incubator/graffito/trunk/portlets/src/webapp/WEB-INF/view/folder/folder-detail.vm
incubator/graffito/trunk/portlets/src/webapp/WEB-INF/view/folder/folder-edit.vm
incubator/graffito/trunk/portlets/src/webapp/WEB-INF/view/security/
incubator/graffito/trunk/portlets/src/webapp/WEB-INF/view/security/security.vm
- copied unchanged from r126056, incubator/graffito/trunk/portlets/src/webapp/WEB-INF/view/security.vm
Removed:
incubator/graffito/trunk/portlets/src/webapp/WEB-INF/view/document.vm
incubator/graffito/trunk/portlets/src/webapp/WEB-INF/view/edit.vm
incubator/graffito/trunk/portlets/src/webapp/WEB-INF/view/folder.vm
incubator/graffito/trunk/portlets/src/webapp/WEB-INF/view/security.vm
incubator/graffito/trunk/portlets/src/webapp/WEB-INF/view/view.vm
Modified:
incubator/graffito/trunk/portlets/src/java/org/apache/portals/graffito/portlets/BrowserInfo.java
incubator/graffito/trunk/portlets/src/java/org/apache/portals/graffito/portlets/BrowserPortlet.java
incubator/graffito/trunk/portlets/src/java/org/apache/portals/graffito/portlets/resources/messages.properties
incubator/graffito/trunk/portlets/src/webapp/WEB-INF/portlet.xml
incubator/graffito/trunk/portlets/src/webapp/WEB-INF/tabs/tabs.xml
incubator/graffito/trunk/portlets/src/webapp/WEB-INF/velocity/graffito-macros.vm
Modified: incubator/graffito/trunk/portlets/src/java/org/apache/portals/graffito/portlets/BrowserInfo.java
Url: http://svn.apache.org/viewcvs/incubator/graffito/trunk/portlets/src/java/org/apache/portals/graffito/portlets/BrowserInfo.java?view=diff&rev=128436&p1=incubator/graffito/trunk/portlets/src/java/org/apache/portals/graffito/portlets/BrowserInfo.java&r1=128435&p2=incubator/graffito/trunk/portlets/src/java/org/apache/portals/graffito/portlets/BrowserInfo.java&r2=128436
==============================================================================
--- incubator/graffito/trunk/portlets/src/java/org/apache/portals/graffito/portlets/BrowserInfo.java (original)
+++ incubator/graffito/trunk/portlets/src/java/org/apache/portals/graffito/portlets/BrowserInfo.java Thu Jan 27 14:29:21 2005
@@ -20,14 +20,17 @@
import org.apache.portals.graffito.model.Server;
/**
- * Information on the current content folder displayed in the Graffito Browser Portlet
+ * Information on the current content folder displayed in the Graffito Browser Portlet.
+ * This is the DTO used between the velocity template et the portlet methods
*
* @author <a href="mailto:christophe.lombart@sword-technologies.com">Lombart Christophe </a>
* @version $Id: Exp $
*/
public class BrowserInfo
-{
-
+{
+ /** All document type available */
+ public static String[] DOCUMENT_TYPES = { "document.type.upload", "document.type.text", "document.type.html", "document.type.news" };
+
/** Current folder display in the Browser portlet, can be null if it is a server root folder */
private Folder currentFolder;
@@ -43,6 +46,41 @@
/** Folder children found in the current folder */
private Collection folders;
+ /** All document types that can be created */
+ private ArrayList documentTypes = new ArrayList();
+
+ /** All document languages can be used */
+ private Collection languages = new ArrayList();
+
+ /**
+ * Contructor
+ *
+ * @param documentTypes list of all available document types
+ * @param languages list of all available languages
+ */
+ public BrowserInfo (Collection documentTypes, Collection languages)
+ {
+ this.documentTypes.addAll(documentTypes);
+ this.languages.addAll(languages);
+ }
+
+ /**
+ * Get all document type that can be created in this Graffito application
+ * @return all document types (collection of String)
+ */
+ public Collection getDocumentTypes()
+ {
+ return documentTypes;
+ }
+
+ /**
+ * Get all document type that can be created in this Graffito application
+ * @return all document types (collection of String)
+ */
+ public Collection getDocumentLanguages()
+ {
+ return languages;
+ }
/**
* @return Returns the document children.
Modified: incubator/graffito/trunk/portlets/src/java/org/apache/portals/graffito/portlets/BrowserPortlet.java
Url: http://svn.apache.org/viewcvs/incubator/graffito/trunk/portlets/src/java/org/apache/portals/graffito/portlets/BrowserPortlet.java?view=diff&rev=128436&p1=incubator/graffito/trunk/portlets/src/java/org/apache/portals/graffito/portlets/BrowserPortlet.java&r1=128435&p2=incubator/graffito/trunk/portlets/src/java/org/apache/portals/graffito/portlets/BrowserPortlet.java&r2=128436
==============================================================================
--- incubator/graffito/trunk/portlets/src/java/org/apache/portals/graffito/portlets/BrowserPortlet.java (original)
+++ incubator/graffito/trunk/portlets/src/java/org/apache/portals/graffito/portlets/BrowserPortlet.java Thu Jan 27 14:29:21 2005
@@ -16,6 +16,7 @@
package org.apache.portals.graffito.portlets;
import java.io.IOException;
+import java.util.ArrayList;
import java.util.Date;
import javax.portlet.ActionRequest;
@@ -32,6 +33,8 @@
import org.apache.portals.graffito.ContentModelService;
import org.apache.portals.graffito.ContentServerService;
import org.apache.portals.graffito.exception.ContentManagementException;
+import org.apache.portals.graffito.model.CmsObject;
+import org.apache.portals.graffito.model.Document;
import org.apache.portals.graffito.model.Folder;
import org.apache.portals.graffito.util.CmsUtil;
import org.apache.velocity.context.Context;
@@ -40,17 +43,17 @@
* Graffito Content Browser.
*
* In the view mode, this browser gives a way to navigate across the complete content tree.
- * In the edit mode, this browser can manager folders & documents (edit, add, manage security, versionning, ...).
+ * In the edit mode, this browser can manager folders & documents (edit, add, delete, manage security, versionning, ...).
*
* @author <a href="mailto:christophe.lombart@sword-technologies.com">Christophe Lombart</a>
* @version $Id: BrowserPortlet.java,v 1.1 2004/12/28 14:29:11 christophe Exp $
*/
public class BrowserPortlet extends GenericTabVelocityPortlet
{
-
+
/** Velocity variable to set the browser info object in the Velocity context */
private static final String VELOCITY_BROWSER_INFO = "browserInfo";
-
+
/** Portlet session attribute name used to set the Browser info*/
private static final String SESSION_BROWSER_INFO = "graffito.browser.info";
@@ -60,8 +63,14 @@
/** Portlet preference attritube containing the root uri used to display the content browser */
private static final String CONTENT_SCOPE = "gaffito.content.scope";
+ /** Portlet init param containing all available document types */
+ private ArrayList documentTypes = new ArrayList();
+
+ /** Portlet init param containing all available document languages */
+ private ArrayList documentLanguages = new ArrayList();
+
private ContentModelService modelService;
-
+
private ContentServerService serverService;
/**
@@ -70,9 +79,9 @@
public void init(PortletConfig config) throws PortletException
{
super.init(config);
-
- PortletContext context = getPortletContext();
-
+
+ PortletContext context = getPortletContext();
+
modelService = (ContentModelService) context.getAttribute("cps:ContentModel");
if (null == modelService)
{
@@ -84,7 +93,22 @@
{
throw new PortletException("Failed to find the content server service on portlet initialization");
}
-
+
+ String param = config.getInitParameter("DocumentTypes");
+ if (null == param)
+ {
+ throw new PortletException("Failed to read the init paramater : DocumentTypes");
+ }
+ initDocumentTypes(param);
+
+ param = config.getInitParameter("DocumentLanguages");
+ if (null == param)
+ {
+ throw new PortletException("Failed to read the init paramater : DocumentLanguages");
+ }
+
+ initDocumentLanguages(param);
+
}
/**
@@ -92,42 +116,29 @@
*/
public void doView(RenderRequest request, RenderResponse response) throws PortletException, IOException
{
-
+
response.setContentType("text/html");
- Context velocityContext = this.getContext(request);
-
- try
+ Context velocityContext = this.getContext(request);
+
+ BrowserInfo browserInfo = null;
+ String uri = request.getParameter("uri");
+ if (uri == null)
{
- BrowserInfo browserInfo = null;
- String uri = request.getParameter("uri");
- if (uri == null)
- {
- uri = this.getDefaultContentScope(request);
- browserInfo = this.getSessionBrowserInfo(request);
- }
-
- if (null == browserInfo)
- {
- browserInfo = new BrowserInfo();
- browserInfo.setDocuments(modelService.getDocuments(uri));
- browserInfo.setFolders(modelService.getFolders(uri));
- browserInfo.setCurrentFolder(modelService.getFolder(uri));
- String scopeServer = CmsUtil.getServerScope(uri);
- browserInfo.setCurrentServer(serverService.getServer(scopeServer));
-
- this.setSessionContentBrowser(request, browserInfo);
- }
-
- velocityContext.put(VELOCITY_BROWSER_INFO, browserInfo);
+ uri = this.getDefaultContentScope(request);
+ browserInfo = this.getSessionBrowserInfo(request);
}
- catch (ContentManagementException e)
+
+ if (null == browserInfo)
{
- throw new PortletException("Failed to view the portlet - impossible to access to Graffito content store : " + e.getMessage());
+ browserInfo = this.initBrowserInfo(uri, request, response);
+ this.setSessionContentBrowser(request, browserInfo);
}
-
- super.doView(request, response);
+ this.selectViewTemplate(browserInfo, request, response );
+ velocityContext.put(VELOCITY_BROWSER_INFO, browserInfo);
+ super.doView(request, response);
+
}
/**
@@ -136,12 +147,12 @@
public void doEdit(RenderRequest request, RenderResponse response) throws PortletException, IOException
{
- response.setContentType("text/html");
-
- BrowserInfo browserInfo = this.getSessionBrowserInfo(request);
+ response.setContentType("text/html");
+
+ BrowserInfo browserInfo = this.getSessionBrowserInfo(request);
Context velocityContext = this.getContext(request);
velocityContext.put(VELOCITY_BROWSER_INFO, browserInfo);
-
+
super.doEdit(request, response);
}
@@ -151,41 +162,60 @@
public void processAction(ActionRequest request, ActionResponse response) throws PortletException, IOException
{
-
if (request.getPortletMode() == PortletMode.EDIT)
- {
-
-
+ {
+
String action = request.getParameter("folder.add");
- if (action!=null)
+ if (action != null)
{
this.createFolder(request, response);
return;
}
-
+
action = request.getParameter("document.add");
- if (action!=null)
+ if (action != null)
{
- response.setRenderParameter(PARAM_EDIT_PAGE, "/WEB-INF/view/document.vm");
+ this.createDocument(request, response);
+ return;
+ }
+
+ action = request.getParameter("document.new.step2");
+ if (action != null)
+ {
+ this.createDocumentStep2(request, response);
return;
}
action = request.getParameter("folder.save");
- if (action!=null)
+ if (action != null)
{
- this.saveFolder(request, response);
+ this.saveFolder(request, response);
return;
}
-
+
+ action = request.getParameter("document.save");
+ if (action != null)
+ {
+ this.saveDocument(request, response);
+ return;
+ }
+
+ action = request.getParameter("cmsobject.delete");
+ if (action != null)
+ {
+ this.deleteCmsObject(request, response);
+ return;
+ }
+
action = request.getParameter("cancel");
- if (action!=null)
+ if (action != null)
{
- response.setRenderParameter(PARAM_EDIT_PAGE, "/WEB-INF/view/edit.vm" );
+ response.setRenderParameter(PARAM_EDIT_PAGE, "/WEB-INF/view/folder/folder-edit.vm");
return;
- }
-
- super.processAction(request, response);
-
+ }
+
+ super.processAction(request, response);
+
}
}
@@ -199,71 +229,282 @@
{
request.getPortletSession().setAttribute(SESSION_BROWSER_INFO, browserInfo);
}
-
+
protected void removeSessionContentBrowser(PortletRequest request)
{
request.getPortletSession().removeAttribute(SESSION_BROWSER_INFO);
- }
+ }
protected String getDefaultContentScope(PortletRequest request)
{
+
return request.getPreferences().getValue(CONTENT_SCOPE, DEFAULT_CONTENT_SCOPE);
- }
-
+ }
+
protected void createFolder(ActionRequest request, ActionResponse response) throws PortletException
{
-
+
try
{
- BrowserInfo browserInfo = this.getSessionBrowserInfo(request);
- Folder folder = modelService.createFolder();
+ BrowserInfo browserInfo = this.getSessionBrowserInfo(request);
+ Folder folder = modelService.createFolder();
browserInfo.setCurrentCmsObject(folder);
this.setSessionContentBrowser(request, browserInfo);
- response.setRenderParameter(PARAM_EDIT_PAGE, "/WEB-INF/view/folder.vm");
+ response.setRenderParameter(PARAM_EDIT_PAGE, "/WEB-INF/view/folder/folder-detail.vm");
}
catch (ContentManagementException e)
{
throw new PortletException("Impossible to create a folder ", e);
- }
+ }
}
-
+
+ protected void createDocument(ActionRequest request, ActionResponse response) throws PortletException
+ {
+
+ try
+ {
+ BrowserInfo browserInfo = this.getSessionBrowserInfo(request);
+ Document document = modelService.createDocument();
+ browserInfo.setCurrentCmsObject(document);
+ this.setSessionContentBrowser(request, browserInfo);
+ response.setRenderParameter(PARAM_EDIT_PAGE, "/WEB-INF/view/document/document-type.vm");
+ }
+ catch (ContentManagementException e)
+ {
+ throw new PortletException("Impossible to create a document ", e);
+ }
+ }
+
+ protected void createDocumentStep2(ActionRequest request, ActionResponse response) throws PortletException
+ {
+
+ // try
+ // {
+ BrowserInfo browserInfo = this.getSessionBrowserInfo(request);
+ Document document = (Document) browserInfo.getCurrentCmsObject();
+ String name = request.getParameter("name");
+ String title = request.getParameter("title");
+ String description = request.getParameter("description");
+ String owner = request.getParameter("owner");
+ String language = request.getParameter("language");
+
+ document.setCreationDate(new Date());
+ document.setDescription(description);
+ document.setLastModified(new Date());
+ document.setName(name);
+ document.setTitle(title);
+ document.setOwner(owner);
+ document.setLanguage(language);
+
+ String parentFolderUri = null;
+ if (browserInfo.getCurrentFolder() == null)
+ {
+ parentFolderUri = browserInfo.getCurrentServer().getScope();
+ }
+ else
+ {
+ parentFolderUri = browserInfo.getCurrentFolder().getUri();
+ }
+
+ document.setUri(parentFolderUri + "/" + name);
+ document.setVersionNumber("1.0");
+
+ // document.getContent().setContent("Totot".getBytes());
+ // document.setContentType("text/xml");
+ //document.setSize(xmlContent.length);
+
+ String type = request.getParameter("documentType");
+ if (type.equals("document.type.text"))
+ ;
+ {
+ document.setContentType("text/plain");
+ response.setRenderParameter(PARAM_EDIT_PAGE, "/WEB-INF/view/document/document-text-edit.vm");
+ }
+ browserInfo.setCurrentCmsObject(document);
+ this.setSessionContentBrowser(request, browserInfo);
+
+ // }
+ // catch (ContentManagementException e)
+ // {
+ // throw new PortletException("Impossible to create a document ", e);
+ // }
+ }
+
protected void saveFolder(ActionRequest request, ActionResponse response) throws PortletException
- {
+ {
try
{
- BrowserInfo browserInfo = this.getSessionBrowserInfo(request);
+ BrowserInfo browserInfo = this.getSessionBrowserInfo(request);
Folder folder = (Folder) browserInfo.getCurrentCmsObject();
String name = request.getParameter("name");
String title = request.getParameter("title");
String description = request.getParameter("description");
-
+
folder.setCreationDate(new Date());
folder.setDescription(description);
folder.setLastModified(new Date());
folder.setName(name);
folder.setTitle(title);
-
+
String parentFolderUri = null;
if (browserInfo.getCurrentFolder() == null)
- {
+ {
parentFolderUri = browserInfo.getCurrentServer().getScope();
}
else
{
- parentFolderUri = browserInfo.getCurrentFolder().getUri();
+ parentFolderUri = browserInfo.getCurrentFolder().getUri();
}
-
+
folder.setUri(parentFolderUri + "/" + name);
-
+
modelService.addFolder(folder);
-
- response.setRenderParameter(PARAM_EDIT_PAGE, "/WEB-INF/view/edit.vm");
+
+ response.setRenderParameter(PARAM_EDIT_PAGE, "/WEB-INF/view/folder/folder-edit.vm");
response.setPortletMode(PortletMode.VIEW);
this.removeSessionContentBrowser(request);
}
catch (ContentManagementException e)
{
throw new PortletException("Impossible to create a folder ", e);
- }
+ }
}
+
+ protected void saveDocument(ActionRequest request, ActionResponse response) throws PortletException
+ {
+ try
+ {
+ BrowserInfo browserInfo = this.getSessionBrowserInfo(request);
+ Document document = (Document) browserInfo.getCurrentCmsObject();
+
+ //Other attributes has been initialised in the method createDocumentStep2
+ String content = request.getParameter("content");
+ document.getContent().setContent(content.getBytes());
+ document.setSize(content.length());
+ modelService.addDocument(document);
+
+ response.setRenderParameter(PARAM_EDIT_PAGE, "/WEB-INF/view/folder/folder-edit.vm");
+ response.setPortletMode(PortletMode.VIEW);
+ this.removeSessionContentBrowser(request);
+ }
+ catch (ContentManagementException e)
+ {
+ throw new PortletException("Impossible to create a document ", e);
+ }
+ }
+
+ protected void deleteCmsObject(ActionRequest request, ActionResponse response) throws PortletException
+ {
+ try
+ {
+ String[] uriToDelete = request.getParameterValues("uri");
+ if (uriToDelete == null)
+ {
+ // No cms object has been selected
+ return;
+ }
+
+ for (int i = 0; i < uriToDelete.length; i++)
+ {
+ modelService.removeAll(uriToDelete);
+ }
+ response.setRenderParameter(PARAM_EDIT_PAGE, "/WEB-INF/view/folder/folder-edit.vm");
+ response.setPortletMode(PortletMode.VIEW);
+ this.removeSessionContentBrowser(request);
+
+ }
+ catch (ContentManagementException e)
+ {
+ throw new PortletException("Impossible to delete all cms objects ", e);
+ }
+ }
+
+ /**
+ * Initialise the list of the available document types
+ * @param documentTypes comma separated document types
+ */
+ private void initDocumentTypes(String documentTypes)
+ {
+ String[] types = documentTypes.split(",");
+
+ for (int i = 0; i < types.length; i++)
+ {
+ this.documentTypes.add(types[i].trim());
+ }
+ }
+
+ /**
+ * Initialise the list of the available document types
+ * @param documentLanguages comma separated document types
+ */
+ private void initDocumentLanguages(String documentLanguages)
+ {
+ String[] types = documentLanguages.split(",");
+
+ for (int i = 0; i < types.length; i++)
+ {
+ this.documentLanguages.add(types[i].trim());
+ }
+ }
+
+ /**
+ * Initialise the DTO browserInfo.
+ * This DTO is used by the velocity templates to display the content browser infos.
+ *
+ * @param uri The uri associated to the cms object to display
+ * @param request RenderRequest
+ * @param response RenderResponse
+ * @return a new initialised {@link BrowserInfo}
+ * @throws PortletException when it is not possible to initialise the
+ */
+ private BrowserInfo initBrowserInfo(String uri, RenderRequest request, RenderResponse response) throws PortletException
+ {
+ try
+ {
+ BrowserInfo browserInfo = new BrowserInfo(this.documentTypes, this.documentLanguages);
+ CmsObject cmsObject = modelService.getCmsObject(uri);
+ browserInfo.setCurrentCmsObject(cmsObject);
+ if ((cmsObject instanceof Folder) || (cmsObject == null)) // cms object is null if the uri match to a server root
+ {
+ browserInfo.setDocuments(modelService.getDocuments(uri));
+ browserInfo.setFolders(modelService.getFolders(uri));
+ browserInfo.setCurrentFolder(modelService.getFolder(uri));
+
+ }
+ else
+ {
+ browserInfo.setCurrentFolder(cmsObject.getParentFolder());
+ }
+ String scopeServer = CmsUtil.getServerScope(uri);
+ browserInfo.setCurrentServer(serverService.getServer(scopeServer));
+
+ return browserInfo;
+
+ }
+ catch (ContentManagementException e)
+ {
+ throw new PortletException("Failed to view the portlet - impossible to access to Graffito content store : "
+ + e.getMessage());
+ }
+
+ }
+
+
+ private void selectViewTemplate (BrowserInfo browserInfo, RenderRequest request, RenderResponse response) throws PortletException
+ {
+ CmsObject cmsObject = browserInfo.getCurrentCmsObject();
+ if ((cmsObject instanceof Folder) || (cmsObject == null))
+ {
+ request.setAttribute(PARAM_VIEW_PAGE, "/WEB-INF/view/folder/folder-browser.vm" );
+ }
+ else
+ {
+ Document document = (Document) cmsObject;
+ if (document.getContentType().equals("text/plain"))
+ {
+ request.setAttribute(PARAM_VIEW_PAGE, "/WEB-INF/view/document/document-text-view.vm" );
+ }
+ }
+ }
+
}
Modified: incubator/graffito/trunk/portlets/src/java/org/apache/portals/graffito/portlets/resources/messages.properties
Url: http://svn.apache.org/viewcvs/incubator/graffito/trunk/portlets/src/java/org/apache/portals/graffito/portlets/resources/messages.properties?view=diff&rev=128436&p1=incubator/graffito/trunk/portlets/src/java/org/apache/portals/graffito/portlets/resources/messages.properties&r1=128435&p2=incubator/graffito/trunk/portlets/src/java/org/apache/portals/graffito/portlets/resources/messages.properties&r2=128436
==============================================================================
--- incubator/graffito/trunk/portlets/src/java/org/apache/portals/graffito/portlets/resources/messages.properties (original)
+++ incubator/graffito/trunk/portlets/src/java/org/apache/portals/graffito/portlets/resources/messages.properties Thu Jan 27 14:29:21 2005
@@ -8,28 +8,39 @@
div.path= You are in :
div.newfolder= Add new folder in :
+div.newdocument= Add new document in :
div.folders = Folders
div.documents = Documents
div.server = Server
edit.tab.select=Select
+edit.tab.type=Type
edit.tab.name=Name
edit.tab.title=Title
edit.tab.description=Description
field.name = Name
field.title= Title
-field.description=Description
+field.description= Description
+field.type= Document Type
+field.owner = Owner
+field.language = Document Language
link.addfolder= Add Folder
link.adddocument = Add Document
link.delete = Delete
-tab.document=Document
-tab.folder=Folder
+tab.folder = Folder Info
tab.security=Security
-info.nocontent= No content found in this folder. Use the edit mode to add new content.
+info.nocontent= No content found in this folder.
error.servers=No content server found
+document.type.upload = Updload a Document
+document.type.text = Simple Text
+document.type.html = Html page
+document.type.news = Graffito News
+
+document.en = English
+document.fr = French
\ No newline at end of file
Modified: incubator/graffito/trunk/portlets/src/webapp/WEB-INF/portlet.xml
Url: http://svn.apache.org/viewcvs/incubator/graffito/trunk/portlets/src/webapp/WEB-INF/portlet.xml?view=diff&rev=128436&p1=incubator/graffito/trunk/portlets/src/webapp/WEB-INF/portlet.xml&r1=128435&p2=incubator/graffito/trunk/portlets/src/webapp/WEB-INF/portlet.xml&r2=128436
==============================================================================
--- incubator/graffito/trunk/portlets/src/webapp/WEB-INF/portlet.xml (original)
+++ incubator/graffito/trunk/portlets/src/webapp/WEB-INF/portlet.xml Thu Jan 27 14:29:21 2005
@@ -24,15 +24,14 @@
<init-param>
<name>AllowPreferences</name>
<value>true</value>
- </init-param>
-
+ </init-param>
<init-param>
<name>ViewPage</name>
- <value>/WEB-INF/view/view.vm</value>
+ <value>/WEB-INF/view/folder/folder-browser.vm</value>
</init-param>
<init-param>
<name>EditPage</name>
- <value>/WEB-INF/view/edit.vm</value>
+ <value>/WEB-INF/view/folder/folder-edit.vm</value>
</init-param>
<init-param>
<name>HelpPage</name>
@@ -41,7 +40,16 @@
<init-param>
<name>TabConfig</name>
<value>/WEB-INF/tabs/tabs.xml</value>
- </init-param>
+ </init-param>
+ <init-param>
+ <name>DocumentTypes</name>
+ <value>document.type.upload,document.type.text,document.type.html,document.type.news</value>
+ </init-param>
+ <init-param>
+ <name>DocumentLanguages</name>
+ <value>document.en,document.fr</value>
+ </init-param>
+
<expiration-cache>0</expiration-cache>
<supports>
<mime-type>text/html</mime-type>
Modified: incubator/graffito/trunk/portlets/src/webapp/WEB-INF/tabs/tabs.xml
Url: http://svn.apache.org/viewcvs/incubator/graffito/trunk/portlets/src/webapp/WEB-INF/tabs/tabs.xml?view=diff&rev=128436&p1=incubator/graffito/trunk/portlets/src/webapp/WEB-INF/tabs/tabs.xml&r1=128435&p2=incubator/graffito/trunk/portlets/src/webapp/WEB-INF/tabs/tabs.xml&r2=128436
==============================================================================
--- incubator/graffito/trunk/portlets/src/webapp/WEB-INF/tabs/tabs.xml (original)
+++ incubator/graffito/trunk/portlets/src/webapp/WEB-INF/tabs/tabs.xml Thu Jan 27 14:29:21 2005
@@ -1,7 +1,6 @@
<tabs>
- <tab id="document">
- <page id="General" label="tab.general" view= "/WEB-INF/view/doc-general.vm" />
+ <tab id="folder">
+ <page id="General" label="tab.general" view= "/WEB-INF/view/folder-general.vm" />
<page id="Security" label="tab.security" view= "/WEB-INF/view/security.vm" />
- <page id="History" label="tab.history" view= "/WEB-INF/view/version.vm" />
</tab>
</tabs>
Modified: incubator/graffito/trunk/portlets/src/webapp/WEB-INF/velocity/graffito-macros.vm
Url: http://svn.apache.org/viewcvs/incubator/graffito/trunk/portlets/src/webapp/WEB-INF/velocity/graffito-macros.vm?view=diff&rev=128436&p1=incubator/graffito/trunk/portlets/src/webapp/WEB-INF/velocity/graffito-macros.vm&r1=128435&p2=incubator/graffito/trunk/portlets/src/webapp/WEB-INF/velocity/graffito-macros.vm&r2=128436
==============================================================================
--- incubator/graffito/trunk/portlets/src/webapp/WEB-INF/velocity/graffito-macros.vm (original)
+++ incubator/graffito/trunk/portlets/src/webapp/WEB-INF/velocity/graffito-macros.vm Thu Jan 27 14:29:21 2005
@@ -1,4 +1,4 @@
-#macro (formField2 $label $value $size $id $MESSAGES $ERRORS)
+#macro (formFieldInput $label $value $size $id $MESSAGES $ERRORS)
#if ($ERRORS)
#set ($eflag = "$!ERRORS.get($id)")
#else
@@ -16,6 +16,37 @@
#end
</tr>
#end
+
+#macro (formFieldSelect $label $elements $id $MESSAGES $ERRORS)
+ #if ($ERRORS)
+ #set ($eflag = "$!ERRORS.get($id)")
+ #else
+ #set ($eflag = "")
+ #end
+ <tr>
+ <th class="portlet-section-alternate"><font class="portlet-form-field-label">$!MESSAGES.getString($label)</font></th>
+ <td>
+ <select name="$id" class="portlet-form-field-label">
+ #foreach($element in $elements)
+ <option value="$element">
+ $MESSAGES.getString($element)
+ </option>
+ #end
+ </select>
+ </td>
+ </tr>
+#end
+
+#macro (formFieldTextArea $content $id $MESSAGES $ERRORS)
+ #if ($ERRORS)
+ #set ($eflag = "$!ERRORS.get($id)")
+ #else
+ #set ($eflag = "")
+ #end
+ <textarea cols="75" id ="$!id" name="$!id" rows="15">$!content</textarea>
+#end
+
+
#macro (tab $tab $MESSAGES $urlAction)
Deleted: /incubator/graffito/trunk/portlets/src/webapp/WEB-INF/view/document.vm
Url: http://svn.apache.org/viewcvs/incubator/graffito/trunk/portlets/src/webapp/WEB-INF/view/document.vm?view=auto&rev=128435
==============================================================================
Added: incubator/graffito/trunk/portlets/src/webapp/WEB-INF/view/document/document-text-edit.vm
Url: http://svn.apache.org/viewcvs/incubator/graffito/trunk/portlets/src/webapp/WEB-INF/view/document/document-text-edit.vm?view=auto&rev=128436
==============================================================================
--- (empty file)
+++ incubator/graffito/trunk/portlets/src/webapp/WEB-INF/view/document/document-text-edit.vm Thu Jan 27 14:29:21 2005
@@ -0,0 +1,41 @@
+#*
+Copyright 2004 The Apache Software Foundation
+
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+*#
+
+#**
+
+@author <a href="mailto:christophe.lombart@sword-technologies.com">Christophe Lombart</a>
+@version $Id: Exp $
+
+*#
+#set ($MESSAGES = $portletConfig.getResourceBundle($renderRequest.Locale))
+#set ($document = $browserInfo.getCurrentCmsObject())
+
+<div class="portlet-menu">$MESSAGES.getString('div.newdocument') #cmsPath($browserInfo.getCurrentServer() $browserInfo.getParentFolders() $renderResponse $MESSAGES ) </div>
+
+<div class="portlet-section-header">Text Editor</div>
+
+<!-- div class="portlet-section-header">Folder Info </div -->
+<form action="$renderResponse.createActionURL()" method="post">
+ <input type="hidden" name="uri" value="$document.getUri()" size="100" maxlength="100"/>
+ #formFieldTextArea($document.getContent().getContentAsString() "content" $MESSAGES $ERRORS)
+ <div class="portlet-section-footer">
+ <input type="submit" name="document.save" value="Save" class="portlet-dlg-icon-label"/>
+ <input type="submit" name="cancel" value="Cancel" class="portlet-dlg-icon-label"/>
+ </div>
+</form>
+
+
+#ErrorMessages($ERRORS)
Added: incubator/graffito/trunk/portlets/src/webapp/WEB-INF/view/document/document-text-view.vm
Url: http://svn.apache.org/viewcvs/incubator/graffito/trunk/portlets/src/webapp/WEB-INF/view/document/document-text-view.vm?view=auto&rev=128436
==============================================================================
--- (empty file)
+++ incubator/graffito/trunk/portlets/src/webapp/WEB-INF/view/document/document-text-view.vm Thu Jan 27 14:29:21 2005
@@ -0,0 +1,28 @@
+#*
+Copyright 2004 The Apache Software Foundation
+
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+*#
+
+#**
+
+@author <a href="mailto:christophe.lombart@sword-technologies.com">Christophe Lombart</a>
+@version $Id: Exp $
+
+*#
+#set ($MESSAGES = $portletConfig.getResourceBundle($renderRequest.Locale))
+#set ($document = $browserInfo.getCurrentCmsObject())
+
+<div class="portlet-menu">$MESSAGES.getString('div.path') #cmsPath($browserInfo.getCurrentServer() $browserInfo.getParentFolders() $renderResponse $MESSAGES ) </div>
+<br>
+$document.getContent().getContentAsString()
Added: incubator/graffito/trunk/portlets/src/webapp/WEB-INF/view/document/document-type.vm
Url: http://svn.apache.org/viewcvs/incubator/graffito/trunk/portlets/src/webapp/WEB-INF/view/document/document-type.vm?view=auto&rev=128436
==============================================================================
--- (empty file)
+++ incubator/graffito/trunk/portlets/src/webapp/WEB-INF/view/document/document-type.vm Thu Jan 27 14:29:21 2005
@@ -0,0 +1,49 @@
+#*
+Copyright 2004 The Apache Software Foundation
+
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+*#
+
+#**
+
+@author <a href="mailto:christophe.lombart@sword-technologies.com">Christophe Lombart</a>
+@version $Id: Exp $
+
+*#
+#set ($MESSAGES = $portletConfig.getResourceBundle($renderRequest.Locale))
+#set ($document = $browserInfo.getCurrentCmsObject())
+
+<div class="portlet-menu">$MESSAGES.getString('div.newdocument') #cmsPath($browserInfo.getCurrentServer() $browserInfo.getParentFolders() $renderResponse $MESSAGES ) </div>
+
+<div class="portlet-section-header">General Information</div>
+
+<!-- div class="portlet-section-header">Folder Info </div -->
+<form action="$renderResponse.createActionURL()" method="post">
+ <input type="hidden" name="uri" value="$document.getUri()" size="100" maxlength="100"/>
+ <table border="0" cellspacing="2" cellpadding="3">
+ #formFieldInput('field.name' "$!document.getName()" "25" 'name' $MESSAGES $ERRORS)
+ #formFieldInput('field.title' "$!document.getTitle()" "25" 'title' $MESSAGES $ERRORS)
+ #formFieldInput('field.description' "$!document.getDescription()" "50" 'description' $MESSAGES $ERRORS)
+ #formFieldInput('field.owner' "$!document.getOwner()" "25" 'owner' $MESSAGES $ERRORS)
+ #formFieldSelect('field.language' $browserInfo.getDocumentLanguages() 'language' $MESSAGES $ERRORS )
+ #formFieldSelect('field.type' $browserInfo.getDocumentTypes() 'documentType' $MESSAGES $ERRORS )
+
+ </table>
+ <div class="portlet-section-footer">
+ <input type="submit" name="document.new.step2" value="Next" class="portlet-dlg-icon-label"/>
+ <input type="submit" name="cancel" value="Cancel" class="portlet-dlg-icon-label"/>
+ </div>
+</form>
+
+
+#ErrorMessages($ERRORS)
Copied: incubator/graffito/trunk/portlets/src/webapp/WEB-INF/view/document/document.vm (from r126056, incubator/graffito/trunk/portlets/src/webapp/WEB-INF/view/document.vm)
Url: http://svn.apache.org/viewcvs/incubator/graffito/trunk/portlets/src/webapp/WEB-INF/view/document/document.vm?view=diff&rev=128436&p1=incubator/graffito/trunk/portlets/src/webapp/WEB-INF/view/document.vm&r1=126056&p2=incubator/graffito/trunk/portlets/src/webapp/WEB-INF/view/document/document.vm&r2=128436
==============================================================================
--- incubator/graffito/trunk/portlets/src/webapp/WEB-INF/view/document.vm (original)
+++ incubator/graffito/trunk/portlets/src/webapp/WEB-INF/view/document/document.vm Thu Jan 27 14:29:21 2005
@@ -20,5 +20,26 @@
@version $Id: Exp $
*#
+#set ($MESSAGES = $portletConfig.getResourceBundle($renderRequest.Locale))
+#set ($document = $browserInfo.getCurrentCmsObject())
-ADD DOCUMENT
\ No newline at end of file
+<div class="portlet-menu">$MESSAGES.getString('div.newdocument') #cmsPath($browserInfo.getCurrentServer() $browserInfo.getParentFolders() $renderResponse $MESSAGES ) </div>
+
+<div class="portlet-section-header">Document Info </div>
+
+<!-- div class="portlet-section-header">Folder Info </div -->
+<form action="$renderResponse.createActionURL()" method="post">
+ <input type="hidden" name="uri" value="$document.getUri()" size="100" maxlength="100"/>
+ <table border="0" cellspacing="2" cellpadding="3">
+ #formFieldInput('field.name' "$!document.getName()" "25" 'name' $MESSAGES $ERRORS)
+ #formFieldInput('field.title' "$!document.getTitle()" "25" 'title' $MESSAGES $ERRORS)
+ #formFieldInput('field.description' "$!document.getDescription()" "50" 'description' $MESSAGES $ERRORS)
+ </table>
+ <div class="portlet-section-footer">
+ <input type="submit" name="document.save" value="Save" class="portlet-dlg-icon-label"/>
+ <input type="submit" name="cancel" value="Cancel" class="portlet-dlg-icon-label"/>
+ </div>
+</form>
+
+
+#ErrorMessages($ERRORS)
Deleted: /incubator/graffito/trunk/portlets/src/webapp/WEB-INF/view/edit.vm
Url: http://svn.apache.org/viewcvs/incubator/graffito/trunk/portlets/src/webapp/WEB-INF/view/edit.vm?view=auto&rev=128435
==============================================================================
Deleted: /incubator/graffito/trunk/portlets/src/webapp/WEB-INF/view/folder.vm
Url: http://svn.apache.org/viewcvs/incubator/graffito/trunk/portlets/src/webapp/WEB-INF/view/folder.vm?view=auto&rev=128435
==============================================================================
Added: incubator/graffito/trunk/portlets/src/webapp/WEB-INF/view/folder/folder-browser.vm
Url: http://svn.apache.org/viewcvs/incubator/graffito/trunk/portlets/src/webapp/WEB-INF/view/folder/folder-browser.vm?view=auto&rev=128436
==============================================================================
--- (empty file)
+++ incubator/graffito/trunk/portlets/src/webapp/WEB-INF/view/folder/folder-browser.vm Thu Jan 27 14:29:21 2005
@@ -0,0 +1,61 @@
+#*
+Copyright 2004 The Apache Software Foundation
+
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+*#
+
+#**
+
+@author <a href="mailto:christophe.lombart@sword-technologies.com">Christophe Lombart</a>
+@version $Id: Exp $
+
+*#
+
+#set ($MESSAGES = $portletConfig.getResourceBundle($renderRequest.Locale))
+
+<div class="portlet-menu">$MESSAGES.getString('div.path') #cmsLink($browserInfo.getCurrentServer() $browserInfo.getFolderPath() $renderResponse $MESSAGES )</div>
+#if( $browserInfo.isEmpty())
+ <div class="portlet-msg-info">$MESSAGES.getString('info.nocontent')</div>
+#else
+ #set ($folders = $browserInfo.getFolders())
+ #if($folders.size() > 0)
+ <!-- div class="portlet-menu">$MESSAGES.getString('div.folders')</div -->
+ <table border="0">
+ <tr>
+ <td>
+ <table border="0" cellpadding="10" cellspacing="20">
+ <tr>
+ #foreach ($folder in $folders)
+ <td>
+ <img src="content/tigris/images/folder.gif" border="0"/><font class="portlet-portlet-item"><a href="$renderResponse.createRenderURL()?uri=$folder.getUri()">$folder.getName()</a></font>
+ </td>
+ #end
+ </tr>
+ </table>
+ </td>
+ </tr>
+ </table>
+ <!-- /div -->
+ #end
+
+ #set ($documents = $browserInfo.getDocuments())
+ #if($documents.size() > 0)
+ <div class="portlet-menu">$MESSAGES.getString('div.documents')</div>
+
+ #foreach ($document in $documents)
+ <font class="portlet-menu-item"><a href="$renderResponse.createRenderURL()?uri=$document.getUri()">$document.getTitle()</a></font>
+ <font class="portlet-font-dim">$document.getDescription()</a></font>
+ #end
+ #end
+#end
+
Added: incubator/graffito/trunk/portlets/src/webapp/WEB-INF/view/folder/folder-detail.vm
Url: http://svn.apache.org/viewcvs/incubator/graffito/trunk/portlets/src/webapp/WEB-INF/view/folder/folder-detail.vm?view=auto&rev=128436
==============================================================================
--- (empty file)
+++ incubator/graffito/trunk/portlets/src/webapp/WEB-INF/view/folder/folder-detail.vm Thu Jan 27 14:29:21 2005
@@ -0,0 +1,45 @@
+#*
+Copyright 2004 The Apache Software Foundation
+
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+*#
+
+#**
+
+@author <a href="mailto:christophe.lombart@sword-technologies.com">Christophe Lombart</a>
+@version $Id: Exp $
+
+*#
+#set ($MESSAGES = $portletConfig.getResourceBundle($renderRequest.Locale))
+#set ($folder = $browserInfo.getCurrentCmsObject())
+
+<div class="portlet-menu">$MESSAGES.getString('div.newfolder') #cmsPath($browserInfo.getCurrentServer() $browserInfo.getParentFolders() $renderResponse $MESSAGES ) </div>
+
+<div class="portlet-section-header">Folder Info </div>
+
+<!-- div class="portlet-section-header">Folder Info </div -->
+<form action="$renderResponse.createActionURL()" method="post">
+ <input type="hidden" name="uri" value="$folde.getUri()" size="100" maxlength="100"/>
+ <table border="0" cellspacing="2" cellpadding="3">
+ #formFieldInput('field.name' "$!folder.getName()" "25" 'name' $MESSAGES $ERRORS)
+ #formFieldInput('field.title' "$!folder.getTitle()" "25" 'title' $MESSAGES $ERRORS)
+ #formFieldInput('field.description' "$!folder.getDescription()" "50" 'description' $MESSAGES $ERRORS)
+ </table>
+ <div class="portlet-section-footer">
+ <input type="submit" name="folder.save" value="Save" class="portlet-dlg-icon-label"/>
+ <input type="submit" name="cancel" value="Cancel" class="portlet-dlg-icon-label"/>
+ </div>
+</form>
+
+
+#ErrorMessages($ERRORS)
Added: incubator/graffito/trunk/portlets/src/webapp/WEB-INF/view/folder/folder-edit.vm
Url: http://svn.apache.org/viewcvs/incubator/graffito/trunk/portlets/src/webapp/WEB-INF/view/folder/folder-edit.vm?view=auto&rev=128436
==============================================================================
--- (empty file)
+++ incubator/graffito/trunk/portlets/src/webapp/WEB-INF/view/folder/folder-edit.vm Thu Jan 27 14:29:21 2005
@@ -0,0 +1,87 @@
+#*
+Copyright 2004 The Apache Software Foundation
+
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+*#
+
+#**
+
+@author <a href="mailto:christophe.lombart@sword-technologies.com">Christophe Lombart</a>
+@version $Id: Exp $
+
+*#
+#set ($MESSAGES = $portletConfig.getResourceBundle($renderRequest.Locale))
+
+<div class="portlet-menu">$MESSAGES.getString('div.path') #cmsPath($browserInfo.getCurrentServer() $browserInfo.getFolderPath() $renderResponse $MESSAGES )</div>
+
+<form action="$renderResponse.createActionURL()" method="post">
+ #set ($folders = $browserInfo.getFolders())
+ #set ($documents = $browserInfo.getDocuments())
+ #set ($count = 1)
+ #if($browserInfo.isEmpty())
+ <div class="portlet-msg-info">$MESSAGES.getString('info.nocontent')</div>
+ #else
+ <table>
+
+ <tr>
+ <th class="portlet-section-header">$MESSAGES.getString('edit.tab.select')</th>
+ <th class="portlet-section-header">$MESSAGES.getString('edit.tab.type')</th>
+ <th class="portlet-section-header">$MESSAGES.getString('edit.tab.name')</th>
+ <th class="portlet-section-header">$MESSAGES.getString('edit.tab.title')</th>
+ <th class="portlet-section-header">$MESSAGES.getString('edit.tab.description')</th>
+ </tr>
+
+ #foreach ($folder in $folders)
+ #if (($count % 2) == 0)
+ #set ($cssClass = 'portlet-section-alternate')
+ #else
+ #set ($cssClass = 'portlet-section-body')
+ #end
+ <tr>
+ <td class="$cssClass"><input type="checkbox" name="uri" value="$folder.getUri()" /></td>
+ <td class="$cssClass"> </td>
+ <td class="$cssClass">$folder.getName()</td>
+ <td class="$cssClass">$folder.getTitle()</td>
+ <td class="$cssClass">$folder.getDescription()</td>
+ </tr>
+ #set ($count = $count + 1)
+ #end
+
+ #foreach ($document in $documents)
+ #if (($count % 2) == 0)
+ #set ($cssClass = 'portlet-section-body')
+ #else
+ #set ($cssClass = 'portlet-section-alternative')
+ #end
+ <tr>
+ <td class="$cssClass"><input type="checkbox" name="uri" value="$document.getUri()" /></td>
+ <td class="$cssClass"> </td>
+ <td class="$cssClass">$document.getName()</td>
+ <td class="$cssClass">$document.getTitle()</td>
+ <td class="$cssClass">$document.getDescription()</td>
+ </tr>
+ #set ($count = $count + 1)
+ #end
+ </table>
+ #end
+
+ <div class="portlet-menu">
+ <input type="submit" name="folder.add" value="$MESSAGES.getString('link.addfolder')" class="portlet-dlg-icon-label" />
+ <input type="submit" name="document.add" value="$MESSAGES.getString('link.adddocument')" class="portlet-dlg-icon-label" />
+ <input type="submit" name="cmsobject.delete" value="$MESSAGES.getString('link.delete')" class="portlet-dlg-icon-label" />
+ </div>
+
+</form>
+
+
+
Deleted: /incubator/graffito/trunk/portlets/src/webapp/WEB-INF/view/security.vm
Url: http://svn.apache.org/viewcvs/incubator/graffito/trunk/portlets/src/webapp/WEB-INF/view/security.vm?view=auto&rev=128435
==============================================================================
Copied: incubator/graffito/trunk/portlets/src/webapp/WEB-INF/view/security/security.vm (from r126056, incubator/graffito/trunk/portlets/src/webapp/WEB-INF/view/security.vm)
Url: http://svn.apache.org/viewcvs/incubator/graffito/trunk/portlets/src/webapp/WEB-INF/view/security/security.vm?view=diff&rev=128436&p1=incubator/graffito/trunk/portlets/src/webapp/WEB-INF/view/security.vm&r1=126056&p2=incubator/graffito/trunk/portlets/src/webapp/WEB-INF/view/security/security.vm&r2=128436
==============================================================================
Deleted: /incubator/graffito/trunk/portlets/src/webapp/WEB-INF/view/view.vm
Url: http://svn.apache.org/viewcvs/incubator/graffito/trunk/portlets/src/webapp/WEB-INF/view/view.vm?view=auto&rev=128435
==============================================================================