Example usage for org.apache.wicket.ajax AjaxRequestTarget appendJavaScript

List of usage examples for org.apache.wicket.ajax AjaxRequestTarget appendJavaScript

Introduction

In this page you can find the example usage for org.apache.wicket.ajax AjaxRequestTarget appendJavaScript.

Prototype

void appendJavaScript(CharSequence javascript);

Source Link

Document

Adds javascript that will be evaluated on the client side after components are replaced

If the javascript needs to do something asynchronously (i.e.

Usage

From source file:org.alienlabs.hatchetharry.view.page.HomePage.java

License:Open Source License

private void generateImportDeckLink(final String id) {
    final AjaxLink<Void> importDeckLink = new AjaxLink<Void>(id) {
        private static final long serialVersionUID = 1L;

        @Override//from  ww  w  .  j  av a 2  s  .c  om
        public void onClick(final AjaxRequestTarget target) {
            target.prependJavaScript(BattlefieldService.HIDE_MENUS);
            target.appendJavaScript("jQuery('#importDeck').dialog('open');");
        }
    };

    importDeckLink.setOutputMarkupId(true);
    this.importDeckDialog.setOutputMarkupId(true);
    this.add(importDeckLink);
}

From source file:org.alienlabs.hatchetharry.view.page.HomePage.java

License:Open Source License

private void generateCreateTokenLink(final String id, final ModalWindow window) {
    window.setInitialWidth(500);// w  ww . ja va  2  s .co  m
    window.setInitialHeight(510);

    final CreateTokenModalWindow createTokenModalWindow = new CreateTokenModalWindow(window.getContentId(),
            window);
    window.setContent(createTokenModalWindow);
    window.setCssClassName(ModalWindow.CSS_CLASS_GRAY);
    window.setMaskType(ModalWindow.MaskType.SEMI_TRANSPARENT);
    window.setTitle("Create a token");
    window.setOutputMarkupId(true);
    this.setCreateTokenModalWindow(window);
    this.add(window);

    final AjaxLink<Void> createTokenLink = new AjaxLink<Void>(id) {
        private static final long serialVersionUID = 1L;

        @Override
        public void onClick(final AjaxRequestTarget target) {
            target.prependJavaScript(BattlefieldService.HIDE_MENUS);
            target.appendJavaScript("Wicket.Window.unloadConfirmation = false;");

            HomePage.this.createTokenWindow.show(target);
        }
    };

    createTokenLink.setOutputMarkupId(true).setMarkupId(id);
    this.add(createTokenLink);
}

From source file:org.alienlabs.hatchetharry.view.page.HomePage.java

License:Open Source License

private void generateLoginLink(final String id, final ModalWindow window) {
    window.setInitialWidth(300);//  www .  j av  a  2  s  . c  o  m
    window.setInitialHeight(200);
    window.setTitle("HatchetHarry login");
    window.setContent(new LoginModalWindow(window.getContentId(), window));
    window.setCssClassName(ModalWindow.CSS_CLASS_GRAY);
    window.setMaskType(ModalWindow.MaskType.SEMI_TRANSPARENT);
    window.setOutputMarkupId(true);
    window.setCloseButtonCallback(new ModalWindow.CloseButtonCallback() {
        private static final long serialVersionUID = 1L;

        @Override
        public boolean onCloseButtonClicked(final AjaxRequestTarget target) {
            target.appendJavaScript("authenticateUserWithFacebook();");
            return true;
        }
    });
    this.add(window);

    final AjaxLink<Void> loginLink = new AjaxLink<Void>(id) {
        private static final long serialVersionUID = 1L;

        @Override
        public void onClick(final AjaxRequestTarget target) {
            target.prependJavaScript(BattlefieldService.HIDE_MENUS);
            target.appendJavaScript("Wicket.Window.unloadConfirmation = false;");
            HomePage.this.loginWindow.show(target);
        }
    };

    loginLink.setOutputMarkupId(true);
    this.add(loginLink);
}

From source file:org.alienlabs.hatchetharry.view.page.HomePage.java

License:Open Source License

private void generatePreferencesLink(final String id, final ModalWindow window) {
    window.setInitialWidth(630);/*from w  w w . ja v a2 s  .  c om*/
    window.setInitialHeight(300);
    window.setTitle("User preferences");
    window.setCssClassName(ModalWindow.CSS_CLASS_GRAY);
    window.setMaskType(ModalWindow.MaskType.SEMI_TRANSPARENT);
    window.setOutputMarkupId(true);
    this.add(window);

    final AjaxLink<Void> preferencesLink = new AjaxLink<Void>(id) {
        private static final long serialVersionUID = 1L;

        @Override
        public void onClick(final AjaxRequestTarget target) {
            window.setContent(new UserPreferencesModalWindow(window.getContentId(), window));
            target.prependJavaScript(BattlefieldService.HIDE_MENUS);
            target.appendJavaScript("Wicket.Window.unloadConfirmation = false;");
            HomePage.this.preferencesWindow.show(target);
        }
    };

    preferencesLink.setOutputMarkupId(true);
    this.add(preferencesLink);
}

From source file:org.alienlabs.hatchetharry.view.page.HomePage.java

License:Open Source License

@Subscribe
public void displayNotification(final AjaxRequestTarget target, final NotifierCometChannel event) {
    switch (event.getAction()) {
    case DRAW_CARD_ACTION:
        target.appendJavaScript("jQuery.gritter.add({ title : '" + event.getPlayerName()
                + "', text : \"has drawn a card!\" , image : 'image/logoh2.gif', sticky : false, time : ''});");
        break;/*from   ww w  .  j av  a 2s  . co m*/

    case END_OF_TURN_ACTION:
        target.appendJavaScript("jQuery.gritter.add({ title : '" + event.getPlayerName()
                + "', text : \"has declared the end of his (her) turn!\" , image : 'image/logoh2.gif', sticky : false, time : ''});");
        HomePage.this.session.setPlayerEndingHerTurn(event.getPlayerName());
        break;

    case PLAY_CARD_FROM_HAND_ACTION:
        target.appendJavaScript("jQuery.gritter.add({ title : '" + event.getPlayerName()
                + "', text : \"has played '" + event.getCardName()
                + "'!\", image : 'image/logoh2.gif', sticky : false, time : ''});");
        break;

    case PLAY_CARD_FROM_GRAVEYARD_ACTION:
        target.appendJavaScript("jQuery.gritter.add({ title : '" + event.getPlayerName()
                + "', text : \"has played '" + event.getCardName()
                + "' from graveyard!\", image : 'image/logoh2.gif', sticky : false, time : ''});");
        break;

    case PUT_CARD_TO_GRAVEYARD_FROM_BATTLEFIELD_ACTION:
        target.appendJavaScript("jQuery.gritter.add({ title : '" + event.getPlayerName()
                + "', text : \"has put '" + event.getCardName() + "' to "
                + (event.getTargetPlayerName().equals(event.getPlayerName()) ? "his (her)"
                        : event.getTargetPlayerName() + "'s")
                + " graveyard\", image : 'image/logoh2.gif', sticky : false, time : ''});");
        break;

    case PUT_CARD_TO_HAND_FROM_BATTLEFIELD_ACTION:
        target.appendJavaScript("jQuery.gritter.add({ title : '" + event.getPlayerName()
                + "', text : \"has put '" + event.getCardName() + "' to "
                + (event.getTargetPlayerName().equals(event.getPlayerName()) ? "his (her)"
                        : event.getTargetPlayerName() + "'s")
                + " hand from the battlefield\", image : 'image/logoh2.gif', sticky : false, time : ''});");
        break;

    case PUT_CARD_TO_EXILE_FROM_BATTLEFIELD_ACTION:
        target.appendJavaScript("jQuery.gritter.add({ title : '" + event.getPlayerName()
                + "', text : \"has put '" + event.getCardName() + "' to "
                + (event.getTargetPlayerName().equals(event.getPlayerName()) ? "his (her)"
                        : event.getTargetPlayerName() + "'s")
                + " exile from the battlefield\", image : 'image/logoh2.gif', sticky : false, time : ''});");
        break;

    case COMBAT_IN_PROGRESS_ACTION:
        if (Boolean.FALSE.equals(event.isCombatInProgress())) {
            target.appendJavaScript("jQuery.gritter.add({ title : '" + event.getPlayerName()
                    + "', text : 'has finished combat', image : 'image/logoh2.gif', sticky : false, time : ''});");
        } else {
            target.appendJavaScript("jQuery.gritter.add({ title : '" + event.getPlayerName()
                    + "', text : 'is declaring combat!', image : 'image/logoh2.gif', sticky : false, time : ''});");
        }
        break;

    case PLAY_TOP_LIBRARY_CARD_ACTION:
        target.appendJavaScript("jQuery.gritter.add({ title : '" + event.getPlayerName()
                + "', text : \"has played the top card of "
                + (event.getPlayerName().equals(event.getTargetPlayerName()) ? "his (her) "
                        : event.getTargetPlayerName() + "'s ")
                + "library, which is: " + event.getCardName()
                + "\", image : 'image/logoh2.gif', sticky : false, time : ''});");
        break;
    case PUT_TOP_LIBRARY_CARD_TO_HAND_ACTION:
        target.appendJavaScript("jQuery.gritter.add({ title : '" + event.getPlayerName()
                + "', text : \"has put the top card of "
                + (event.getPlayerName().equals(event.getTargetPlayerName()) ? "his (her) "
                        : event.getTargetPlayerName() + "'s ")
                + "library in "
                + (event.getPlayerName().equals(event.getTargetPlayerName()) ? "his (her) "
                        : event.getTargetPlayerName() + "'s ")
                + "hand, and it is: " + event.getCardName()
                + "\", image : 'image/logoh2.gif', sticky : false, time : ''});");
        break;
    case PUT_TOP_LIBRARY_CARD_TO_GRAVEYARD_ACTION:
        target.appendJavaScript("jQuery.gritter.add({ title : '" + event.getPlayerName()
                + "', text : \"has put the top card of "
                + (event.getPlayerName().equals(event.getTargetPlayerName()) ? "his (her) "
                        : event.getTargetPlayerName() + "'s ")
                + "library in "
                + (event.getPlayerName().equals(event.getTargetPlayerName()) ? "his (her) "
                        : event.getTargetPlayerName() + "'s ")
                + "graveyard, and it is: " + event.getCardName()
                + "\", image : 'image/logoh2.gif', sticky : false, time : ''});");
        break;
    case PUT_TOKEN_ON_BATTLEFIELD_ACTION:
        target.appendJavaScript("jQuery.gritter.add({ title : '" + event.getPlayerName()
                + "', text : \"has put a " + event.getCardName() + " token on the battlefield"
                + "\", image : 'image/logoh2.gif', sticky : false, time : ''});");
        break;
    case DESTROY_TOKEN_ACTION:
        target.appendJavaScript("jQuery.gritter.add({ title : '" + event.getPlayerName()
                + "', text : \"has destroyed a " + event.getCardName() + " token"
                + "\", image : 'image/logoh2.gif', sticky : false, time : ''});");
        break;

    case SHUFFLE_LIBRARY_ACTION:
        target.appendJavaScript("jQuery.gritter.add({ title : '" + event.getPlayerName()
                + "', text : 'has shuffled his (her) library', image : 'image/logoh2.gif', sticky : false, time : ''});");
        break;

    case END_GAME_ACTION:
        target.appendJavaScript("jQuery.gritter.add({ title : '" + event.getPlayerName()
                + "', text : 'has put an end to the match', image : 'image/logoh2.gif', sticky : false, time : '', class_name: 'gritter-light'});");
        break;

    case IN_RESPONSE_ACTION:
        target.appendJavaScript("jQuery.gritter.add({ title : '" + event.getPlayerName()
                + "', text : 'has an action to play in response', image : 'image/logoh2.gif', sticky : false, time : '', class_name: 'gritter-light'});");
        break;

    case FINE_FOR_ME_ACTION:
        target.appendJavaScript("jQuery.gritter.add({ title : '" + event.getPlayerName()
                + "', text : 'said : \"Fine for me!\"', image : 'image/logoh2.gif', sticky : false, time : ''});");
        break;

    case REVEAL_HAND:
        if ("".equals(event.getTargetPlayerName())) {
            target.appendJavaScript("jQuery.gritter.add({ title : '" + event.getPlayerName()
                    + "', text : 'reveals his (her) hand', image : 'image/logoh2.gif', sticky : false, time : ''});");
        } else {
            target.appendJavaScript("jQuery.gritter.add({ title : '" + event.getTargetPlayerName()
                    + "', text : \" stops looking at " + event.getPlayerName()
                    + "'s hand\", image : 'image/logoh2.gif', sticky : false, time : ''});");
        }
        break;

    case DISCARD_AT_RANDOM:
        target.appendJavaScript("jQuery.gritter.add({ title : '" + event.getPlayerName()
                + "', text : 'discards a card from his (her) hand at random, and it is : " + event.getCardName()
                + "', image : 'image/logoh2.gif', sticky : false, time : ''});");
        break;

    case ASK_FOR_MULLIGAN:
        target.appendJavaScript("jQuery.gritter.add({ title : '" + event.getPlayerName()
                + "', text : 'asks for a mulligan. He (she) would like to draw " + event.getGameId()
                + " card(s). Do you agree?', image : 'image/logoh2.gif', sticky : false, time : ''});");
        break;

    case OK_FOR_MULLIGAN:
        target.appendJavaScript("jQuery.gritter.add({ title : '" + event.getPlayerName()
                + "', text : 'agrees for mulligan. " + event.getTargetPlayerName() + " can draw "
                + event.getGameId() + " card(s).', image : 'image/logoh2.gif', sticky : false, time : ''});");
        break;

    case DONE_MULLIGAN:
        target.appendJavaScript("jQuery.gritter.add({ title : '" + event.getPlayerName()
                + "', text : 'has done mulligan. He (she) has drawn " + event.getGameId()
                + " card(s).', image : 'image/logoh2.gif', sticky : false, time : ''});");
        break;

    case OK_FOR_MULLIGAN_BUT_ONE_LESS:
        target.appendJavaScript("jQuery.gritter.add({ title : '" + event.getPlayerName()
                + "', text : 'agrees for mulligan with one card less. " + event.getTargetPlayerName()
                + " can draw " + event.getGameId()
                + " card(s).', image : 'image/logoh2.gif', sticky : false, time : ''});");
        break;

    case REFUSE_MULLIGAN:
        target.appendJavaScript("jQuery.gritter.add({ title : '" + event.getPlayerName()
                + "', text : 'disagrees for " + event.getTargetPlayerName()
                + " to do mulligan.', image : 'image/logoh2.gif', sticky : false, time : ''});");
        break;

    // TODO: split this notifier action and the one of
    // card counters
    default:
        throw new IllegalArgumentException("can not treat this case in HomePage#displayNotification()");
    }
}

From source file:org.alienlabs.hatchetharry.view.page.HomePage.java

License:Open Source License

@Subscribe
public void untapAll(final AjaxRequestTarget target, final UntapAllCometChannel event) {
    final StringBuilder buil = new StringBuilder();

    for (int i = 0; i < event.getCardsToUntap().size(); i++) {
        final MagicCard mc = event.getCardsToUntap().get(i);
        buil.append("jQuery('#card" + mc.getUuid().replace("-", "_")
                + "').parents('.cardContainer').removeClass('tapped'); ");
        mc.setTapped(false);/* w w  w.j a  v a2 s  .co m*/
        this.persistenceService.updateCard(mc);
    }
    target.appendJavaScript(buil.toString());
}

From source file:org.alienlabs.hatchetharry.view.page.HomePage.java

License:Open Source License

/**
 * @param event not used, since Comet channels are managed by
 *              JoinGameModalWindow/*from   w  w  w . java  2  s .  c  om*/
 */
@Subscribe
public void displayJoinGameMessage(final AjaxRequestTarget target,
        final JoinGameNotificationCometChannel event) {
    target.appendJavaScript(
            "jQuery.gritter.add({ title : 'A player joined in!', text : 'Ready to play?', image : 'image/logoh2.gif', sticky : false, time : ''});");
}

From source file:org.alienlabs.hatchetharry.view.page.HomePage.java

License:Open Source License

@Subscribe
public void removeCardFromBattlefield(final AjaxRequestTarget target,
        final PutToGraveyardFromBattlefieldCometChannel event) {
    if (event.isShouldUpdateZone()) {
        BattlefieldService.updateGraveyard(target, event.getGameId(), event.getTargetPlayerId(),
                event.getDeckId());//from   w  w w  .  j  a  v a2 s .c  o m
    }
    BattlefieldService.updateCardsAndRestoreStateInBattlefield(target, this.persistenceService,
            event.getGameId(), event.getMagicCard(), false);
    target.appendJavaScript(BattlefieldService.REACTIVATE_BATTLEFIELD_JAVASCRIPT);
}

From source file:org.alienlabs.hatchetharry.view.page.HomePage.java

License:Open Source License

@Subscribe
public void exileCardFromBattlefield(final AjaxRequestTarget target,
        final PutToExileFromBattlefieldCometChannel event) {
    if (event.isShouldUpdateZone()) {
        BattlefieldService.updateExile(target, event.getGameId(), event.getTargetPlayerId(), event.getDeckId());
    }/*from ww w  .  j  ava  2 s  . c  om*/

    BattlefieldService.updateCardsAndRestoreStateInBattlefield(target, this.persistenceService,
            event.getGameId(), event.getMagicCard(), false);
    target.appendJavaScript(BattlefieldService.REACTIVATE_BATTLEFIELD_JAVASCRIPT);
}

From source file:org.alienlabs.hatchetharry.view.page.HomePage.java

License:Open Source License

@Subscribe
public void rotateCard(final AjaxRequestTarget target, final CardRotateCometChannel event) {
    final MagicCard mc = event.getMc();
    mc.setTapped(event.isTapped());// www  . j  ava 2s.  c  o  m

    final StringBuilder buil = new StringBuilder();

    buil.append("window.setTimeout(function() { jQuery('#card");
    buil.append(event.getCardUuid().replace("-", "_"));
    if (mc.isTapped()) {
        buil.append("').parents('.cardContainer').addClass('tapped'); }, 500); ");
    } else {
        buil.append("').parents('.cardContainer').removeClass('tapped'); }, 500); ");
    }

    target.appendJavaScript(buil.toString());
}