- //this.naturesTab.add(this.basicPage);
- this.natureButtonGB = new qx.ui.container.Composite(new qx.ui.layout.HBox(5, "right"));
- this.natureButtonGB.setMarginTop(15);
- this.add(this.natureButtonGB);
-
-
- this.add(this.naturesTab, {flex:1});
-
- this.naturesTab.setVisibility("excluded");
- this.fakePane = new qx.ui.container.Composite(new qx.ui.layout.Canvas());
- this.fakePane.setVisibility("visible");
- this.fakePane.setDecorator("tabview-pane");
- this.fakePane.setMarginTop(30);
- this.add(this.fakePane, {flex:1});
-
- title = new qx.ui.basic.Atom("User Details", "org.argeo.security.ria/preferences-users.png");
- title.setFont(qx.bom.Font.fromString("16px sans-serif bold"));
- this.buttonGB.add(title);
- this.buttonGB.add(new qx.ui.core.Spacer(), {flex:1});
-
- var title2 = new qx.ui.basic.Atom("User Natures", "org.argeo.security.ria/identity.png");
- title2.setFont(qx.bom.Font.fromString("16px sans-serif bold"));
- this.natureButtonGB.add(title2);
- this.natureButtonGB.add(new qx.ui.core.Spacer(), {flex:1});
-
-
- },
-
- saveUser : function(){
- var user = this.getCurrentUser();
- user.setName(this.usernameField.getValue());
- user.setRoles((this.rolesField.getValue()||"").split(","));
- // GO TO AND RETURN FROM SERVER
- var userService = user.getSaveService();
- userService.send();
- userService.addListener("completed", function(e){
- this.partialRefreshUser(user, ["details","natures"]);
- this.setModified(false);
- this.getViewSelection().triggerEvent();
- }, this);
- },
-
- _addNatureTab : function(natureClass, natureData, select){
- var crtTabs = this.getCurrentNatureTabs();
- if(qx.lang.Array.contains(crtTabs, natureClass.NATURE_TYPE)){
- this.error("There can only be one instance of a given nature type!");
- return null;
- }
- if(!this.naturesTab.isVisible()){
- if(this.fakePane) this.fakePane.setVisibility("excluded");
- this.naturesTab.setVisibility("visible");
- }
- var page = new qx.ui.tabview.Page("Nature : " + natureClass.NATURE_LABEL);
- page.setLayout(new qx.ui.layout.Dock());
- page.setUserData("NATURE_CLASS", natureClass);
- var newClass = new natureClass();
- page.add(newClass.getContainer(), {edge:"center"});
-
- buttons = new qx.ui.container.Composite(new qx.ui.layout.HBox(5, "center"));
- var editB = new qx.ui.form.Button("Edit this Nature", "org.argeo.security.ria/document-properties-22.png");
- var saveB = new qx.ui.form.Button("Save", "org.argeo.security.ria/dialog-apply.png");
- var cancelB = new qx.ui.form.Button("Cancel", "org.argeo.security.ria/dialog-cancel.png");
- buttons.add(editB);
- buttons.add(saveB);
- buttons.add(cancelB);
- page.add(buttons, {edge:"south"});
- editB.addListener("execute", function(){
- newClass.setEditMode(true);
- editB.setVisibility("excluded");
- saveB.setVisibility("visible");
- cancelB.setVisibility("visible");
- });
- cancelB.addListener("execute", function(){
- if(newClass.getIsNew()){
- this._removeNatureTab(natureClass);
- }
- newClass.setEditMode(false);
- editB.setVisibility("visible");
- saveB.setVisibility("excluded");
- cancelB.setVisibility("excluded");
- }, this);
- saveB.addListener("execute", function(){
- // SAVE CURRENT NATURE
- var data = newClass.getData();
- if(newClass.getIsNew()){
- this.getCurrentUser().addNature(data);
- }else{
- this.getCurrentUser().updateNature(data);