package com.ese.ils.beta.beans;
import java.io.Serializable;
import java.util.List;
import java.util.Map;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.ManagedProperty;
import javax.faces.bean.SessionScoped;
import javax.faces.bean.ViewScoped;
import javax.faces.context.FacesContext;
import javax.faces.event.ActionEvent;
import javax.faces.event.ValueChangeEvent;
import org.icefaces.ace.model.table.RowStateMap;
import com.ese.ils.beta.model.Favorite;
import com.ese.ils.beta.service.FavoriteLocalServiceUtil;
import com.ese.ils.beta.util.DeComposer;
import com.icesoft.faces.context.effects.JavascriptContext;
import com.liferay.portal.kernel.exception.PortalException;
import com.liferay.portal.kernel.exception.SystemException;
import com.liferay.portal.model.User;
import com.liferay.portal.service.UserServiceUtil;
import com.liferay.portal.theme.ThemeDisplay;
/**
* dient zum Setzen der View Status innerhalb der Navigation
* @author julien hofer
*
*/
@ManagedBean
@ViewScoped
public class DozentBackingBean implements Serializable {
private static final long serialVersionUID = 5535150255756928224L;
//Navigation Beans Injection
@ManagedProperty(value="#{dozentNavigationBean}")
private transient DozentNavigationBean dozentNavigationBean;
@ManagedProperty(value="#{dozentGroupNavigationBean}")
private transient DozentGroupNavigationBean dozentGroupNavigationBean;
@ManagedProperty(value="#{dozentVoteNavigationBean}")
private transient DozentVoteNavigationBean dozentVoteNavigationBean;
//Backing Beans Injection
@ManagedProperty(value = "#{slideBackingBean}")
private transient SlideBackingBean slideBackingBean;
@ManagedProperty(value = "#{dozentLogicBean}")
private transient DozentLogicBean dozentLogicBean;
@ManagedProperty(value="#{groupBackingBean}")
private transient GroupBackingBean groupBackingBean;
@ManagedProperty(value="#{dozentGroupData}")
private transient DozentGroupData dozentGroupData;
@ManagedProperty(value="#{moduleModelBean}")
private transient ModuleModelBean moduleModelBean;
@ManagedProperty(value="#{dozentFavoriteBackingBean}")
private transient DozentFavoriteBackingBean dozentFavoriteBackingBean;
//Variablen
public boolean slideUploadStatus=false;
public String modules;
/**
* navigiert zur Folienbetrachtung
* @param event
*/
public void moveToDozentSlideViewer(ActionEvent event){
long moduleId = Long.valueOf(moduleModelBean.getModuleId());
dozentNavigationBean.setDozentHomeContentStatus(false);
slideBackingBean.showSlides(moduleId, 0);
dozentNavigationBean.setDozentSlideViewerStatus(true);
dozentNavigationBean.setDozentCreateNewModuleStatus(false);
dozentNavigationBean.setDozentSlideUploaderStatus(false);
dozentNavigationBean.setDozentShowModulesStatus(false);
dozentNavigationBean.setDozentShowQuestionsStatus(false);
dozentNavigationBean.setDozentCreateGroupsStatus(false);
dozentNavigationBean.setDozentShowFavoritesStatus(false);
dozentGroupNavigationBean.setDozentGroupSelectionStatus(false);
dozentGroupNavigationBean.setDozentGroupShowContentStatus(false);
dozentGroupNavigationBean.setDozentGroupContentSelectionStatus(false);
dozentVoteNavigationBean.setDozentCreateVoteStatus(false);
dozentVoteNavigationBean.setDozentEditVoteStatus(false);
dozentVoteNavigationBean.setDozentResultsStatus(false);
dozentVoteNavigationBean.setDozentShowVoteStatus(false);
dozentVoteNavigationBean.setDozentVoteHomeStatus(false);
dozentVoteNavigationBean.setDozentShowVoteResultsStatus(false);
}
/**
* navigiert zum Folien hochladen
* @param event
*/
public void moveToDozentSlideUploader(ActionEvent event) {
dozentNavigationBean.setDozentHomeContentStatus(false);
dozentNavigationBean.setDozentSlideViewerStatus(false);
dozentNavigationBean.setDozentCreateNewModuleStatus(false);
dozentNavigationBean.setDozentShowModulesStatus(false);
dozentNavigationBean.setDozentShowQuestionsStatus(false);
dozentNavigationBean.setDozentCreateGroupsStatus(false);
dozentNavigationBean.setDozentShowGroupStatus(false);
dozentNavigationBean.setDozentShowFavoritesStatus(false);
dozentGroupNavigationBean.setDozentGroupSelectionStatus(false);
dozentGroupNavigationBean.setDozentGroupShowContentStatus(false);
dozentGroupNavigationBean.setDozentGroupContentSelectionStatus(false);
dozentNavigationBean.setDozentSlideUploaderStatus(true);
dozentVoteNavigationBean.setDozentCreateVoteStatus(false);
dozentVoteNavigationBean.setDozentEditVoteStatus(false);
dozentVoteNavigationBean.setDozentResultsStatus(false);
dozentVoteNavigationBean.setDozentShowVoteStatus(false);
dozentVoteNavigationBean.setDozentVoteHomeStatus(false);
dozentVoteNavigationBean.setDozentShowVoteResultsStatus(false);
}
/**
* navigiert zur Betrachtung der Favoriten
* @param event
*/
public void moveToDozentShowFavorites(ActionEvent event){
dozentNavigationBean.setDozentShowModulesStatus(false);
dozentNavigationBean.setDozentShowFavoritesStatus(true);
dozentFavoriteBackingBean.fetchFavoriteByModule(Long.valueOf(moduleModelBean.getModuleId()));
}
/**
* navigiert zur Erstellung neuer Module
* @param event
*/
public void moveToDozentCreateNewModule(ActionEvent event) {
dozentNavigationBean.setDozentHomeContentStatus(false);
dozentNavigationBean.setDozentSlideViewerStatus(false);
dozentNavigationBean.setDozentSlideUploaderStatus(false);
dozentNavigationBean.setDozentShowModulesStatus(false);
dozentNavigationBean.setDozentShowQuestionsStatus(false);
dozentNavigationBean.setDozentCreateGroupsStatus(false);
dozentNavigationBean.setDozentShowGroupStatus(false);
dozentNavigationBean.setDozentShowFavoritesStatus(false);
dozentGroupNavigationBean.setDozentGroupSelectionStatus(false);
dozentGroupNavigationBean.setDozentGroupShowContentStatus(false);
dozentGroupNavigationBean.setDozentGroupContentSelectionStatus(false);
dozentVoteNavigationBean.setDozentCreateVoteStatus(false);
dozentVoteNavigationBean.setDozentEditVoteStatus(false);
dozentVoteNavigationBean.setDozentResultsStatus(false);
dozentVoteNavigationBean.setDozentShowVoteStatus(false);
dozentVoteNavigationBean.setDozentVoteHomeStatus(false);
dozentVoteNavigationBean.setDozentShowVoteResultsStatus(false);
dozentNavigationBean.setDozentCreateNewModuleStatus(true);
}
/**
* navigiert zur Betrachtung aller Module eines Dozenten
* @param event
*/
public void moveToDozentShowModules(ActionEvent event) {
dozentNavigationBean.setDozentHomeContentStatus(false);
dozentNavigationBean.setDozentSlideViewerStatus(false);
dozentNavigationBean.setDozentSlideUploaderStatus(false);
dozentNavigationBean.setDozentCreateNewModuleStatus(false);
dozentNavigationBean.setDozentShowQuestionsStatus(false);
dozentNavigationBean.setDozentCreateGroupsStatus(false);
dozentNavigationBean.setDozentShowGroupStatus(false);
dozentNavigationBean.setDozentShowFavoritesStatus(false);
dozentGroupNavigationBean.setDozentGroupSelectionStatus(false);
dozentGroupNavigationBean.setDozentGroupShowContentStatus(false);
dozentGroupNavigationBean.setDozentGroupContentSelectionStatus(false);
dozentVoteNavigationBean.setDozentCreateVoteStatus(false);
dozentVoteNavigationBean.setDozentEditVoteStatus(false);
dozentVoteNavigationBean.setDozentResultsStatus(false);
dozentVoteNavigationBean.setDozentShowVoteStatus(false);
dozentVoteNavigationBean.setDozentVoteHomeStatus(false);
dozentVoteNavigationBean.setDozentShowVoteResultsStatus(false);
dozentNavigationBean.setDozentShowModulesStatus(true);
dozentLogicBean.fetchModulesOfDozent(event);
}
/**
* navigiert zur Betrachtung der gestellten Fragen
* innerhalb eines Moduls
* @param event
*/
public void moveToDozentShowQuestions(ActionEvent event) {
dozentNavigationBean.setDozentHomeContentStatus(false);
dozentNavigationBean.setDozentSlideViewerStatus(false);
dozentNavigationBean.setDozentSlideUploaderStatus(false);
dozentNavigationBean.setDozentCreateNewModuleStatus(false);
dozentNavigationBean.setDozentShowModulesStatus(false);
dozentNavigationBean.setDozentCreateGroupsStatus(false);
dozentNavigationBean.setDozentShowGroupStatus(false);
dozentNavigationBean.setDozentShowFavoritesStatus(false);
dozentGroupNavigationBean.setDozentGroupSelectionStatus(false);
dozentGroupNavigationBean.setDozentGroupShowContentStatus(false);
dozentGroupNavigationBean.setDozentGroupContentSelectionStatus(false);
dozentVoteNavigationBean.setDozentCreateVoteStatus(false);
dozentVoteNavigationBean.setDozentEditVoteStatus(false);
dozentVoteNavigationBean.setDozentResultsStatus(false);
dozentVoteNavigationBean.setDozentShowVoteStatus(false);
dozentVoteNavigationBean.setDozentVoteHomeStatus(false);
dozentVoteNavigationBean.setDozentShowVoteResultsStatus(false);
dozentLogicBean.fetchQuestionsOfModule(event, Integer.valueOf(moduleModelBean.getModuleId()));
dozentNavigationBean.setDozentShowQuestionsStatus(true);
}
/**
* navigiert zur Erstellung von Gruppen fuer die Gruppenarbeit
* @param event
*/
public void moveToDozentCreateGroups(ActionEvent event) {
dozentNavigationBean.setDozentHomeContentStatus(false);
dozentNavigationBean.setDozentSlideViewerStatus(false);
dozentNavigationBean.setDozentSlideUploaderStatus(false);
dozentNavigationBean.setDozentCreateNewModuleStatus(false);
dozentNavigationBean.setDozentShowModulesStatus(false);
dozentNavigationBean.setDozentShowQuestionsStatus(false);
dozentNavigationBean.setDozentShowGroupStatus(false);
dozentNavigationBean.setDozentShowFavoritesStatus(false);
dozentGroupNavigationBean.setDozentGroupSelectionStatus(false);
dozentGroupNavigationBean.setDozentGroupShowContentStatus(false);
dozentGroupNavigationBean.setDozentGroupContentSelectionStatus(false);
dozentVoteNavigationBean.setDozentCreateVoteStatus(false);
dozentVoteNavigationBean.setDozentEditVoteStatus(false);
dozentVoteNavigationBean.setDozentResultsStatus(false);
dozentVoteNavigationBean.setDozentShowVoteStatus(false);
dozentVoteNavigationBean.setDozentVoteHomeStatus(false);
dozentVoteNavigationBean.setDozentShowVoteResultsStatus(false);
dozentLogicBean.fetchModulesOfDozent(event);
dozentNavigationBean.setDozentCreateGroupsStatus(true);
}
/**
* navigiert zur Anzeige aller Gruppen
* @param event
*/
public void moveToDozentShowGroup(ActionEvent event){
dozentNavigationBean.setDozentHomeContentStatus(false);
dozentNavigationBean.setDozentSlideViewerStatus(false);
dozentNavigationBean.setDozentSlideUploaderStatus(false);
dozentNavigationBean.setDozentCreateNewModuleStatus(false);
dozentNavigationBean.setDozentShowModulesStatus(false);
dozentNavigationBean.setDozentShowQuestionsStatus(false);
dozentNavigationBean.setDozentCreateGroupsStatus(false);
dozentNavigationBean.setDozentShowFavoritesStatus(false);
dozentGroupNavigationBean.setDozentGroupSelectionStatus(false);
dozentGroupNavigationBean.setDozentGroupShowContentStatus(false);
dozentGroupNavigationBean.setDozentGroupContentSelectionStatus(false);
dozentVoteNavigationBean.setDozentCreateVoteStatus(false);
dozentVoteNavigationBean.setDozentEditVoteStatus(false);
dozentVoteNavigationBean.setDozentResultsStatus(false);
dozentVoteNavigationBean.setDozentShowVoteStatus(false);
dozentVoteNavigationBean.setDozentVoteHomeStatus(false);
dozentVoteNavigationBean.setDozentShowVoteResultsStatus(false);
dozentNavigationBean.setDozentShowGroupStatus(true);
groupBackingBean.createSession();
dozentGroupData.fetchGroupData(event);
}
/**
* navigiert zur Anzeige von Inhalten einer gewaehlten Gruppe
* @param event
*/
public void moveToDozentShowGroupContent(ActionEvent event) {
dozentNavigationBean.setDozentHomeContentStatus(false);
dozentNavigationBean.setDozentSlideViewerStatus(false);
dozentNavigationBean.setDozentSlideUploaderStatus(false);
dozentNavigationBean.setDozentCreateNewModuleStatus(false);
dozentNavigationBean.setDozentShowModulesStatus(false);
dozentNavigationBean.setDozentShowQuestionsStatus(false);
dozentNavigationBean.setDozentCreateGroupsStatus(false);
dozentNavigationBean.setDozentShowGroupStatus(false);
dozentGroupNavigationBean.setDozentGroupSelectionStatus(false);
dozentGroupNavigationBean.setDozentGroupShowContentStatus(false);
dozentGroupNavigationBean.setDozentGroupContentSelectionStatus(false);
dozentVoteNavigationBean.setDozentCreateVoteStatus(false);
dozentVoteNavigationBean.setDozentEditVoteStatus(false);
dozentVoteNavigationBean.setDozentResultsStatus(false);
dozentVoteNavigationBean.setDozentShowVoteStatus(false);
dozentVoteNavigationBean.setDozentVoteHomeStatus(false);
dozentVoteNavigationBean.setDozentShowVoteResultsStatus(false);
dozentNavigationBean.setDozentShowGroupContentStatus(true);
}
/**
* setzt den SlideUploadStatus in den gegensaetzlichen Wert
* @param event
*/
public void switchSlideUpload(ActionEvent event){
setSlideUploadStatus(!isSlideUploadStatus());
}
// GETTER UND SETTER
public DozentNavigationBean getDozentNavigationBean() {
return dozentNavigationBean;
}
public void setDozentNavigationBean(DozentNavigationBean dozentNavigationBean) {
this.dozentNavigationBean = dozentNavigationBean;
}
public SlideBackingBean getSlideBackingBean() {
return slideBackingBean;
}
public void setSlideBackingBean(SlideBackingBean slideBackingBean) {
this.slideBackingBean = slideBackingBean;
}
public DozentLogicBean getDozentLogicBean() {
return dozentLogicBean;
}
public void setDozentLogicBean(DozentLogicBean dozentLogicBean) {
this.dozentLogicBean = dozentLogicBean;
}
public GroupBackingBean getGroupBackingBean() {
return groupBackingBean;
}
public void setGroupBackingBean(GroupBackingBean groupBackingBean) {
this.groupBackingBean = groupBackingBean;
}
public DozentGroupData getDozentGroupData() {
return dozentGroupData;
}
public void setDozentGroupData(DozentGroupData dozentGroupData) {
this.dozentGroupData = dozentGroupData;
}
public ModuleModelBean getModuleModelBean() {
return moduleModelBean;
}
public void setModuleModelBean(ModuleModelBean moduleModelBean) {
this.moduleModelBean = moduleModelBean;
}
public DozentGroupNavigationBean getDozentGroupNavigationBean() {
return dozentGroupNavigationBean;
}
public void setDozentGroupNavigationBean(
DozentGroupNavigationBean dozentGroupNavigationBean) {
this.dozentGroupNavigationBean = dozentGroupNavigationBean;
}
public DozentVoteNavigationBean getDozentVoteNavigationBean() {
return dozentVoteNavigationBean;
}
public void setDozentVoteNavigationBean(
DozentVoteNavigationBean dozentVoteNavigationBean) {
this.dozentVoteNavigationBean = dozentVoteNavigationBean;
}
public String getModules() {
return modules;
}
public void setModules(String modules) {
this.modules = modules;
}
public boolean isSlideUploadStatus() {
return slideUploadStatus;
}
public void setSlideUploadStatus(boolean slideUploadStatus) {
this.slideUploadStatus = slideUploadStatus;
}
public DozentFavoriteBackingBean getDozentFavoriteBackingBean() {
return dozentFavoriteBackingBean;
}
public void setDozentFavoriteBackingBean(
DozentFavoriteBackingBean dozentFavoriteBackingBean) {
this.dozentFavoriteBackingBean = dozentFavoriteBackingBean;
}
}