Example usage for com.google.gwt.user.client Element getPropertyObject

List of usage examples for com.google.gwt.user.client Element getPropertyObject

Introduction

In this page you can find the example usage for com.google.gwt.user.client Element getPropertyObject.

Prototype

@Override
    public Object getPropertyObject(String name) 

Source Link

Usage

From source file:com.eduworks.russel.ui.client.pagebuilder.screen.GroupScreen.java

License:Apache License

/**
 * display Renders the Utility screen using appropriate templates and sets up handlers
 *///from   w  ww.  j  a v  a2s. co m
public void display() {
    PageAssembler.ready(new HTML(Russel.htmlTemplates.getGroupManagementPanel().getText()));
    PageAssembler.buildContents();

    DOM.getElementById("r-menuCollections").getParentElement().removeClassName("active");
    DOM.getElementById("r-menuProjects").getParentElement().removeClassName("active");
    DOM.getElementById("r-menuWorkspace").getParentElement().removeClassName("active");

    PageAssembler.attachHandler("groupPermission", Event.ONCLICK, new EventCallback() {
        @Override
        public void onEvent(Event event) {
            Russel.screen.loadScreen(new PermissionScreen(PermissionScreen.TYPE_GROUP,
                    DOM.getElementById("groupSelect").getPropertyString("value")), false);
        }
    });

    PageAssembler.attachHandler("groupUser", Event.ONCLICK, new EventCallback() {
        @Override
        public void onEvent(Event event) {
            Russel.screen.loadScreen(new UserScreen(), true);
        }
    });

    PageAssembler.attachHandler("groupSelect", Event.ONCHANGE, new EventCallback() {
        @Override
        public void onEvent(Event event) {
            fillGroupDetails(DOM.getElementById("groupSelect").getPropertyString("value"));
        }
    });

    RusselApi.getGroups(new ESBCallback<ESBPacket>() {
        @Override
        public void onSuccess(ESBPacket esbPacket) {
            JSONArray jsonArray = esbPacket.getArray("obj");
            for (int i = 0; i < jsonArray.size(); i++) {
                makeOption(jsonArray.get(i).isString().stringValue(), "groupSelect");
            }
            if (jsonArray.size() > 0)
                fillGroupDetails(jsonArray.get(0).isString().stringValue());
        }

        @Override
        public void onFailure(Throwable caught) {
        }
    });

    PageAssembler.attachHandler("groupCreate", Event.ONCLICK, new EventCallback() {
        @Override
        public void onEvent(Event event) {
            PageAssembler.openPopup("createGroupModal");
        }
    });

    PageAssembler.attachHandler("groupDelete", Event.ONCLICK, new EventCallback() {
        @Override
        public void onEvent(Event event) {
            deleteGroup(DOM.getElementById("groupSelect").getPropertyString("value"));
        }
    });

    PageAssembler.attachHandler("modalCreateCancel", Event.ONCLICK, new EventCallback() {
        @Override
        public void onEvent(Event event) {
            DOM.getElementById("newGroupname").setPropertyString("value", "");
            PageAssembler.closePopup("createGroupModal");
        }
    });

    PageAssembler.attachHandler("modalCreateGroup", Event.ONCLICK, new EventCallback() {
        @Override
        public void onEvent(Event event) {
            createGroup(DOM.getElementById("newGroupname").getPropertyString("value"));
            PageAssembler.closePopup("createGroupModal");
            DOM.getElementById("newGroupname").setPropertyString("value", "");
        }
    });

    PageAssembler.attachHandler("addMembers", Event.ONCLICK, new EventCallback() {
        @Override
        public void onEvent(Event event) {
            Element e = DOM.getElementById("userList");
            JsArray entities = (JsArray) e.getPropertyObject("selectedOptions");
            for (int i = 0; i < entities.length(); i++) {
                final Element a = (Element) entities.get(i);
                RusselApi.addGroupMemberUser(a.getPropertyString("value"),
                        DOM.getElementById("groupSelect").getPropertyString("value"),
                        new ESBCallback<ESBPacket>() {
                            @Override
                            public void onFailure(Throwable caught) {
                            }

                            @Override
                            public void onSuccess(ESBPacket esbPacket) {
                                makeOption(a.getPropertyString("value"), "memberUserSelect");
                            }
                        });
            }
            int size = entities.length();
            for (int i = 0; i < size; i++)
                ((Element) entities.get(0)).removeFromParent();

            e = DOM.getElementById("groupList");
            entities = (JsArray) e.getPropertyObject("selectedOptions");
            for (int i = 0; i < entities.length(); i++) {
                final Element a = (Element) entities.get(i);
                RusselApi.addGroupMemberGroup(a.getPropertyString("value"),
                        DOM.getElementById("groupSelect").getPropertyString("value"),
                        new ESBCallback<ESBPacket>() {
                            @Override
                            public void onFailure(Throwable caught) {
                            }

                            @Override
                            public void onSuccess(ESBPacket esbPacket) {
                                makeOption(a.getPropertyString("value"), "memberGroupSelect");
                            }
                        });
            }
            size = entities.length();
            for (int i = 0; i < size; i++)
                ((Element) entities.get(0)).removeFromParent();
        }
    });

    PageAssembler.attachHandler("removeMembers", Event.ONCLICK, new EventCallback() {
        @Override
        public void onEvent(Event event) {
            Element e = DOM.getElementById("memberUserSelect");
            JsArray entities = (JsArray) e.getPropertyObject("selectedOptions");
            for (int i = 0; i < entities.length(); i++) {
                final Element a = (Element) entities.get(i);
                RusselApi.removeGroupMemberUser(a.getPropertyString("value"),
                        DOM.getElementById("groupSelect").getPropertyString("value"),
                        new ESBCallback<ESBPacket>() {
                            @Override
                            public void onFailure(Throwable caught) {
                            }

                            @Override
                            public void onSuccess(ESBPacket esbPacket) {
                                makeOption(a.getPropertyString("value"), "userList");
                            }
                        });
            }
            int size = entities.length();
            for (int i = 0; i < size; i++)
                ((Element) entities.get(0)).removeFromParent();

            e = DOM.getElementById("memberGroupSelect");
            entities = (JsArray) e.getPropertyObject("selectedOptions");
            for (int i = 0; i < entities.length(); i++) {
                final Element a = (Element) entities.get(i);
                RusselApi.removeGroupMemberGroup(a.getPropertyString("value"),
                        DOM.getElementById("groupSelect").getPropertyString("value"),
                        new ESBCallback<ESBPacket>() {
                            @Override
                            public void onFailure(Throwable caught) {
                            }

                            @Override
                            public void onSuccess(ESBPacket esbPacket) {
                                makeOption(a.getPropertyString("value"), "groupList");
                            }
                        });
            }
            size = entities.length();
            for (int i = 0; i < size; i++)
                ((Element) entities.get(0)).removeFromParent();
        }
    });
}