Author: mfortun Date: 2011-05-11 17:09:23 +0200 (Wed, 11 May 2011) New Revision: 884 Url: http://nuiton.org/repositories/revision/wikitty/884 Log: * edit action basically reworks, without file * edit page must be acceded by url end with edit/.action of edit/{criteria}.action not edit.action * try to correct url link to edit page from view page * update index page with "/" for action path Modified: trunk/wikitty-publication/src/main/java/org/nuiton/wikitty/publication/action/PublicationActionEdit.java trunk/wikitty-publication/src/main/java/org/nuiton/wikitty/publication/action/PublicationActionView.java trunk/wikitty-publication/src/main/webapp/WEB-INF/jsp/edit.jsp trunk/wikitty-publication/src/main/webapp/WEB-INF/jsp/view.jsp trunk/wikitty-publication/src/main/webapp/index.jsp Modified: trunk/wikitty-publication/src/main/java/org/nuiton/wikitty/publication/action/PublicationActionEdit.java =================================================================== --- trunk/wikitty-publication/src/main/java/org/nuiton/wikitty/publication/action/PublicationActionEdit.java 2011-05-10 16:13:58 UTC (rev 883) +++ trunk/wikitty-publication/src/main/java/org/nuiton/wikitty/publication/action/PublicationActionEdit.java 2011-05-11 15:09:23 UTC (rev 884) @@ -5,6 +5,7 @@ import java.util.HashMap; import java.util.List; import java.util.Map; +import java.util.Map.Entry; import org.nuiton.util.StringUtil; import org.nuiton.wikitty.WikittyProxy; @@ -17,6 +18,7 @@ import org.nuiton.wikitty.publication.entities.WikittyPubData; import org.nuiton.wikitty.publication.entities.WikittyPubDataHelper; import org.nuiton.wikitty.search.Criteria; +import org.nuiton.wikitty.search.operators.Element; @@ -32,6 +34,8 @@ protected String newExtension; protected Wikitty wikitty; + + private HashMap<String, Object> wikittyFieldMap; @@ -84,6 +88,9 @@ Criteria criteria = searchCriteria(argsString); if (criteria == null) { wikitty = new WikittyImpl(); + ActionContext.getContext().getParameters() + .put(ARGS_KEY, Element.ELT_ID + ":" + wikitty.getId()); + } else { wikitty = proxy.findByCriteria(criteria); } @@ -96,6 +103,9 @@ // veut le faire String id = getArgument("id", "");; wikitty = new WikittyImpl(id); + ActionContext.getContext().getParameters() + .put(ARGS_KEY, Element.ELT_ID + ":" + wikitty.getId()); + } if (wikitty == null) { @@ -103,6 +113,9 @@ // cela signifie qu'on ne retrouve pas le wikitty a editer // on creer un nouveau wikitty vide que l'on editera wikitty = new WikittyImpl(); + ActionContext.getContext().getParameters() + .put(ARGS_KEY, Element.ELT_ID + ":" + wikitty.getId()); + } else { // on met a jour le wikitty avec les infos trouvees dans les // arguments @@ -132,8 +145,7 @@ } Map<String, Object> args1 = new HashMap<String, Object>(); - // args1.putAll(getArguments()); - // args.putAll(context.getArgumentFiles()); + args1.putAll(getFieldArguments()); for (Map.Entry<String, Object> field : args1.entrySet()) { String key = field.getKey(); Object value = null; @@ -237,9 +249,35 @@ } + public String getPostUrl(){ + + return this.getArgument(ARGS_KEY, "") + ".action"; + } - + protected Map<String, Object> getFieldArguments() { + wikittyFieldMap = new HashMap<String, Object>(); + for (Entry<String, Object> en : ActionContext.getContext() + .getParameters().entrySet()) { + + if (en.getKey().startsWith("Wikitty")) { + + String value = ""; + + if (en.getValue() instanceof String[]) { + for (String occu : (String[]) en.getValue()) { + value += occu; + } + } else { + value = String.valueOf(en.getValue()); + } + + wikittyFieldMap.put(en.getKey(), value); + } + + } + return wikittyFieldMap; } +} Modified: trunk/wikitty-publication/src/main/java/org/nuiton/wikitty/publication/action/PublicationActionView.java =================================================================== --- trunk/wikitty-publication/src/main/java/org/nuiton/wikitty/publication/action/PublicationActionView.java 2011-05-10 16:13:58 UTC (rev 883) +++ trunk/wikitty-publication/src/main/java/org/nuiton/wikitty/publication/action/PublicationActionView.java 2011-05-11 15:09:23 UTC (rev 884) @@ -1,9 +1,11 @@ package org.nuiton.wikitty.publication.action; + import org.nuiton.wikitty.entities.Wikitty; import org.nuiton.wikitty.search.Criteria; import org.nuiton.wikitty.search.PagedResult; import org.nuiton.wikitty.search.Search; +import org.nuiton.wikitty.search.operators.Element; import com.opensymphony.xwork2.ActionContext; @@ -14,7 +16,7 @@ protected String search = "*"; protected int first = 0; protected int end = 100; - + /** @@ -30,11 +32,10 @@ @Override public String execute() throws Exception { - - //search = this.getArgument("r", "*"); - //first = this.getArgument("first", "0"); - //end = this.getArgument("end", "100"); - + // search = this.getArgument("r", "*"); + // first = this.getArgument("first", "0"); + // end = this.getArgument("end", "100"); + String id = getArgument("id", ""); if (!"".equals(id)) { @@ -85,8 +86,6 @@ this.search = search; } - - public int getFirst() { return first; } @@ -103,12 +102,14 @@ this.end = end; } - public String makeUrlEdit(Wikitty w){ + public String makeUrlEdit(Wikitty w) { - String result = getArgument("context", "")+"/edit.action?id="+w.getId(); - - return result; - + String result = getArgument("context", "") + "/edit/" + Element.ELT_ID + + ":" + w.getId() + ".action"; + + return (result); + } - + + } Modified: trunk/wikitty-publication/src/main/webapp/WEB-INF/jsp/edit.jsp =================================================================== --- trunk/wikitty-publication/src/main/webapp/WEB-INF/jsp/edit.jsp 2011-05-10 16:13:58 UTC (rev 883) +++ trunk/wikitty-publication/src/main/webapp/WEB-INF/jsp/edit.jsp 2011-05-11 15:09:23 UTC (rev 884) @@ -61,8 +61,7 @@ <pre><%=StringEscapeUtils.escapeHtml(String.valueOf(wikitty))%></pre> -<form class="edit" action="edit.action" method="post" enctype="multipart/form-data"> - <input type="hidden" name="MAX_FILE_SIZE" value="104857600" /> <!-- 100Mo --> +<form class="edit" action="<%=action.getPostUrl()%>" method="post" > <input type="hidden" name="id" value="<%=wikitty.getId()%>" /> <input type="hidden" name="version" value="<%=wikitty.getVersion()%>" /> <input type="hidden" name="extensions" value="<%=wikitty.getExtensionNames()%>"/> Modified: trunk/wikitty-publication/src/main/webapp/WEB-INF/jsp/view.jsp =================================================================== --- trunk/wikitty-publication/src/main/webapp/WEB-INF/jsp/view.jsp 2011-05-10 16:13:58 UTC (rev 883) +++ trunk/wikitty-publication/src/main/webapp/WEB-INF/jsp/view.jsp 2011-05-11 15:09:23 UTC (rev 884) @@ -65,9 +65,13 @@ Wikitty wikit = action.getWikittyResult(); - if (wikit!=null) {%> - <pre><%=StringEscapeUtils.escapeHtml(String.valueOf(wikit))%></pre> - <%} %> + if (wikit != null) { +%> +<pre><%=StringEscapeUtils.escapeHtml(String + .valueOf(wikit))%></pre> +<% + } +%> <form action="view.action" method="post"> <div> <textarea title="Search" name="search"><%=action.getSearch()%></textarea> @@ -80,22 +84,26 @@ </pre> <table> - <tr> - <td></td> - <td>Wikitty Id</td> - <td>Version</td> - <td>Extensions</td> - </tr> - - + <tr> + <td></td> + <td>Wikitty Id</td> + <td>Version</td> + <td>Extensions</td> + </tr> + + <% for (Wikitty w : action.getPagedResult().getAll()) { %> <tr> - <td><a href="<%=action.makeUrlEdit(w)%>">edit</a> + <td><s:url var="editlink" action="/wiki/edit"> + <s:param name="id"><%=w.getId()%></s:param> + </s:url> <s:a href="%{editlink}" id="regenPermToken"> + <s:text name="edit" /> + </s:a> <a href="<%=action.makeUrlEdit(w)%>">edit</a></td> + <td><input type="submit" name="id" value="<%=w.getId()%>" /> </td> - <td><input type="submit" name="id" value="<%=w.getId()%>"/></td> - + <td><%=w.getVersion()%></td> <td><%=w.getExtensionNames()%></td> </tr> Modified: trunk/wikitty-publication/src/main/webapp/index.jsp =================================================================== --- trunk/wikitty-publication/src/main/webapp/index.jsp 2011-05-10 16:13:58 UTC (rev 883) +++ trunk/wikitty-publication/src/main/webapp/index.jsp 2011-05-11 15:09:23 UTC (rev 884) @@ -11,14 +11,14 @@ .getWikittyPublicationSession(session); %> -<s:url var="regenPermToken" action="wiki/view" /> -<s:a href="%{regenPermToken}" id="regenPermToken"> +<s:url var="urlviewpage" action="wiki/view/" /> +<s:a href="%{urlviewpage}" id="urlviewpage"> <s:text name="view" /> </s:a> -<s:url var="regenPermToken" action="wiki/edit" /> -<s:a href="%{regenPermToken}" id="regenPermToken"> +<s:url var="urleditpage" action="wiki/edit/" /> +<s:a href="%{urleditpage}" id="urleditpage"> <s:text name="edit" /> </s:a>