Author: sebawagner
Date: Mon Sep 10 17:49:39 2012
New Revision: 1382999

URL: http://svn.apache.org/viewvc?rev=1382999&view=rev
Log:
OPENMEETINGS-428 Add some form elements, update Wicket to 6.0.0 (Final), Beta3 
had some bugs in the form processing

Added:
    
incubator/openmeetings/trunk/singlewebapp/WebContent/openmeetings/css/images/forms/
    
incubator/openmeetings/trunk/singlewebapp/WebContent/openmeetings/css/images/forms/arrow_refresh_small.png
   (with props)
    
incubator/openmeetings/trunk/singlewebapp/WebContent/openmeetings/css/images/forms/cancel_icon.png
   (with props)
    
incubator/openmeetings/trunk/singlewebapp/WebContent/openmeetings/css/images/forms/disk.png
   (with props)
    
incubator/openmeetings/trunk/singlewebapp/WebContent/openmeetings/css/images/forms/plus_icon.png
   (with props)
    
incubator/openmeetings/trunk/singlewebapp/WebContent/openmeetings/css/openmeetings-forms.css
Modified:
    
incubator/openmeetings/trunk/singlewebapp/WebContent/openmeetings/css/theme.css
    incubator/openmeetings/trunk/singlewebapp/build.xml
    incubator/openmeetings/trunk/singlewebapp/ivy.xml
    
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/user/UserForm.java
    
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/user/UsersPanel.html
    
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/pages/BasePage.html

Added: 
incubator/openmeetings/trunk/singlewebapp/WebContent/openmeetings/css/images/forms/arrow_refresh_small.png
URL: 
http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/WebContent/openmeetings/css/images/forms/arrow_refresh_small.png?rev=1382999&view=auto
==============================================================================
Binary file - no diff available.

Propchange: 
incubator/openmeetings/trunk/singlewebapp/WebContent/openmeetings/css/images/forms/arrow_refresh_small.png
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: 
incubator/openmeetings/trunk/singlewebapp/WebContent/openmeetings/css/images/forms/cancel_icon.png
URL: 
http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/WebContent/openmeetings/css/images/forms/cancel_icon.png?rev=1382999&view=auto
==============================================================================
Binary file - no diff available.

Propchange: 
incubator/openmeetings/trunk/singlewebapp/WebContent/openmeetings/css/images/forms/cancel_icon.png
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: 
incubator/openmeetings/trunk/singlewebapp/WebContent/openmeetings/css/images/forms/disk.png
URL: 
http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/WebContent/openmeetings/css/images/forms/disk.png?rev=1382999&view=auto
==============================================================================
Binary file - no diff available.

Propchange: 
incubator/openmeetings/trunk/singlewebapp/WebContent/openmeetings/css/images/forms/disk.png
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: 
incubator/openmeetings/trunk/singlewebapp/WebContent/openmeetings/css/images/forms/plus_icon.png
URL: 
http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/WebContent/openmeetings/css/images/forms/plus_icon.png?rev=1382999&view=auto
==============================================================================
Binary file - no diff available.

Propchange: 
incubator/openmeetings/trunk/singlewebapp/WebContent/openmeetings/css/images/forms/plus_icon.png
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: 
incubator/openmeetings/trunk/singlewebapp/WebContent/openmeetings/css/openmeetings-forms.css
URL: 
http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/WebContent/openmeetings/css/openmeetings-forms.css?rev=1382999&view=auto
==============================================================================
--- 
incubator/openmeetings/trunk/singlewebapp/WebContent/openmeetings/css/openmeetings-forms.css
 (added)
+++ 
incubator/openmeetings/trunk/singlewebapp/WebContent/openmeetings/css/openmeetings-forms.css
 Mon Sep 10 17:49:39 2012
@@ -0,0 +1,67 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you 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.
+ */
+div.formSaveBar {
+       width: 100%;
+       height: 22px;
+       background-color: #BDC0DB;
+}
+ 
+div.formSaveButton input {
+       background: url(images/forms/disk.png) no-repeat;
+       float: left;
+       cursor: pointer;
+       width: 18px;
+       height: 18px;
+       border: none;
+       margin-left: 2px;
+       margin-top: 2px;
+}
+
+div.formNewButton input {
+       background: url(images/forms/plus_icon.png) no-repeat;
+       float: left;
+       cursor: pointer;
+       width: 18px;
+       height: 18px;
+       border: none;
+       margin-left: 2px;
+       margin-top: 2px;
+}
+
+div.formRefreshButton input {
+       background: url(images/forms/arrow_refresh_small.png) no-repeat;
+       float: left;
+       cursor: pointer;
+       width: 18px;
+       height: 18px;
+       border: none;
+       margin-left: 2px;
+       margin-top: 2px;
+}
+
+div.formCancelButton input {
+       background: url(images/forms/cancel_icon.png) no-repeat;
+       float: left;
+       cursor: pointer;
+       width: 18px;
+       height: 18px;
+       border: none;
+       margin-left: 2px;
+       margin-top: 2px;
+}
\ No newline at end of file

Modified: 
incubator/openmeetings/trunk/singlewebapp/WebContent/openmeetings/css/theme.css
URL: 
http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/WebContent/openmeetings/css/theme.css?rev=1382999&r1=1382998&r2=1382999&view=diff
==============================================================================
--- 
incubator/openmeetings/trunk/singlewebapp/WebContent/openmeetings/css/theme.css 
(original)
+++ 
incubator/openmeetings/trunk/singlewebapp/WebContent/openmeetings/css/theme.css 
Mon Sep 10 17:49:39 2012
@@ -23,7 +23,7 @@
 }
 
 #menu {
-       background-color: #322F32;
+       background-color: #BDC0DB;
        margin-top: 10px;
 }
 

Modified: incubator/openmeetings/trunk/singlewebapp/build.xml
URL: 
http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/build.xml?rev=1382999&r1=1382998&r2=1382999&view=diff
==============================================================================
--- incubator/openmeetings/trunk/singlewebapp/build.xml (original)
+++ incubator/openmeetings/trunk/singlewebapp/build.xml Mon Sep 10 17:49:39 2012
@@ -1026,6 +1026,10 @@
        <target name="clean.ivy" depends="-install-ivy,clean.all" 
description="Clears out the Ivy cache">
                <ivy:cleancache />
        </target>
+       
+       <target name="clean.ivy2"  depends="-install-ivy" description="Clears 
out the Ivy cache">
+               <ivy:cleancache />
+       </target>
 
        <target name="prepare-eclipse" if="java6.installed" description="Layout 
various files necessary for development" depends="-java6or7.check">
                <antcall target="-retrieve-mainlibs" inheritAll="true" 
inheritRefs="true" />

Modified: incubator/openmeetings/trunk/singlewebapp/ivy.xml
URL: 
http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/ivy.xml?rev=1382999&r1=1382998&r2=1382999&view=diff
==============================================================================
--- incubator/openmeetings/trunk/singlewebapp/ivy.xml (original)
+++ incubator/openmeetings/trunk/singlewebapp/ivy.xml Mon Sep 10 17:49:39 2012
@@ -218,25 +218,25 @@
                <dependency org="org.simpleframework" name="simple-xml" 
rev="2.6.6" conf="openmeetings->*" transitive="false">
                        <include type="jar" />
                </dependency>
-               <dependency org="org.apache.wicket" name="wicket-request" 
rev="6.0.0-beta3" conf="openmeetings->*" transitive="false">
+               <dependency org="org.apache.wicket" name="wicket-request" 
rev="6.0.0" conf="openmeetings->*" transitive="false">
                        <include type="jar" />
                </dependency>
-               <dependency org="org.apache.wicket" name="wicket-util" 
rev="6.0.0-beta3" conf="openmeetings->*" transitive="false">
+               <dependency org="org.apache.wicket" name="wicket-util" 
rev="6.0.0" conf="openmeetings->*" transitive="false">
                        <include type="jar" />
                </dependency>
-               <dependency org="org.apache.wicket" name="wicket-core" 
rev="6.0.0-beta3" conf="openmeetings->*" transitive="false">
+               <dependency org="org.apache.wicket" name="wicket-core" 
rev="6.0.0" conf="openmeetings->*" transitive="false">
                        <include type="jar" />
                </dependency>
-               <dependency org="org.apache.wicket" name="wicket-auth-roles" 
rev="6.0.0-beta3" conf="openmeetings->*" transitive="false">
+               <dependency org="org.apache.wicket" name="wicket-auth-roles" 
rev="6.0.0" conf="openmeetings->*" transitive="false">
                        <include type="jar" />
                </dependency>
-               <dependency org="org.apache.wicket" name="wicket-ioc" 
rev="6.0.0-beta3" conf="openmeetings->*" transitive="false">
+               <dependency org="org.apache.wicket" name="wicket-ioc" 
rev="6.0.0" conf="openmeetings->*" transitive="false">
                        <include type="jar" />
                </dependency>
-               <dependency org="org.apache.wicket" name="wicket-extensions" 
rev="6.0.0-beta3" conf="openmeetings->*" transitive="false">
+               <dependency org="org.apache.wicket" name="wicket-extensions" 
rev="6.0.0" conf="openmeetings->*" transitive="false">
                        <include type="jar" />
                </dependency>
-               <dependency org="org.apache.wicket" name="wicket-datetime" 
rev="6.0.0-beta3" conf="openmeetings->*" transitive="false">
+               <dependency org="org.apache.wicket" name="wicket-datetime" 
rev="6.0.0" conf="openmeetings->*" transitive="false">
                        <include type="jar" />
                </dependency>
                

Modified: 
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/user/UserForm.java
URL: 
http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/user/UserForm.java?rev=1382999&r1=1382998&r2=1382999&view=diff
==============================================================================
--- 
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/user/UserForm.java
 (original)
+++ 
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/user/UserForm.java
 Mon Sep 10 17:49:39 2012
@@ -21,6 +21,7 @@ import org.apache.openmeetings.persisten
 import org.apache.openmeetings.web.app.Application;
 import org.apache.openmeetings.web.app.WebSession;
 import org.apache.wicket.ajax.AjaxRequestTarget;
+import org.apache.wicket.ajax.form.AjaxFormValidatingBehavior;
 import org.apache.wicket.ajax.markup.html.form.AjaxButton;
 import org.apache.wicket.extensions.markup.html.form.DateTextField;
 import org.apache.wicket.extensions.yui.calendar.DatePicker;
@@ -31,10 +32,16 @@ import org.apache.wicket.markup.html.for
 import org.apache.wicket.markup.html.form.IChoiceRenderer;
 import org.apache.wicket.markup.html.form.ListMultipleChoice;
 import org.apache.wicket.markup.html.form.RadioChoice;
+import org.apache.wicket.markup.html.form.RequiredTextField;
 import org.apache.wicket.markup.html.form.TextArea;
 import org.apache.wicket.markup.html.form.TextField;
+import org.apache.wicket.markup.html.panel.FeedbackPanel;
 import org.apache.wicket.model.CompoundPropertyModel;
 import org.apache.wicket.model.IModel;
+import org.apache.wicket.model.Model;
+import org.apache.wicket.util.time.Duration;
+import org.apache.wicket.validation.validator.EmailAddressValidator;
+import org.apache.wicket.validation.validator.StringValidator;
 
 public class UserForm extends Form<Users> {
 
@@ -83,9 +90,16 @@ public class UserForm extends Form<Users
        public UserForm(String id, final Users user) {
                super(id, new CompoundPropertyModel<Users>(user));
                setOutputMarkupId(true);
-
-               add(new TextField<String>("login"));
-
+               
+               final FeedbackPanel feedback = new FeedbackPanel("feedback");
+        feedback.setOutputMarkupId(true);
+        add(feedback);
+
+               RequiredTextField<String> login = new 
RequiredTextField<String>("login");
+               login.add(new StringValidator(4, null));
+               login.setLabel(new Model<String>("testname"));
+               add(login);
+               
                add(new DropDownChoice<Long>("salutations_id", 
getSalutationsIds(),
                                new IChoiceRenderer<Long>() {
                                        private static final long 
serialVersionUID = 1L;
@@ -122,7 +136,10 @@ public class UserForm extends Form<Users
                                }));
 
                add(new CheckBox("forceTimeZoneCheck"));
-               add(new TextField<String>("adresses.email"));
+               RequiredTextField<String> email = new 
RequiredTextField<String>("adresses.email");
+               email.setLabel(new Model<String>("testemail"));
+               email.add(EmailAddressValidator.getInstance());
+               add(email);
                add(new TextField<String>("adresses.phone"));
                add(new CheckBox("sendSMS"));
                DateTextField age = new DateTextField("age");
@@ -272,21 +289,73 @@ public class UserForm extends Form<Users
                
                add(new TextArea<String>("userOffers"));
                add(new TextArea<String>("userSearchs"));
+               
+               // attach an ajax validation behavior to all form component's 
keydown
+        // event and throttle it down to once per second
+               AjaxFormValidatingBehavior.addToAllFormComponents(this, 
"keydown", Duration.ONE_SECOND);
 
                // add a button that can be used to submit the form via ajax
-               add(new AjaxButton("ajax-button", this) {
+               add(new AjaxButton("ajax-save-button", this) {
+                       private static final long serialVersionUID = 
839803820502260006L;
+
+                       @Override
+                       protected void onSubmit(AjaxRequestTarget target, 
Form<?> form) {
+                               // repaint the feedback panel so that it is 
hidden
+                               target.add(feedback);
+                       }
+
+                       @Override
+                       protected void onError(AjaxRequestTarget target, 
Form<?> form) {
+                               // repaint the feedback panel so errors are 
shown
+                               target.add(feedback);
+                       }
+               });
+               
+               add(new AjaxButton("ajax-new-button", this) {
+                       private static final long serialVersionUID = 
839803820502260006L;
+
+                       @Override
+                       protected void onSubmit(AjaxRequestTarget target, 
Form<?> form) {
+                               // repaint the feedback panel so that it is 
hidden
+                               target.add(feedback);
+                       }
+
+                       @Override
+                       protected void onError(AjaxRequestTarget target, 
Form<?> form) {
+                               // repaint the feedback panel so errors are 
shown
+                               target.add(feedback);
+                       }
+               });
+               
+               add(new AjaxButton("ajax-refresh-button", this) {
+                       private static final long serialVersionUID = 
839803820502260006L;
+
+                       @Override
+                       protected void onSubmit(AjaxRequestTarget target, 
Form<?> form) {
+                               // repaint the feedback panel so that it is 
hidden
+                               target.add(feedback);
+                       }
+
+                       @Override
+                       protected void onError(AjaxRequestTarget target, 
Form<?> form) {
+                               // repaint the feedback panel so errors are 
shown
+                               target.add(feedback);
+                       }
+               });
+               
+               add(new AjaxButton("ajax-cancel-button", this) {
                        private static final long serialVersionUID = 
839803820502260006L;
 
                        @Override
                        protected void onSubmit(AjaxRequestTarget target, 
Form<?> form) {
                                // repaint the feedback panel so that it is 
hidden
-                               // target.add(feedback);
+                               target.add(feedback);
                        }
 
                        @Override
                        protected void onError(AjaxRequestTarget target, 
Form<?> form) {
                                // repaint the feedback panel so errors are 
shown
-                               // target.add(feedback);
+                               target.add(feedback);
                        }
                });
        }

Modified: 
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/user/UsersPanel.html
URL: 
http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/user/UsersPanel.html?rev=1382999&r1=1382998&r2=1382999&view=diff
==============================================================================
--- 
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/user/UsersPanel.html
 (original)
+++ 
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/user/UsersPanel.html
 Mon Sep 10 17:49:39 2012
@@ -44,6 +44,22 @@
                                        <span wicket:id="selected"></span>
                                        <br/>
                                        <form wicket:id="form">
+                                               <div class="formSaveBar">
+                                           <div class="formSaveButton">
+                                               <input type="submit" value="" 
wicket:id="ajax-save-button"/>
+                                           </div>
+                                           <div class="formNewButton">
+                                               <input type="submit" value="" 
wicket:id="ajax-new-button"/>
+                                           </div>
+                                           <div class="formRefreshButton">
+                                               <input type="submit" value="" 
wicket:id="ajax-refresh-button"/>
+                                           </div>
+                                           <div class="formCancelButton">
+                                               <input type="submit" value="" 
wicket:id="ajax-cancel-button"/>
+                                           </div>
+                                   </div>
+                                   <br/>
+                                               <div wicket:id="feedback">[[ 
feedback ]]</div>
                                    <wicket:ommessage key="132" />: <input 
type="text" wicket:id="login"/>
                                    <br/>
                                    <wicket:ommessage key="133" />: <input 
type="password" />
@@ -96,8 +112,6 @@
                                    <br/>
                                    <wicket:ommessage key="1163" />: <textarea 
wicket:id="userSearchs"/>
                                    <br/>
-                                   <br/>
-                                   <input type="submit" value="submit via 
ajax" wicket:id="ajax-button"/>
                                </form>
                                </td>
                        </tr>

Modified: 
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/pages/BasePage.html
URL: 
http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/pages/BasePage.html?rev=1382999&r1=1382998&r2=1382999&view=diff
==============================================================================
--- 
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/pages/BasePage.html
 (original)
+++ 
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/pages/BasePage.html
 Mon Sep 10 17:49:39 2012
@@ -22,6 +22,7 @@
        
xmlns:wicket="http://wicket.apache.org/dtds.data/wicket-xhtml1.5-strict.dtd"; 
lang="en">
        <head>
                <title><span wicket:id="pageTitle">[title]</span></title>
+               <link rel="stylesheet" type="text/css" 
href="css/openmeetings-forms.css"/>
        </head>
        <body>
                <div wicket:id="header"></div>


Reply via email to