WDYT?
Thanks
-Vincent
On Apr 16, 2007, at 1:17 AM, Ludovic Dubost wrote:
Author: ludovic
Date: 2007-04-16 01:17:41 +0200 (Mon, 16 Apr 2007)
New Revision: 2824
Modified:
xwiki/branches/XWIKI_1_0/core/src/main/java/com/xpn/xwiki/XWiki.java
xwiki/branches/XWIKI_1_0/core/src/main/java/com/xpn/xwiki/api/XWiki.java
xwiki/branches/XWIKI_1_0/core/src/main/java/com/xpn/xwiki/objects/classes/BaseClass.java
xwiki/branches/XWIKI_1_0/core/src/main/java/com/xpn/xwiki/plugin/query/DefaultQuery.java
xwiki/branches/XWIKI_1_0/core/src/main/java/com/xpn/xwiki/plugin/query/HibernateQuery.java
xwiki/branches/XWIKI_1_0/core/src/main/java/com/xpn/xwiki/plugin/query/IQuery.java
xwiki/branches/XWIKI_1_0/core/src/main/java/com/xpn/xwiki/plugin/query/JcrQuery.java
xwiki/branches/XWIKI_1_0/core/src/main/java/com/xpn/xwiki/plugin/query/SecHibernateQuery.java
xwiki/branches/XWIKI_1_0/core/src/main/java/com/xpn/xwiki/plugin/query/XWikiQuery.java
xwiki/branches/XWIKI_1_0/web/standard/src/main/webapp/skins/albatross/registerinline.vm
xwiki/branches/XWIKI_1_0/web/standard/src/main/webapp/skins/dodo/register.vm
xwiki/branches/XWIKI_1_0/web/standard/src/main/webapp/skins/finch/register.vm
xwiki/branches/XWIKI_1_0/web/standard/src/main/webapp/templates/registerinline.vm
Log:
XWIKI-985 Allow register to work even if wiki is completely protected
but register right is given to anonymous users. Update all register
page for older skins.
XWIKI-1090 Added displaySearchOrder API for Query Plugin
Modified:
xwiki/branches/XWIKI_1_0/core/src/main/java/com/xpn/xwiki/XWiki.java
===================================================================
---
xwiki/branches/XWIKI_1_0/core/src/main/java/com/xpn/xwiki/XWiki.java
2007-04-15 23:14:37 UTC (rev 2823)
+++
xwiki/branches/XWIKI_1_0/core/src/main/java/com/xpn/xwiki/XWiki.java
2007-04-15 23:17:41 UTC (rev 2824)
@@ -3697,23 +3697,30 @@
}
public boolean prepareDocuments(XWikiRequest request,
XWikiContext context,
- VelocityContext vcontext) throws XWikiException
+ VelocityContext vcontext) throws
XWikiException
{
XWikiDocument doc;
String docName = getDocumentName(request, context);
- try {
- doc = getDocument(docName, context);
- } catch (XWikiException e) {
- doc = context.getDoc();
- if (context.getAction().equals("delete")) {
- if (doc == null) {
- setPhonyDocument(docName, context, vcontext);
- }
- if (!checkAccess("admin", doc, context)) {
+ if (context.getAction().equals("register")) {
+ setPhonyDocument(docName, context, vcontext);
+ context.getWiki().prepareResources(context);
+ doc = context.getDoc();
+ } else {
+
+ try {
+ doc = getDocument(docName, context);
+ } catch (XWikiException e) {
+ doc = context.getDoc();
+ if (context.getAction().equals("delete")) {
+ if (doc == null) {
+ setPhonyDocument(docName, context, vcontext);
+ }
+ if (!checkAccess("admin", doc, context)) {
+ throw e;
+ }
+ } else {
throw e;
}
- } else {
- throw e;
}
}
@@ -3723,19 +3730,21 @@
Object[] args = {doc.getFullName(), context.getUser()};
setPhonyDocument(docName, context, vcontext);
throw new
XWikiException(XWikiException.MODULE_XWIKI_ACCESS,
- XWikiException.ERROR_XWIKI_ACCESS_DENIED,
- "Access to document {0} has been denied to user {1}",
- null,
- args);
+ XWikiException.ERROR_XWIKI_ACCESS_DENIED,
+ "Access to document {0} has been denied to user
{1}",
+ null,
+ args);
} else if (checkActive(context) == 0) {
Object[] args = {context.getUser()};
setPhonyDocument(docName, context, vcontext);
throw new XWikiException(XWikiException.MODULE_XWIKI_USER,
- XWikiException.ERROR_XWIKI_USER_INACTIVE,
- "User {0} account is inactive",
- null,
- args);
+ XWikiException.ERROR_XWIKI_USER_INACTIVE,
+ "User {0} account is inactive",
+ null,
+ args);
}
+
+
context.put("doc", doc);
vcontext.put("doc", doc.newDocument(context));
vcontext.put("cdoc", vcontext.get("doc"));
Modified:
xwiki/branches/XWIKI_1_0/core/src/main/java/com/xpn/xwiki/api/XWiki.java
===================================================================
---
xwiki/branches/XWIKI_1_0/core/src/main/java/com/xpn/xwiki/api/XWiki.java
2007-04-15 23:14:37 UTC (rev 2823)
+++
xwiki/branches/XWIKI_1_0/core/src/main/java/com/xpn/xwiki/api/XWiki.java
2007-04-15 23:17:41 UTC (rev 2824)
@@ -2351,6 +2351,37 @@
}
/**
+ * API to display a select box for the list of available field
for a specific class This field
+ * data can then be used to generate the order element of an
XWiki Query showing a table with the relevant data
+ *
+ * @param className XWiki Class Name to display the list of
columns for
+ * @param query Query to pre-select the currently selected columns
+ * @return text of the select field
+ * @throws XWikiException exception is a failure occured
+ */
+ public String displaySearchOrder(String className, XWikiQuery
query) throws XWikiException
+ {
+ return xwiki.displaySearchOrder(className, "", query,
getXWikiContext());
+ }
+
+ /**
+ * API to display a select box for the list of available field
for a specific class, optionally
+ * adding a prefix This field data can then be used to generate
the order element of an XWiki Query showing a table
+ * with the relevant data
+ *
+ * @param className XWiki Class Name to display the list of
columns for
+ * @param prefix Prefix to add to the field name
+ * @param query Query to pre-select the currently selected columns
+ * @return text of the select field
+ * @throws XWikiException exception is a failure occured
+ */
+ public String displaySearchOrder(String className, String
prefix, XWikiQuery query)
+ throws XWikiException
+ {
+ return xwiki.displaySearchOrder(className, prefix, query,
getXWikiContext());
+ }
+
+ /**
* API to display a field in search mode for a specific class
without preselected values This
* field data can then be used to generate an XWiki Query
showing a table with the relevant data
*
@@ -2535,4 +2566,17 @@
public String clearAccents(String text) {
return Util.noaccents(text);
}
+
+ /**
+ * Get a Class
+ *
+ * @return class object
+ * @throws XWikiException
+ */
+ public Class getClass(String name) throws XWikiException
+ {
+ return new Class(xwiki.getDocument(name,
context).getxWikiClass(), context);
+ }
+
+
}
Modified:
xwiki/branches/XWIKI_1_0/core/src/main/java/com/xpn/xwiki/objects/classes/BaseClass.java
===================================================================
---
xwiki/branches/XWIKI_1_0/core/src/main/java/com/xpn/xwiki/objects/classes/BaseClass.java
2007-04-15 23:14:37 UTC (rev 2823)
+++
xwiki/branches/XWIKI_1_0/core/src/main/java/com/xpn/xwiki/objects/classes/BaseClass.java
2007-04-15 23:17:41 UTC (rev 2824)
@@ -49,6 +49,7 @@
import com.xpn.xwiki.objects.PropertyInterface;
import com.xpn.xwiki.plugin.query.XWikiCriteria;
import com.xpn.xwiki.plugin.query.XWikiQuery;
+import com.xpn.xwiki.plugin.query.OrderClause;
import com.xpn.xwiki.validation.XWikiValidationInterface;
import com.xpn.xwiki.validation.XWikiValidationStatus;
@@ -686,6 +687,39 @@
return select.toString();
}
+ public String displaySearchOrder(String prefix, XWikiQuery
query, XWikiContext context) {
+ select select = new select(prefix + "searchorder", 5);
+ select.setMultiple(true);
+ select.setName(prefix + "searchorder");
+ select.setID(prefix + "searchorder");
+
+ List list = Arrays.asList(getPropertyNames());
+ Map prettynamesmap = new HashMap();
+ for (int i=0;i<list.size();i++) {
+ String propname = (String) list.get(i);
+ list.set(i, prefix + propname);
+ prettynamesmap.put(prefix + propname,
((PropertyClass)get(propname)).getPrettyName());
+ }
+
+ OrderClause order = null;
+ if
((query!=null)&&(query.getOrderProperties()!=null)&&(query.getOrderProperties().size()>0))
+ order = (OrderClause) query.getOrderProperties().get(0);
+
+ // Add options from Set
+ for (Iterator it=list.iterator();it.hasNext();) {
+ String value = it.next().toString();
+ String displayValue = (String) prettynamesmap.get(value);
+ option option = new option(displayValue, displayValue);
+ option.addElement(displayValue);
+ option.setValue(value);
+ if ((order!=null)&&(value.equals(order.getProperty())))
+ option.setSelected(true);
+ select.addElement(option);
+ }
+
+ return select.toString();
+ }
+
public void setValidationScript(String validationScript) {
this.validationScript = validationScript;
}
Modified:
xwiki/branches/XWIKI_1_0/core/src/main/java/com/xpn/xwiki/plugin/query/DefaultQuery.java
===================================================================
---
xwiki/branches/XWIKI_1_0/core/src/main/java/com/xpn/xwiki/plugin/query/DefaultQuery.java
2007-04-15 23:14:37 UTC (rev 2823)
+++
xwiki/branches/XWIKI_1_0/core/src/main/java/com/xpn/xwiki/plugin/query/DefaultQuery.java
2007-04-15 23:17:41 UTC (rev 2824)
@@ -42,7 +42,11 @@
return null;
}
- protected int _fetchSize=-1;
+ public String getNativeQuery() {
+ return null;
+ }
+
+ protected int _fetchSize=-1;
protected int _firstResult=-1;
protected boolean _isdistinct=false;
public IQuery setMaxResults(int fs) { _fetchSize = fs;
return this; }
Modified:
xwiki/branches/XWIKI_1_0/core/src/main/java/com/xpn/xwiki/plugin/query/HibernateQuery.java
===================================================================
---
xwiki/branches/XWIKI_1_0/core/src/main/java/com/xpn/xwiki/plugin/query/HibernateQuery.java
2007-04-15 23:14:37 UTC (rev 2823)
+++
xwiki/branches/XWIKI_1_0/core/src/main/java/com/xpn/xwiki/plugin/query/HibernateQuery.java
2007-04-15 23:17:41 UTC (rev 2824)
@@ -88,28 +88,34 @@
}
return true;
}
- public List list() throws XWikiException {
- if (translator==null)
- translator = new XWikiHibernateQueryTranslator(
getQueryTree() );
- StringBuffer _result = new StringBuffer();
- if (_select.length()>0)
- _result.append("select ").append(_select);
- _result.append(" from ").append(_from);
-
- constructWhere(_result);
-
- if (_order.length()>0)
- _result.append(" order by ").append(_order);
-
- String hql = _result.toString();
-
- if (log.isDebugEnabled())
- log.debug("hql: "+hql);
-
+
+ public List list() throws XWikiException {
+ String hql = getNativeQuery();
return hqlexec(hql, _hqlparams, _fetchSize, _firstResult);
}
-
- protected SepStringBuffer _select = new
SepStringBuffer(",");
+
+ public String getNativeQuery() {
+ if (translator==null)
+ translator = new XWikiHibernateQueryTranslator(
getQueryTree() );
+ StringBuffer _result = new StringBuffer();
+ if (_select.length()>0)
+ _result.append("select ").append(_select);
+ _result.append(" from ").append(_from);
+
+ constructWhere(_result);
+
+ if (_order.length()>0)
+ _result.append(" order by ").append(_order);
+
+ String hql = _result.toString();
+
+ if (log.isDebugEnabled())
+ log.debug("hql: "+hql);
+
+ return hql;
+ }
+
+ protected SepStringBuffer _select = new
SepStringBuffer(",");
protected SepStringBuffer _from = new
SepStringBuffer(",");
protected SepStringBuffer _where = new
SepStringBuffer(" and ");
protected SepStringBuffer _userwhere = new
SepStringBuffer(" and ");
@@ -807,8 +813,8 @@
translator = null;
return super.setDistinct(d);
}
-
- Map _hqlparams = new HashMap();
+
+ Map _hqlparams = new HashMap();
protected void _addHqlParam(String pn, Object v) {
_hqlparams.put(pn, v);
}
Modified:
xwiki/branches/XWIKI_1_0/core/src/main/java/com/xpn/xwiki/plugin/query/IQuery.java
===================================================================
---
xwiki/branches/XWIKI_1_0/core/src/main/java/com/xpn/xwiki/plugin/query/IQuery.java
2007-04-15 23:14:37 UTC (rev 2823)
+++
xwiki/branches/XWIKI_1_0/core/src/main/java/com/xpn/xwiki/plugin/query/IQuery.java
2007-04-15 23:17:41 UTC (rev 2824)
@@ -33,4 +33,5 @@
public IQuery setMaxResults(int fs);
public IQuery setFirstResult(int fr);
public IQuery setDistinct(boolean d);
+ public String getNativeQuery();
}
Modified:
xwiki/branches/XWIKI_1_0/core/src/main/java/com/xpn/xwiki/plugin/query/JcrQuery.java
===================================================================
---
xwiki/branches/XWIKI_1_0/core/src/main/java/com/xpn/xwiki/plugin/query/JcrQuery.java
2007-04-15 23:14:37 UTC (rev 2823)
+++
xwiki/branches/XWIKI_1_0/core/src/main/java/com/xpn/xwiki/plugin/query/JcrQuery.java
2007-04-15 23:17:41 UTC (rev 2824)
@@ -28,12 +28,16 @@
return (XWikiJcrStore)
((XWikiJcrBaseStore)qf.getContext().getWiki().getNotCacheStore());
}
- public List list() throws XWikiException {
+ public String getNativeQuery() {
+ return "store"+query;
+ }
+
+ public List list() throws XWikiException {
final List result = new ArrayList();
try {
getStore().executeRead(qf.getContext(), new JcrCallBack() {
public Object doInJcr(XWikiJcrSession session)
throws Exception {
- Query q =
session.getQueryManager().createQuery("store"+query, language);
+ Query q =
session.getQueryManager().createQuery(getNativeQuery(), language);
QueryResult qr = q.execute();
RowIterator ri = qr.getRows();
if (ri!=null) {
Modified:
xwiki/branches/XWIKI_1_0/core/src/main/java/com/xpn/xwiki/plugin/query/SecHibernateQuery.java
===================================================================
---
xwiki/branches/XWIKI_1_0/core/src/main/java/com/xpn/xwiki/plugin/query/SecHibernateQuery.java
2007-04-15 23:14:37 UTC (rev 2823)
+++
xwiki/branches/XWIKI_1_0/core/src/main/java/com/xpn/xwiki/plugin/query/SecHibernateQuery.java
2007-04-15 23:17:41 UTC (rev 2824)
@@ -94,8 +94,28 @@
if (PasswordClass.class.equals(class1))
isAllow = false;
}
-
- public List list() throws XWikiException {
+
+ public String getNativeQuery() {
+ _allowdocs.clear();
+ String docname =
translator.getLastNameClass(qn_xwiki_document);
+ if (docname==null) {
+ QName lclass = translator.getLastQNClass();
+ if (qn_xwiki_object.equals(lclass)) {
+ final String objname =
translator.getLastNameClass(lclass);
+ docname = translator.newXWikiObj(qn_xwiki_document);
+
_where.appendWithSep(docname).append(".fullName=").append(objname).append(".name");
+ } else if (qn_xwiki_attachment.equals(lclass)) {
+ final String attname =
translator.getLastNameClass(lclass);
+ docname = translator.newXWikiObj(qn_xwiki_document);
+
_where.appendWithSep(docname).append(".id=").append(attname).append(".docId");
+ } else
+ throw new TranslateException("Class not exist");
+ }
+ _select = new
SepStringBuffer(docname+".id,"+docname+".fullName", null);
+ return super.getNativeQuery();
+ }
+
+ public List list() throws XWikiException {
if (translator==null)
translator = new
XWikiHibernateQueryTranslator(getQueryTree());
if (!isAllowed())
@@ -106,23 +126,6 @@
final SepStringBuffer _real_select = _select;
try {
- _allowdocs.clear();
- String docname =
translator.getLastNameClass(qn_xwiki_document);
- if (docname==null) {
- QName lclass = translator.getLastQNClass();
- if (qn_xwiki_object.equals(lclass)) {
- final String objname =
translator.getLastNameClass(lclass);
- docname =
translator.newXWikiObj(qn_xwiki_document);
-
_where.appendWithSep(docname).append(".fullName=").append(objname).append(".name");
- } else if (qn_xwiki_attachment.equals(lclass)) {
- final String attname =
translator.getLastNameClass(lclass);
- docname =
translator.newXWikiObj(qn_xwiki_document);
-
_where.appendWithSep(docname).append(".id=").append(attname).append(".docId");
- } else
- throw new TranslateException("Class not exist");
- }
- _select = new
SepStringBuffer(docname+".id,"+docname+".fullName", null);
-
security = false;
int fr = _firstResult; _firstResult = -1;
int fs = _fetchSize; _fetchSize = -1;
Modified:
xwiki/branches/XWIKI_1_0/core/src/main/java/com/xpn/xwiki/plugin/query/XWikiQuery.java
===================================================================
---
xwiki/branches/XWIKI_1_0/core/src/main/java/com/xpn/xwiki/plugin/query/XWikiQuery.java
2007-04-15 23:14:37 UTC (rev 2823)
+++
xwiki/branches/XWIKI_1_0/core/src/main/java/com/xpn/xwiki/plugin/query/XWikiQuery.java
2007-04-15 23:17:41 UTC (rev 2824)
@@ -31,6 +31,8 @@
super();
String[] columns = request.getParameterValues(className +
"_" + "searchcolumns");
setDisplayProperties(columns);
+ String[] order = request.getParameterValues(className + "_"
+ "searchorder");
+ setOrderProperties(order);
BaseClass bclass = context.getWiki().getDocument(className,
context).getxWikiClass();
Set properties = bclass.getPropertyList();
Iterator propid = properties.iterator();
@@ -41,6 +43,16 @@
}
}
+ private void setOrderProperties(String[] order) {
+ orderProperties.clear();
+ if (order!=null) {
+ for (int i=0;i<order.length;i++) {
+ OrderClause oclause = new OrderClause(order[i],
OrderClause.ASC);
+ orderProperties.add(oclause);
+ }
+ }
+ }
+
public void reset() {
displayProperties = new ArrayList();
addProperties = new ArrayList();
Modified:
xwiki/branches/XWIKI_1_0/web/standard/src/main/webapp/skins/albatross/registerinline.vm
===================================================================
---
xwiki/branches/XWIKI_1_0/web/standard/src/main/webapp/skins/albatross/registerinline.vm
2007-04-15 23:14:37 UTC (rev 2823)
+++
xwiki/branches/XWIKI_1_0/web/standard/src/main/webapp/skins/albatross/registerinline.vm
2007-04-15 23:17:41 UTC (rev 2824)
@@ -1,4 +1,4 @@
-#if($xwiki.getDocument("XWiki.Registration").isNew())
+#if(!$xwiki.hasAccessLevel("view","XWiki.Registration")||$xwiki.getDocument("XWiki.Registration").isNew())
<h1>$msg.get("Registration")</h1>
#if(!$reg||$reg<0 )
<p>$msg.get("registerwelcome")</p>
@@ -22,8 +22,7 @@
<div>
<input type="hidden" name="template"
value="XWiki.XWikiUserTemplate" />
<input type="hidden" name="register"
value="1">
- #set( $class =
$xwiki.getDocument("XWiki.XWikiUsers").xWikiClass)
- #set( $serverclass =
$xwiki.getDocument("XWiki.XWikiServerClass").xWikiClass)
+ #set( $class = $xwiki.getClass("XWiki.XWikiUsers"))
#set( $obj = $class.newObject() )
#set( $serverobj = $class.newObject() )
#set( $ok = $doc.use("XWiki.XWikiUsers"))
Modified:
xwiki/branches/XWIKI_1_0/web/standard/src/main/webapp/skins/dodo/register.vm
===================================================================
---
xwiki/branches/XWIKI_1_0/web/standard/src/main/webapp/skins/dodo/register.vm
2007-04-15 23:14:37 UTC (rev 2823)
+++
xwiki/branches/XWIKI_1_0/web/standard/src/main/webapp/skins/dodo/register.vm
2007-04-15 23:17:41 UTC (rev 2824)
@@ -1,78 +1 @@
-#set ($register = $request.getParameter("register"))
-#if ($register)
-Registration of *$request.getParameter("register_first_name")
$request.getParameter("register_last_name")*
-
-#set( $reg= $xwiki.createUser(false))
-#if ($reg>0)
-The user [$request.getParameter("xwikiname")] has been registered.
-#else
-An error occured during the registration.
-#end
-#else
-#set($reg=0)
-#end
-
-#if ($reg<=0)
-Welcome to the registration form. This will allow you to edit pages,
once the admin gives you appropriate rights
-
-1.1 Register
-
-<form id="register" name="register" action=""
method="post">
-#includeTopic("xwiki:XWiki.RegisterJS")
-<p>
-<input type="hidden" name="template"
value="XWiki.XWikiUserTemplate" />
-<input type="hidden" name="register" value="1">
-#set( $class = $xwiki.getDocument("XWiki.XWikiUsers").xWikiClass)
-#set( $serverclass =
$xwiki.getDocument("XWiki.XWikiServerClass").xWikiClass)
-#set( $obj = $class.newObject() )
-#set( $serverobj = $class.newObject() )
-</p>
-<table class="block" cellspacing="5px">
- <tbody>
- <tr>
-#set($prop = $class.first_name)
- <td>First name
- </td>
- <td>$doc.displayEdit($prop, "register_", $obj)
- </td>
-#set($prop = $class.last_name)
- <td>Last name
- </td>
- <td>$doc.displayEdit($prop, "register_", $obj)
- </td>
- </tr>
-<tr>
-#set($prop = $class.email)
- <td>e-Mail Address
- </td>
- <td>$doc.displayEdit($prop, "register_", $obj)
- </td>
- </tr>
-<tr>
-</tr>
-<td></td>
- <tr>
-#set($prop = $class.password)
- <td>Password
- </td>
- <td>$doc.displayEdit($prop, "register_", $obj)
- </td>
- <td>Password (again)
- </td>
- <td>$doc.displayEdit($prop, "register2_", $obj)
- </td>
- </tr>
-<tr><td></td></tr>
- <tr>
- <td>Wiki username</td>
- <td>
- <input name="xwikiname" type="text" size="20"
onfocus="
prepareName(document.forms.register);" />
- </td>
- </tr>
- </tbody>
- </table>
-<center>
-<input type="submit" value="Register me">
-</center>
-</form>
-#end
\ No newline at end of file
+#template("registerinline.vm")
\ No newline at end of file
Modified:
xwiki/branches/XWIKI_1_0/web/standard/src/main/webapp/skins/finch/register.vm
===================================================================
---
xwiki/branches/XWIKI_1_0/web/standard/src/main/webapp/skins/finch/register.vm
2007-04-15 23:14:37 UTC (rev 2823)
+++
xwiki/branches/XWIKI_1_0/web/standard/src/main/webapp/skins/finch/register.vm
2007-04-15 23:17:41 UTC (rev 2824)
@@ -1,78 +1 @@
-#set ($register = $request.getParameter("register"))
-#if ($register)
-Registration of *$request.getParameter("register_first_name")
$request.getParameter("register_last_name")*
-
-#set( $reg= $xwiki.createUser(false))
-#if ($reg>0)
-The user [$request.getParameter("xwikiname")] has been registered.
-#else
-An error occured during the registration.
-#end
-#else
-#set($reg=0)
-#end
-
-#if ($reg<=0)
-Welcome to the registration form. This will allow you to edit pages,
once the admin gives you appropriate rights
-
-1.1 Register
-
-<form id="register" name="register" action=""
method="post">
-#includeTopic("xwiki:XWiki.RegisterJS")
-<p>
-<input type="hidden" name="template"
value="XWiki.XWikiUserTemplate" />
-<input type="hidden" name="register" value="1">
-#set( $class = $xwiki.getDocument("XWiki.XWikiUsers").xWikiClass)
-#set( $serverclass =
$xwiki.getDocument("XWiki.XWikiServerClass").xWikiClass)
-#set( $obj = $class.newObject() )
-#set( $serverobj = $class.newObject() )
-</p>
-<table class="block" cellspacing="5px">
- <tbody>
- <tr>
-#set($prop = $class.first_name)
- <td>First name
- </td>
- <td>$doc.displayEdit($prop, "register_", $obj)
- </td>
-#set($prop = $class.last_name)
- <td>Last name
- </td>
- <td>$doc.displayEdit($prop, "register_", $obj)
- </td>
- </tr>
-<tr>
-#set($prop = $class.email)
- <td>e-Mail Address
- </td>
- <td>$doc.displayEdit($prop, "register_", $obj)
- </td>
- </tr>
-<tr>
-</tr>
-<td></td>
- <tr>
-#set($prop = $class.password)
- <td>Password
- </td>
- <td>$doc.displayEdit($prop, "register_", $obj)
- </td>
- <td>Password (again)
- </td>
- <td>$doc.displayEdit($prop, "register2_", $obj)
- </td>
- </tr>
-<tr><td></td></tr>
- <tr>
- <td>Wiki username</td>
- <td>
- <input name="xwikiname" type="text" size="20"
onfocus="
prepareName(document.forms.register);" />
- </td>
- </tr>
- </tbody>
- </table>
-<center>
-<input type="submit" value="Register me">
-</center>
-</form>
-#end
\ No newline at end of file
+#template("registerinline.vm")
\ No newline at end of file
Modified:
xwiki/branches/XWIKI_1_0/web/standard/src/main/webapp/templates/registerinline.vm
===================================================================
---
xwiki/branches/XWIKI_1_0/web/standard/src/main/webapp/templates/registerinline.vm
2007-04-15 23:14:37 UTC (rev 2823)
+++
xwiki/branches/XWIKI_1_0/web/standard/src/main/webapp/templates/registerinline.vm
2007-04-15 23:17:41 UTC (rev 2824)
@@ -1,83 +1,62 @@
-<h1>$msg.get("Registration")</h1>
-#if(!$reg||$reg<0 )
-$msg.get("registerwelcome")
-<br /><br />
-#end
-#if($reg<=0)
-<span class="registrationerror" style="color: red">
-#if($reg==-2)
-$msg.get("passwordmismatch")
-#elseif($reg==-3)
-$msg.get("useralreadyexists")
+#if(!$xwiki.hasAccessLevel("view","XWiki.Registration")||$xwiki.getDocument("XWiki.Registration").isNew())
+ <h1>$msg.get("Registration")</h1>
+ #if(!$reg||$reg<0 )
+ <p>$msg.get("registerwelcome")</p>
+ #end
+ #if($reg && $reg<=0)
+ #if($reg==-2)
+ #error("$msg.get('passwordmismatch').")
+ #elseif($reg==-3)
+ #error("$msg.get('useralreadyexists').")
+ #elseif($reg==-4)
+ #error("$msg.get('invalidusername').")
+ #else
+ #error("$msg.get('registerfailed')
($msg.get('registerfailedcode') $reg).")
+ #end
+ #elseif($reg)
+ #set($xwname = "XWiki.${request.xwikiname}")
+ #info("$xwiki.getUserName($xwname) ($request.xwikiname):
$msg.get('registersuccessful').")
+ #end
+ #if(!$reg||$reg<0 )
+ <form id="register" name="register" action=""
action=""
method="post">
+ <div>
+ <input type="hidden" name="template"
value="XWiki.XWikiUserTemplate" />
+ <input type="hidden" name="register"
value="1">
+ #set( $class = $xwiki.getClass("XWiki.XWikiUsers"))
+ #set( $obj = $class.newObject() )
+ #set( $serverobj = $class.newObject() )
+ #set( $ok = $doc.use("XWiki.XWikiUsers"))
+ #if($request.register_first_name)
+ $doc.set("first_name", $request.register_first_name)
+ #end
+ #if($request.register_last_name)
+ $doc.set("last_name", $request.register_last_name)
+ #end
+ <dl>
+ #set($prop = $class.first_name)
+ <dt>$msg.get("firstname"):</dt>
+ <dd>$doc.displayEdit($prop, "register_", $obj)</dd>
+
+ #set($prop = $class.last_name)
+ <dt>$msg.get("lastname"):</dt>
+ <dd>$doc.displayEdit($prop, "register_", $obj)</dd>
+ <dt>$msg.get("loginid"):</dt>
+ <dd><input name="xwikiname" type="text"
size="20"
onfocus=" prepareName(document.forms.register);" /></dd>
+
+ #set($prop = $class.password)
+ <dt>$msg.get("password"):</dt>
+ <dd>$doc.displayEdit($prop, "register_", $obj)</dd>
+ <dt>$msg.get("passwordrepeat"):</dt>
+ <dd>$doc.displayEdit($prop, "register2_", $obj)</dd>
+
+ #set($prop = $class.email)
+ <dt>$msg.get("email"):</dt>
+ <dd>$doc.displayEdit($prop, "register_", $obj)</dd>
+ </dl>
+ <span class="buttonwrapper"><input type="submit"
value="$msg.get("iregister")"></span>
+ </div>
+ </form>
+ #end
#else
-$msg.get("registerfailed") ($msg.get("registerfailedcode) $reg)
-#end
-<br /><br />
-</span>
-#elseif($reg)
-$msg.get("registersuccessful")
-#end
-#if(!$reg||$reg<0 )
-<form id="register" name="register" action=""
action="" method="post">
-<p>
-<input type="hidden" name="template"
value="XWiki.XWikiUserTemplate" />
-<input type="hidden" name="register" value="1">
-#set( $class = $xwiki.getDocument("XWiki.XWikiUsers").xWikiClass)
-#set( $serverclass =
$xwiki.getDocument("XWiki.XWikiServerClass").xWikiClass)
-#set( $obj = $class.newObject() )
-#set( $serverobj = $class.newObject() )
-#set( $ok = $doc.use("XWiki.XWikiUsers"))
-#if($request.register_first_name)
-$doc.set("first_name", $request.register_first_name)
-#end
-#if($request.register_last_name)
-$doc.set("last_name", $request.register_last_name)
-#end
-</p>
-<table class="block" cellspacing="5px">
- <tbody>
- <tr>
-#set($prop = $class.first_name)
- <td>$msg.get("firstname")
- </td>
- <td>$doc.displayEdit($prop, "register_", $obj)
- </td>
-#set($prop = $class.last_name)
- <td>$msg.get("lastname")
- </td>
- <td>$doc.displayEdit($prop, "register_", $obj)
- </td>
- </tr>
-<tr>
-#set($prop = $class.email)
- <td>$msg.get("email")
- </td>
- <td>$doc.displayEdit($prop, "register_", $obj)
- </td>
- </tr>
-<tr>
-</tr>
-<td></td>
- <tr>
-#set($prop = $class.password)
- <td>$msg.get("password")
- </td>
- <td>$doc.displayEdit($prop, "register_", $obj)
- </td>
- <td>$msg.get("passwordrepeat")
- </td>
- <td>$doc.displayEdit($prop, "register2_", $obj)
- </td>
- </tr>
-<tr><td></td></tr>
- <tr>
- <td>$msg.get("loginid")</td>
- <td>
- <input name="xwikiname" type="text" size="20"
onfocus="
prepareName(document.forms.register);" />
- </td>
- </tr>
- </tbody>
- </table>
-<input type="submit" value="$msg.get("iregister")">
-</form>
+
$xwiki.getDocument("XWiki.Registration").getTranslatedDocument().getRenderedContent()
#end
\ No newline at end of file
--
You receive this message as a subscriber of the
xwiki-commits(a)objectweb.org mailing list.
To unsubscribe: mailto:xwiki-commits-unsubscribe@objectweb.org
For general help: mailto:sympa@objectweb.org?subject=help
ObjectWeb mailing lists service home page:
http://www.objectweb.org/wws