Index: cms/src/main/java/org/hippoecm/frontend/plugins/xinha/dialog/links/ExternalLinkDialog.html =================================================================== --- cms/src/main/java/org/hippoecm/frontend/plugins/xinha/dialog/links/ExternalLinkDialog.html (revision 118231) +++ cms/src/main/java/org/hippoecm/frontend/plugins/xinha/dialog/links/ExternalLinkDialog.html (revision ) @@ -15,41 +15,50 @@ --> - - - - - - - + + + + -
+ + + + - + - - - + + + - - - - + + + + - - + + + + +
- + - + - -
+
- + - -
[Url box]
-
+ +
[Url box]
+
- + - -
[Title text box]
-
+
[Title text box]
+
+ -
-   - -
[Open in new window checkbox]
-
+   + +
[Open in new window checkbox]
+
+ -
+
> \ No newline at end of file Index: cms/src/main/java/org/hippoecm/frontend/plugins/xinha/dialog/links/ExternalLinkDialog.java =================================================================== --- cms/src/main/java/org/hippoecm/frontend/plugins/xinha/dialog/links/ExternalLinkDialog.java (revision 118231) +++ cms/src/main/java/org/hippoecm/frontend/plugins/xinha/dialog/links/ExternalLinkDialog.java (revision ) @@ -19,6 +19,8 @@ import org.apache.wicket.ajax.AjaxRequestTarget; import org.apache.wicket.ajax.form.OnChangeAjaxBehavior; import org.apache.wicket.markup.html.form.DropDownChoice; +import org.apache.wicket.markup.html.panel.EmptyPanel; +import org.apache.wicket.markup.html.panel.Fragment; import org.apache.wicket.model.IModel; import org.apache.wicket.model.PropertyModel; import org.apache.wicket.model.StringResourceModel; @@ -39,10 +41,16 @@ private final static String SVN_ID = "$Id: ExternalLinkDialog.java 118231 2011-09-21 09:51:48Z ksalic $"; private static final String SIZE = "49"; + private static final String DISABLE_OPEN_IN_A_NEW_WINDOW_CONFIG = "disableOpenInANewWindow"; + private boolean disableOpenInANewWindow; public ExternalLinkDialog(IPluginContext context, IPluginConfig config, IModel model) { super(model); + if (config.containsKey(DISABLE_OPEN_IN_A_NEW_WINDOW_CONFIG)) { + disableOpenInANewWindow = config.getAsBoolean(DISABLE_OPEN_IN_A_NEW_WINDOW_CONFIG); + } + final DropDownChoice protocolsChoice = new DropDownChoice("protocols", new PropertyModel(model, "protocol"), ExternalXinhaLink.PROTOCOLS); protocolsChoice.add(new OnChangeAjaxBehavior() { @@ -71,17 +79,26 @@ titleTextField.setSize(SIZE); add(titleTextField); + if (disableOpenInANewWindow) { + add(new EmptyPanel("extra")); + } else { + Fragment fragment = new Fragment("extra", "popup", this); + - final LabelledBooleanFieldWidget targetField = new LabelledBooleanFieldWidget("popup", new PropertyModel(model, "target"), - new StringResourceModel("labels.popup", this, null)); + final LabelledBooleanFieldWidget targetField = new LabelledBooleanFieldWidget("popup", new PropertyModel(model, "target"), + new StringResourceModel("labels.popup", this, null)); - add(targetField); + fragment.add(targetField); + add(fragment); - } - + } + + + } + @Override protected void onOk() { ExternalXinhaLink link = getModelObject(); link.setHref(link.getProtocol() + link.getAddress()); } - + @Override public IValueMap getProperties() { return new ValueMap("width=450,height=190");