You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wicket.apache.org by mg...@apache.org on 2014/01/09 14:03:49 UTC
[03/50] [abbrv] git commit: Add 'change' Ajax link next to the
captcha image to show how to refresh/change it.
Add 'change' Ajax link next to the captcha image to show how to refresh/change it.
(cherry picked from commit e594bb85675eab0a3dfd7fdec738fada07b9607b)
Project: http://git-wip-us.apache.org/repos/asf/wicket/repo
Commit: http://git-wip-us.apache.org/repos/asf/wicket/commit/1945ffd8
Tree: http://git-wip-us.apache.org/repos/asf/wicket/tree/1945ffd8
Diff: http://git-wip-us.apache.org/repos/asf/wicket/diff/1945ffd8
Branch: refs/heads/sandbox/WICKET-4686
Commit: 1945ffd8d4446cd88da82ed65a67e67a457dbd7d
Parents: f39d8fa
Author: Martin Tzvetanov Grigorov <mg...@apache.org>
Authored: Mon Dec 16 11:49:35 2013 +0200
Committer: Martin Tzvetanov Grigorov <mg...@apache.org>
Committed: Mon Dec 16 11:50:40 2013 +0200
----------------------------------------------------------------------
.../apache/wicket/examples/captcha/Captcha.html | 3 +-
.../apache/wicket/examples/captcha/Captcha.java | 41 +++++++++++++-------
2 files changed, 29 insertions(+), 15 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/wicket/blob/1945ffd8/wicket-examples/src/main/java/org/apache/wicket/examples/captcha/Captcha.html
----------------------------------------------------------------------
diff --git a/wicket-examples/src/main/java/org/apache/wicket/examples/captcha/Captcha.html b/wicket-examples/src/main/java/org/apache/wicket/examples/captcha/Captcha.html
index ae26525..057b990 100644
--- a/wicket-examples/src/main/java/org/apache/wicket/examples/captcha/Captcha.html
+++ b/wicket-examples/src/main/java/org/apache/wicket/examples/captcha/Captcha.html
@@ -12,11 +12,12 @@
<form wicket:id="captchaForm">
<p>
<img wicket:id="captchaImage" />
+ <a wicket:id="changeCaptcha">change</a>
</p>
<p>
Please replicate the text you see above
<br />
- <input wicket:id="password" id="password" type="text" size="40" />
+ <input wicket:id="captchaText" type="text" size="40" />
<input type="submit" value="submit" />
</p>
</form>
http://git-wip-us.apache.org/repos/asf/wicket/blob/1945ffd8/wicket-examples/src/main/java/org/apache/wicket/examples/captcha/Captcha.java
----------------------------------------------------------------------
diff --git a/wicket-examples/src/main/java/org/apache/wicket/examples/captcha/Captcha.java b/wicket-examples/src/main/java/org/apache/wicket/examples/captcha/Captcha.java
index 1b8e044..d1217ac 100644
--- a/wicket-examples/src/main/java/org/apache/wicket/examples/captcha/Captcha.java
+++ b/wicket-examples/src/main/java/org/apache/wicket/examples/captcha/Captcha.java
@@ -16,6 +16,8 @@
*/
package org.apache.wicket.examples.captcha;
+import org.apache.wicket.ajax.AjaxRequestTarget;
+import org.apache.wicket.ajax.markup.html.AjaxLink;
import org.apache.wicket.examples.WicketExamplePage;
import org.apache.wicket.extensions.markup.html.captcha.CaptchaImageResource;
import org.apache.wicket.markup.ComponentTag;
@@ -24,7 +26,6 @@ import org.apache.wicket.markup.html.form.RequiredTextField;
import org.apache.wicket.markup.html.image.Image;
import org.apache.wicket.markup.html.panel.FeedbackPanel;
import org.apache.wicket.model.PropertyModel;
-import org.apache.wicket.request.mapper.parameter.PageParameters;
import org.apache.wicket.util.value.ValueMap;
@@ -51,9 +52,23 @@ public class Captcha extends WicketExamplePage
super(id);
captchaImageResource = new CaptchaImageResource(imagePass);
- add(new Image("captchaImage", captchaImageResource));
- add(new RequiredTextField<String>("password", new PropertyModel<String>(properties,
- "password"))
+ final Image captchaImage = new Image("captchaImage", captchaImageResource);
+ captchaImage.setOutputMarkupId(true);
+ add(captchaImage);
+
+ AjaxLink<Void> changeCaptchaLink = new AjaxLink<Void>("changeCaptcha")
+ {
+ @Override
+ public void onClick(AjaxRequestTarget target)
+ {
+ captchaImageResource.invalidate();
+ target.add(captchaImage);
+ }
+ };
+ add(changeCaptchaLink);
+
+ add(new RequiredTextField<String>("captchaText", new PropertyModel<String>(properties,
+ "captchaText"), String.class)
{
@Override
protected final void onComponentTag(final ComponentTag tag)
@@ -71,10 +86,10 @@ public class Captcha extends WicketExamplePage
@Override
public void onSubmit()
{
- if (!imagePass.equals(getPassword()))
+ if (!imagePass.equals(getCaptchaText()))
{
- error("Captcha password '" + getPassword() + "' is wrong.\n" +
- "Correct password was: " + imagePass);
+ error("Captcha text '" + getCaptchaText() + "' is wrong.\n" +
+ "Correct text was: " + imagePass);
}
else
{
@@ -108,19 +123,17 @@ public class Captcha extends WicketExamplePage
private final ValueMap properties = new ValueMap();
/**
- * Construct.
- *
- * @param parameters
+ * Constructor.
*/
- public Captcha(final PageParameters parameters)
+ public Captcha()
{
final FeedbackPanel feedback = new FeedbackPanel("feedback");
add(feedback);
add(new CaptchaForm<>("captchaForm"));
}
- private String getPassword()
+ private String getCaptchaText()
{
- return properties.getString("password");
+ return properties.getString("captchaText");
}
-}
\ No newline at end of file
+}