You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lenya.apache.org by an...@apache.org on 2003/10/13 14:18:20 UTC

cvs commit: cocoon-lenya/src/webapp/lenya/content/admin/users profile.xsp user-admin.js

andreas     2003/10/13 05:18:20

  Modified:    src/webapp/lenya/xslt/admin/users profile.xsl
               src/webapp/lenya/content/admin/users profile.xsp
                        user-admin.js
  Log:
  - checking if password and email comply certain conditions
  
  Revision  Changes    Path
  1.10      +16 -7     cocoon-lenya/src/webapp/lenya/xslt/admin/users/profile.xsl
  
  Index: profile.xsl
  ===================================================================
  RCS file: /home/cvs/cocoon-lenya/src/webapp/lenya/xslt/admin/users/profile.xsl,v
  retrieving revision 1.9
  retrieving revision 1.10
  diff -u -r1.9 -r1.10
  --- profile.xsl	3 Oct 2003 11:58:26 -0000	1.9
  +++ profile.xsl	13 Oct 2003 12:18:20 -0000	1.10
  @@ -38,11 +38,17 @@
           <form method="GET" action="{/page/continuation}.continuation">
             <table class="lenya-table-noborder">
               
  -            <xsl:apply-templates select="message | id | ldapid | fullname | email | description"/>
  +            <xsl:apply-templates select="messages"/>
  +            <xsl:apply-templates select="id"/>
  +            <xsl:apply-templates select="ldapid"/>
  +            <xsl:apply-templates select="fullname"/>
  +            <xsl:apply-templates select="email"/>
  +            <xsl:apply-templates select="description"/>
               
               <xsl:if test="@new = 'true' and not(@ldap = 'true')">
                 <tr><td colspan="2">&#160;</td></tr>
  -              <xsl:apply-templates select="password | confirm-password"/>
  +              <xsl:apply-templates select="password"/>
  +              <xsl:apply-templates select="confirm-password"/>
               </xsl:if>
               
               <tr>
  @@ -144,14 +150,17 @@
   		</tr>
   	</xsl:template>  
   	
  -	
  -  <xsl:template match="message">
  -    <xsl:if test="text()">
  +	<xsl:template match="messages">
  +    <xsl:if test="message">
         <tr>
  -        <td colspan="2"><span class="lenya-form-message-{@type}"><xsl:apply-templates/></span></td>
  +        <td colspan="2"><xsl:apply-templates/></td>
         </tr>
       </xsl:if>
  +	</xsl:template>
  +	
  +  <xsl:template match="message">
  +    <xsl:if test="preceding-sibling::message"><br/></xsl:if>
  +    <span class="lenya-form-message-{@type}"><xsl:value-of select="."/></span>
     </xsl:template>
  -  
     
   </xsl:stylesheet>
  
  
  
  1.7       +10 -1     cocoon-lenya/src/webapp/lenya/content/admin/users/profile.xsp
  
  Index: profile.xsp
  ===================================================================
  RCS file: /home/cvs/cocoon-lenya/src/webapp/lenya/content/admin/users/profile.xsp,v
  retrieving revision 1.6
  retrieving revision 1.7
  diff -u -r1.6 -r1.7
  --- profile.xsp	21 Sep 2003 13:27:24 -0000	1.6
  +++ profile.xsp	13 Oct 2003 12:18:20 -0000	1.7
  @@ -12,7 +12,16 @@
       <user>
         <xsp:attribute name="new"><jpath:value-of select="new-user"/></xsp:attribute>
         <xsp:attribute name="ldap"><jpath:value-of select="ldap"/></xsp:attribute>
  -      <message type="error"><jpath:value-of select="message"/></message>
  +      
  +      <messages>
  +        <xsp:logic>
  +          java.util.List messages = (java.util.List) <jpath:value-of select="messages"/>;
  +          for (java.util.Iterator i = messages.iterator(); i.hasNext(); ) {
  +            <message type="error"><xsp:expr>i.next()</xsp:expr></message>
  +          }
  +        </xsp:logic>	  
  +      </messages>
  +      	
         <id><jpath:value-of select="user-id"/></id>
         
         <xsp:logic>
  
  
  
  1.18      +41 -14    cocoon-lenya/src/webapp/lenya/content/admin/users/user-admin.js
  
  Index: user-admin.js
  ===================================================================
  RCS file: /home/cvs/cocoon-lenya/src/webapp/lenya/content/admin/users/user-admin.js,v
  retrieving revision 1.17
  retrieving revision 1.18
  diff -u -r1.17 -r1.18
  --- user-admin.js	13 Oct 2003 08:41:44 -0000	1.17
  +++ user-admin.js	13 Oct 2003 12:18:20 -0000	1.18
  @@ -202,6 +202,43 @@
   	add_user(false);
   }
   
  +function validate(userManager, ldap, userId, email, password, confirmPassword, messages) {
  +    
  +	messages = new Packages.java.util.ArrayList();
  +	
  +    userid = new Packages.java.lang.String(email);
  +    email = new Packages.java.lang.String(email);
  +    password = new Packages.java.lang.String(password);
  +    confirmPassword = new Packages.java.lang.String(confirmPassword);
  +    
  +    var existingUser = userManager.getUser(userId);
  +			
  +	if (existingUser != null) {
  +		messages.add("This user already exists.");
  +	}
  +			
  +	if (!ldap && !password.equals(confirmPassword)) {
  +	   	messages.add("Password and confirmed password are not equal.");
  +	}
  +			
  +	if (!Packages.org.apache.lenya.cms.ac.AbstractItem.isValidId(userId)) {
  +		messages.add("This is not a valid user ID.");
  +	}
  +			
  +    if (email.length() == 0) {
  +        messages.add("Please enter an e-mail address.");
  +    }
  +    
  +    if (password.length() < 6) {
  +        messages.add("The password must be at least six characters long.");
  +    }
  +    
  +    if (!password.matches(".*\\d.*")) {
  +        messages.add("The password must contain at least one number.");
  +    }
  +    
  +    return messages;
  +}
   
   //
   // Add a user.
  @@ -221,7 +258,7 @@
   		var email = "";
   		var fullName = "";
   		var description = "";
  -		var message = "";
  +		var messages = new Packages.java.util.ArrayList();
   		var password = "";
   		var confirmPassword = "";
   		var userManager = getAccreditableManager().getUserManager();
  @@ -233,7 +270,7 @@
   		    	"fullname" : fullName,
   		    	"email" : email,
   		    	"description" : description,
  -		    	"message" : message,
  +		    	"messages" : messages,
   		    	"ldap-id" : ldapId,
   	    		"password" : password,
   	    		"confirm-password" : confirmPassword,
  @@ -245,7 +282,6 @@
   		    	break;
   		    }
   		    
  -			message = "";
   			userId = cocoon.request.get("userid");
   			email = cocoon.request.get("email");
   			fullName = cocoon.request.get("fullname");
  @@ -254,18 +290,9 @@
   			password = cocoon.request.get("password");
   			confirmPassword = cocoon.request.get("confirm-password");
   			
  -			var existingUser = userManager.getUser(userId);
  +			messages = validate(userManager, ldap, userId, email, password, confirmPassword);
   			
  -			if (existingUser != null) {
  -				message = "This user already exists.";
  -			}
  -			else if (!ldap && !password.equals(confirmPassword)) {
  -	 		   	message = "Password and confirmed password are not equal!";
  -			}
  -			else if (!Packages.org.apache.lenya.cms.ac.AbstractItem.isValidId(userId)) {
  -				message = "This is not a valid user ID.";
  -			}
  -			else {
  +			if (messages.isEmpty()) {
   				var configDir = userManager.getConfigurationDirectory();
   				var user;
   				if (ldap) {
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: lenya-cvs-unsubscribe@cocoon.apache.org
For additional commands, e-mail: lenya-cvs-help@cocoon.apache.org