1 package uk.ac.cam.spectra.spectrasub.pages;
2
3 import org.apache.log4j.Logger;
4 import org.apache.tapestry.IMarkupWriter;
5 import org.apache.tapestry.IRequestCycle;
6 import org.apache.tapestry.form.IFormComponent;
7 import org.apache.tapestry.valid.IFieldTracking;
8 import org.apache.tapestry.valid.IValidator;
9 import org.apache.tapestry.valid.ValidationDelegate;
10
11 public class AddMetadataValidationDelegate extends ValidationDelegate {
12
13
14
15
16 private static final long serialVersionUID = -2451063029640475735L;
17
18 @SuppressWarnings("unused")
19 private static final Logger LOG = Logger
20 .getLogger(AddMetadataValidationDelegate.class);
21
22 @Override
23 public void writeLabelPrefix(IFormComponent component,
24 IMarkupWriter writer, IRequestCycle cycle) {
25 if (isInError(component)) {
26 writer.begin("span");
27 writer.attribute("class", "error");
28 }
29 }
30
31 @Override
32 public void writeLabelSuffix(IFormComponent component,
33 IMarkupWriter writer, IRequestCycle cycle) {
34 if (isInError(component)) {
35 writer.end("span");
36 }
37 }
38
39 @Override
40 public void writeLabelAttributes(IMarkupWriter writer, IRequestCycle cycle,
41 IFormComponent component) {
42 if (isInError(component)) {
43
44 writer.removeAttribute("class");
45 writer.attribute("class", "error");
46 }
47 }
48
49 @Override
50 public void writeSuffix(IMarkupWriter writer, IRequestCycle cycle,
51 IFormComponent component, IValidator validator) {
52 writer.begin("span");
53 writer.attribute("class", "error");
54 IFieldTracking ft = getCurrentFieldTracking();
55 if (ft != null && ft.getErrorRenderer() != null) {
56 ft.getErrorRenderer().render(writer, cycle);
57 }
58 writer.end();
59 }
60
61 }