Example usage for org.apache.wicket.markup.head JavaScriptHeaderItem forScript

List of usage examples for org.apache.wicket.markup.head JavaScriptHeaderItem forScript

Introduction

In this page you can find the example usage for org.apache.wicket.markup.head JavaScriptHeaderItem forScript.

Prototype

public static JavaScriptContentHeaderItem forScript(CharSequence javascript, String id) 

Source Link

Document

Creates a JavaScriptContentHeaderItem for the given content.

Usage

From source file:com.axway.ats.testexplorer.pages.model.ColumnsDialog.java

License:Apache License

@SuppressWarnings({ "rawtypes" })
public ColumnsDialog(String id, final DataGrid grid, List<TableColumn> columnDefinitions) {

    super(id);/*from   ww  w .  ja va 2 s  .c o m*/
    setOutputMarkupId(true);

    this.dbColumnDefinitions = columnDefinitions;

    DataView<TableColumn> table = new DataView<TableColumn>("headers",
            new ListDataProvider<TableColumn>(dbColumnDefinitions), 100) {

        private static final long serialVersionUID = 1L;

        @Override
        protected void populateItem(final Item<TableColumn> item) {

            final TableColumn column = item.getModelObject();

            item.add(new CheckBox("visible", new PropertyModel<Boolean>(column, "visible")));
            item.add(new Label("columnName", new PropertyModel<String>(column, "columnName")));

            item.add(new AjaxEventBehavior("click") {

                private static final long serialVersionUID = 1L;

                @Override
                protected void onEvent(AjaxRequestTarget target) {

                    TableColumn tableColumn = (TableColumn) this.getComponent().getDefaultModelObject();
                    tableColumn.setVisible(!tableColumn.isVisible());

                    if (tableColumn.isVisible()) {
                        item.add(AttributeModifier.replace("class", "selected"));
                    } else {
                        item.add(AttributeModifier.replace("class", "notSelected"));
                    }
                    grid.getColumnState().setColumnVisibility(tableColumn.getColumnId(),
                            tableColumn.isVisible());
                    target.add(grid);
                    target.add(this.getComponent());

                    open(target);
                }
            });
            item.setOutputMarkupId(true);

            if (column.isVisible()) {
                item.add(AttributeModifier.replace("class", "selected"));
            } else {
                item.add(AttributeModifier.replace("class", "notSelected"));
            }
        }
    };
    add(table);

    final Form<Void> columnDefinitionsForm = new Form<Void>("columnDefinitionsForm");
    add(columnDefinitionsForm);

    AjaxSubmitLink saveButton = new AjaxSubmitLink("saveButton", columnDefinitionsForm) {

        private static final long serialVersionUID = 1L;

        @Override
        protected void updateAjaxAttributes(AjaxRequestAttributes attributes) {

            super.updateAjaxAttributes(attributes);
            AjaxCallListener ajaxCallListener = new AjaxCallListener();
            ajaxCallListener.onPrecondition("getTableColumnDefinitions(); ");
            attributes.getAjaxCallListeners().add(ajaxCallListener);
        }

        @Override
        protected void onSubmit(AjaxRequestTarget target, Form<?> form) {

            String columnDefinitionsString = form.getRequest().getPostParameters()
                    .getParameterValue("columnDefinitions").toString();

            List<TableColumn> jsColDefinitions = asList(columnDefinitionsString);
            orderTableColumns(dbColumnDefinitions, jsColDefinitions);

            try {
                saveColumnDefinitionsToDb(jsColDefinitions);

                modifyDBColumnDefinitionList(jsColDefinitions);

            } catch (DatabaseAccessException dae) {
                throw new RuntimeException("Unable to save table Column definitions in db: "
                        + ((TestExplorerSession) Session.get()).getDbName(), dae);
            } catch (SQLException sqle) {
                throw new RuntimeException("Unable to save table Column definitions in db: "
                        + ((TestExplorerSession) Session.get()).getDbName(), sqle);
            }

            close(target);
        }
    };
    add(AttributeModifier.append("class", "runsTableColDialogDivWrapper"));
    columnDefinitionsForm.add(saveButton);

    add(new Behavior() {

        private static final long serialVersionUID = 1L;

        @Override
        public void renderHead(Component component, IHeaderResponse response) {

            if (autoAddToHeader()) {

                String script = "jQuery.fn.center=function(){" + "this.css(\"position\",\"absolute\");"
                        + "this.css(\"top\",(jQuery(window).height()-this.height())/2+jQuery(window).scrollTop()+\"px\");"
                        + "this.css(\"left\",(jQuery(window).width()-this.width())/2+jQuery(window).scrollLeft()+\"px\");"
                        + "return this};";

                String css = "#settingsoverlay,.settingsoverlay,#settingsoverlay_high,"
                        + ".settingsoverlay_high{filter:Alpha(Opacity=40);"
                        + "-moz-opacity:.4;opacity:.4;background-color:#444;display:none;position:absolute;"
                        + "left:0;top:0;width:100%;height:100%;text-align:center;z-index:5000;}"
                        + "#settingsoverlay_high,.settingsoverlay_high{z-index:6000;}"
                        + "#settingsoverlaycontent,#settingsoverlaycontent_high{display:none;z-index:5500;"
                        + "text-align:center;}.settingsoverlaycontent,"
                        + ".settingsoverlaycontent_high{display:none;z-index:5500;text-align:left;}"
                        + "#settingsoverlaycontent_high,.settingsoverlaycontent_high{z-index:6500;}"
                        + "#settingsoverlaycontent .modalborder,"
                        + "#settingsoverlaycontent_high .modalborder{padding:15px;width:300px;"
                        + "border:1px solid #444;background-color:white;"
                        + "-webkit-box-shadow:0 0 10px rgba(0,0,0,0.8);-moz-box-shadow:0 0 10px rgba(0,0,0,0.8);"
                        + "box-shadow:0 0 10px rgba(0,0,0,0.8);"
                        + "filter:progid:DXImageTransform.Microsoft.dropshadow(OffX=5,OffY=5,Color='gray');"
                        + "-ms-filter:\"progid:DXImageTransform.Microsoft.dropshadow(OffX=5,OffY=5,Color='gray')\";}";

                response.render(JavaScriptHeaderItem.forScript(script, null));
                response.render(CssHeaderItem.forCSS(css, null));
                if (isSupportIE6()) {
                    response.render(JavaScriptHeaderItem
                            .forReference(new PackageResourceReference(getClass(), "jquery.bgiframe.js")));
                }
            }

            response.render(OnDomReadyHeaderItem.forScript(getJS()));
        }

        private String getJS() {

            StringBuilder sb = new StringBuilder();
            sb.append("if (jQuery('#").append(getDivId())
                    .append("').length == 0) { jQuery(document.body).append('")
                    .append(getDiv().replace("'", "\\'")).append("'); }");
            return sb.toString();
        }

        private String getDivId() {

            return getMarkupId() + "_ovl";
        }

        private String getDiv() {

            if (isClickBkgToClose()) {
                return ("<div id=\"" + getDivId() + "\" class=\"settingsoverlayCD\" onclick=\""
                        + getCloseString() + "\"></div>");
            } else {
                return ("<div id=\"" + getDivId() + "\" class=\"settingsoverlayCD\"></div>");
            }
        }
    });

}

From source file:com.comcast.cdn.traffic_control.traffic_monitor.wicket.behaviors.AbstractMultiAjaxBehavior.java

License:Apache License

/**
 * @see org.apache.wicket.behavior.AbstractAjaxBehavior#renderHead(Component,
 *      org.apache.wicket.markup.head.IHeaderResponse)
 *//*from  w  ww  . j ava  2s .  co m*/
@Override
public void renderHead(final Component component, final IHeaderResponse response) {
    super.renderHead(component, response);

    CoreLibrariesContributor.contributeAjax(component.getApplication(), response);

    final RequestCycle requestCycle = component.getRequestCycle();
    final Url baseUrl = requestCycle.getUrlRenderer().getBaseUrl();
    final CharSequence ajaxBaseUrl = Strings.escapeMarkup(baseUrl.toString());
    response.render(JavaScriptHeaderItem.forScript("Wicket.Ajax.baseUrl=\"" + ajaxBaseUrl + "\";",
            "wicket-ajax-base-url"));

    renderExtraHeaderContributors(component, response);
}

From source file:com.comcast.cdn.traffic_control.traffic_monitor.wicket.behaviors.MultiUpdatingTimerBehavior.java

License:Apache License

@Override
public void renderHead(final Component component, final IHeaderResponse response) {
    super.renderHead(component, response);

    response.render(JavaScriptHeaderItem.forScript(
            "if (typeof(Wicket.TimerHandles) === 'undefined') {Wicket.TimerHandles = {}}", WICKET_TIMERS_ID));

    final WebRequest request = (WebRequest) component.getRequest();

    if (!isStopped() && (!headRendered || !request.isAjax())) {
        headRendered = true;/*w  w w.j  a  va 2  s.  c  o  m*/
        response.render(OnLoadHeaderItem.forScript(getJsTimeoutCall(updateInterval)));
    }
}

From source file:com.cubeia.games.poker.admin.wicket.pages.tournaments.scheduled.EditTournament.java

License:Open Source License

@Override
public void renderHead(IHeaderResponse response) {
    super.renderHead(response);

    CharSequence callbackFunction = pcAjaxBehaviour.getCallbackFunction(explicit("start"), explicit("end"),
            explicit("cron"), explicit("announceMinutes"), explicit("registeringMinutes"),
            explicit("visibleMinutes"));
    HeaderItem onDomReadyHeaderItem = JavaScriptHeaderItem
            .forScript("var previewTournamentSchedule = " + callbackFunction.toString(), null);
    response.render(onDomReadyHeaderItem);
}

From source file:com.evolveum.midpoint.gui.api.page.PageBase.java

License:Apache License

protected ModalWindow createModalWindow(final String id, IModel<String> title, int width, int height) {
    final ModalWindow modal = new ModalWindow(id);
    add(modal);/*ww w.ja v  a2 s  .c  o  m*/

    modal.setResizable(false);
    modal.setTitle(title);
    modal.setCookieName(PageBase.class.getSimpleName() + ((int) (Math.random() * 100)));

    modal.setInitialWidth(width);
    modal.setWidthUnit("px");
    modal.setInitialHeight(height);
    modal.setHeightUnit("px");

    modal.setCloseButtonCallback(new ModalWindow.CloseButtonCallback() {

        @Override
        public boolean onCloseButtonClicked(AjaxRequestTarget target) {
            return true;
        }
    });

    modal.setWindowClosedCallback(new ModalWindow.WindowClosedCallback() {

        @Override
        public void onClose(AjaxRequestTarget target) {
            modal.close(target);
        }
    });

    modal.add(new AbstractDefaultAjaxBehavior() {

        @Override
        public void renderHead(Component component, IHeaderResponse response) {
            response.render(OnDomReadyHeaderItem.forScript("Wicket.Window.unloadConfirmation = false;"));
            response.render(JavaScriptHeaderItem.forScript(
                    "$(document).ready(function() {\n" + "  $(document).bind('keyup', function(evt) {\n"
                            + "    if (evt.keyCode == 27) {\n" + getCallbackScript() + "\n"
                            + "        evt.preventDefault();\n" + "    }\n" + "  });\n" + "});",
                    id));
        }

        @Override
        protected void respond(AjaxRequestTarget target) {
            modal.close(target);
        }
    });

    return modal;
}

From source file:com.evolveum.midpoint.web.component.util.SimplePanel.java

License:Apache License

protected ModalWindow createModalWindow(final String id, IModel<String> title, int width, int height) {
    final ModalWindow modal = new ModalWindow(id);
    add(modal);/*  w w  w .  j  ava  2s.  c om*/

    modal.setResizable(false);
    modal.setTitle(title);
    modal.setCookieName(PageBase.class.getSimpleName() + ((int) (Math.random() * 100)));

    modal.setInitialWidth(width);
    modal.setWidthUnit("px");
    modal.setInitialHeight(height);
    modal.setHeightUnit("px");

    modal.setCloseButtonCallback(new ModalWindow.CloseButtonCallback() {

        @Override
        public boolean onCloseButtonClicked(AjaxRequestTarget target) {
            return true;
        }
    });

    modal.setWindowClosedCallback(new ModalWindow.WindowClosedCallback() {

        @Override
        public void onClose(AjaxRequestTarget target) {
            modal.close(target);
        }
    });

    modal.add(new AbstractDefaultAjaxBehavior() {

        @Override
        public void renderHead(Component component, IHeaderResponse response) {
            response.render(OnDomReadyHeaderItem.forScript("Wicket.Window.unloadConfirmation = false;"));
            response.render(JavaScriptHeaderItem.forScript(
                    "$(document).ready(function() {\n" + "  $(document).bind('keyup', function(evt) {\n"
                            + "    if (evt.keyCode == 27) {\n" + getCallbackScript() + "\n"
                            + "        evt.preventDefault();\n" + "    }\n" + "  });\n" + "});",
                    id));
        }

        @Override
        protected void respond(AjaxRequestTarget target) {
            modal.close(target);

        }
    });

    return modal;
}

From source file:com.evolveum.midpoint.web.page.admin.resources.PageResourceVisualizationCytoscape.java

License:Apache License

@Override
public void renderHead(IHeaderResponse response) {
    super.renderHead(response);

    Map<String, Object> map = new HashMap<>();
    map.put("callbackUrlRetrieve", retrievalBehavior.getCallbackUrl().toString());
    map.put("callbackUrlDelete", deletionBehavior.getCallbackUrl().toString());

    PackageTextTemplate ptt = new PackageTextTemplate(PageResourceVisualizationCytoscape.class,
            "get-and-process-cytoscape-data.js");
    String javaScript = ptt.asString(map);
    System.out.println("Javascript = " + javaScript);
    response.render(JavaScriptHeaderItem.forScript(javaScript, null));
}

From source file:com.evolveum.midpoint.web.page.PageTemplate.java

License:Apache License

protected ModalWindow createModalWindow(final String id, IModel<String> title, int width, int height) {
    final ModalWindow modal = new ModalWindow(id);
    add(modal);//from w  ww  . j  a va2  s .  c  o  m

    modal.setResizable(false);
    modal.setTitle(title);
    modal.setCookieName(PageTemplate.class.getSimpleName() + ((int) (Math.random() * 100)));

    modal.setInitialWidth(width);
    modal.setWidthUnit("px");
    modal.setInitialHeight(height);
    modal.setHeightUnit("px");

    modal.setCloseButtonCallback(new ModalWindow.CloseButtonCallback() {

        @Override
        public boolean onCloseButtonClicked(AjaxRequestTarget target) {
            return true;
        }
    });

    modal.setWindowClosedCallback(new ModalWindow.WindowClosedCallback() {

        @Override
        public void onClose(AjaxRequestTarget target) {
            modal.close(target);
        }
    });

    modal.add(new AbstractDefaultAjaxBehavior() {

        @Override
        public void renderHead(Component component, IHeaderResponse response) {
            response.render(OnDomReadyHeaderItem.forScript("Wicket.Window.unloadConfirmation = false;"));
            response.render(JavaScriptHeaderItem.forScript(
                    "$(document).ready(function() {\n" + "  $(document).bind('keyup', function(evt) {\n"
                            + "    if (evt.keyCode == 27) {\n" + getCallbackScript() + "\n"
                            + "        evt.preventDefault();\n" + "    }\n" + "  });\n" + "});",
                    id));
        }

        @Override
        protected void respond(AjaxRequestTarget target) {
            modal.close(target);
        }
    });

    return modal;
}

From source file:com.gitblit.wicket.ng.NgController.java

License:Apache License

@Override
public void renderHead(Component component, IHeaderResponse response) {
    // add Google AngularJS reference
    response.render(/*  ww w  . j  av  a 2  s  .  c  om*/
            JavaScriptHeaderItem.forReference(new PackageResourceReference(NgController.class, "angular.js") {
                private static final long serialVersionUID = 1L;

                @Override
                public List<HeaderItem> getDependencies() {
                    List<HeaderItem> deps = super.getDependencies();
                    deps.add(JavaScriptHeaderItem.forReference(JQueryResourceReference.get()));
                    return deps;
                }
            }));

    Gson gson = new GsonBuilder().create();

    StringBuilder sb = new StringBuilder();
    line(sb, MessageFormat.format("<!-- AngularJS {0} data controller -->", name));
    line(sb, MessageFormat.format("function {0}($scope) '{'", name));
    for (Map.Entry<String, Object> entry : variables.entrySet()) {
        String var = entry.getKey();
        Object o = entry.getValue();
        String json = gson.toJson(o);
        line(sb, MessageFormat.format("\t$scope.{0} = {1};", var, json));
    }
    line(sb, "}");

    response.render(JavaScriptHeaderItem.forScript(sb.toString(), "angularController-" + name));
}

From source file:com.gmail.volodymyrdotsenko.jqxwicket.core.JQueryAbstractBehavior.java

License:Apache License

@Override
public void renderHead(Component component, IHeaderResponse response) {
    // Gets the library settings //
    JQueryLibrarySettings settings = getJQueryLibrarySettings();

    // jQuery Globalize resource reference //
    if (settings != null && settings.getJQueryGlobalizeReference() != null) {
        response.render(new PriorityHeaderItem(
                JavaScriptHeaderItem.forReference(settings.getJQueryGlobalizeReference())));
    }/*w  w  w . j a  v  a 2 s . c  o m*/

    // Additional resource references //
    for (ResourceReference reference : this.references) {
        if (reference instanceof CssResourceReference) {
            response.render(new PriorityHeaderItem(CssHeaderItem.forReference(reference)));
        }

        if (reference instanceof JavaScriptResourceReference) {
            response.render(new PriorityHeaderItem(JavaScriptHeaderItem.forReference(reference)));
        }
    }

    // Adds the statement //
    AjaxRequestTarget target = RequestCycleUtils.getAjaxRequestTarget();

    if (target != null) {
        target.appendJavaScript(this.$());
    } else {
        this.renderScript(JavaScriptHeaderItem.forScript(this.toString(), this.getToken()), response);
    }
}