package com.ese.ils.beta.beans;
import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.SessionScoped;
import javax.faces.event.ActionEvent;
import org.icefaces.ace.event.SelectEvent;
import org.icefaces.ace.model.table.RowStateMap;
import com.liferay.portal.kernel.exception.SystemException;
import com.liferay.portal.model.Group;
import com.liferay.portal.service.GroupLocalServiceUtil;
/**
* erstellt Daten zur Gruppenfunktion
* z.B. fuer Anzeigentabelle als auch Auswahl
* @author julien hofer
*
*/
@ManagedBean
@SessionScoped
public class DozentGroupData implements Serializable {
//Variablen
private static final long serialVersionUID = -3258262487117201000L;
private List<Group> groups;
private List<Group> groupList = new ArrayList<Group>();
private RowStateMap stateMap = new RowStateMap();
private long currentGroupId;
/**
* reagiert auf die Selektion in der Auswahltabelle
* @param event
*/
public void selectListener(SelectEvent event) {
addEvent((Group)event.getObject());
}
/**
* setzt die <code>currentGroupId</code> & <code>groupName</code> der ausgwaehlten Gruppe
* in der Auswahltabelle
* @param group
*/
public void addEvent(Group group) {
currentGroupId = group.getGroupId();
String groupName = group.getName();
System.out.println(currentGroupId + ":" + groupName);
}
/**
* holt alle Gruppendaten
* @param event
*/
public void fetchGroupData(ActionEvent event) {
int groupSize = -1;
try {
groupSize = GroupLocalServiceUtil.getGroupsCount();
} catch (SystemException e) {
e.printStackTrace();
}
try {
groupList.clear();
groups = GroupLocalServiceUtil.getGroups(0, groupSize);
for (int i=0; i < groupSize;i++) {
Group group = groups.get(i);
String description = group.getDescription();
if(description != null && description.length() !=0 ){
long sessionId = group.getGroupId();
System.out.println("==============================");
System.out.println("Gruppenindex: " + i);
System.out.println("GruppenID: " + group.getGroupId());
System.out.println("Gruppenname: " +group.getName());
System.out.println("SessionId: " + sessionId);
System.out.println("Anzahl Gruppen: " + groupSize);
System.out.println("Description: " +group.getDescription());
System.out.println("Ersteller: " + group.getCreatorUserId());
System.out.println("==============================");
groupList.add(group);
}
}
} catch (SystemException e) {
e.printStackTrace();
}
}
//GETTER UND SETTER
public List<Group> getGroupList() {
return groupList;
}
public void setGroupList(List<Group> groupList) {
this.groupList = groupList;
}
public RowStateMap getStateMap() {
return stateMap;
}
public void setStateMap(RowStateMap stateMap) {
this.stateMap = stateMap;
}
public long getCurrentGroupId() {
return currentGroupId;
}
public void setCurrentGroupId(long currentGroupId) {
this.currentGroupId = currentGroupId;
}
}