package foundation.capacity.role;
|
|
import foundation.data.entity.Entity;
|
import foundation.json.IJSONProvider;
|
import foundation.json.IJSONWriter;
|
import foundation.page.Tab;
|
|
public class RoleTab implements IJSONProvider {
|
|
private Tab tab;
|
private boolean visible;
|
private boolean active;
|
|
public RoleTab(Tab tab) {
|
this.tab = tab;
|
visible = true;
|
active = true;
|
}
|
|
public void load(Entity entity) {
|
visible = entity.getBoolean("is_visible", false);
|
active = entity.getBoolean("is_active", false);
|
}
|
|
public String getId() {
|
return tab.getId();
|
}
|
|
public String getName() {
|
return tab.getCode();
|
}
|
|
public boolean isVisible() {
|
return visible;
|
}
|
|
public boolean isActive() {
|
return active;
|
}
|
|
@Override
|
public void writeJSON(IJSONWriter writer) {
|
writer.beginObject();
|
|
tab.writeJSONBody(writer);
|
writer.write("visible", visible && tab.isActive());
|
writer.write("active", active && tab.isActive());
|
|
writer.endObject();
|
}
|
|
}
|