1 package fr.ifremer.quadrige3.synchro.server.pages;
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27 import fr.ifremer.quadrige3.synchro.server.application.Application;
28 import fr.ifremer.quadrige3.synchro.server.application.WebSession;
29 import org.apache.wicket.AttributeModifier;
30 import org.apache.wicket.markup.html.WebMarkupContainer;
31 import org.apache.wicket.markup.html.WebPage;
32 import org.apache.wicket.markup.html.basic.Label;
33 import org.apache.wicket.markup.html.panel.FeedbackPanel;
34 import org.apache.wicket.model.IModel;
35 import org.apache.wicket.model.StringResourceModel;
36 import org.apache.wicket.request.mapper.parameter.PageParameters;
37
38 import com.googlecode.wicket.jquery.ui.panel.JQueryFeedbackPanel;
39
40 import fr.ifremer.quadrige3.synchro.server.config.SynchroServerConfiguration;
41
42 public class BasePage extends WebPage {
43
44 private static final long serialVersionUID = 2589483412605551035L;
45
46 private final FeedbackPanel feedback;
47
48
49 public BasePage(final PageParameters parameters) {
50 WebSession session = (WebSession)getSession();
51
52
53 add(new Label("pageTitle", getTitleModel()));
54
55
56 WebMarkupContainer contentLanguage = new WebMarkupContainer("contentLanguage");
57 contentLanguage.add(new AttributeModifier("content", session.getLocale().toString()));
58 add(contentLanguage);
59
60 feedback = new JQueryFeedbackPanel("feedback");
61 feedback.setOutputMarkupId(true);
62 add(feedback);
63
64
65 String version = getConfiguration().getVersionAsString();
66 if (version == null) {
67 version = "";
68 }
69 add(new Label("version", version));
70 }
71
72 protected WebSession getWebSession() {
73 return (WebSession)getSession();
74 }
75
76 public final SynchroServerConfiguration getConfiguration() {
77 return ((Application)getApplication()).getConfiguration();
78 }
79
80 protected IModel<String> getTitleModel() {
81 return new StringResourceModel("base.title", this, null);
82 }
83
84 protected FeedbackPanel getFeedbackPanel() {
85 return feedback;
86 }
87 }