Package org.olat.course.nodes.projectbroker.datamodel

Examples of org.olat.course.nodes.projectbroker.datamodel.Project


   * @see org.olat.core.gui.control.DefaultController#event(org.olat.core.gui.UserRequest, org.olat.core.gui.control.Controller, org.olat.core.gui.control.Event)
   */
  public void event(UserRequest urequest, Controller source, Event event) {
    if ( (source == tableController) && (event instanceof TableEvent) ) {
      TableEvent te = (TableEvent) event;
      Project currentProject = (Project)tableController.getTableDataModel().getObject(te.getRowId());
      if ( te.getActionId().equals(TABLE_ACTION_SHOW_DETAIL)) {
        activateProjectController(currentProject, urequest);
      } else if ( te.getActionId().equals(TABLE_ACTION_ACCOUNT_MANAGER)) {
        activateUserController(currentProject, urequest);
      } else if ( te.getActionId().equals(TABLE_ACTION_SELECT)) {
        getLogger().debug("start enrollProjectParticipant identity=" + urequest.getIdentity() + " to project=" + currentProject);
        List<Project> projects = ProjectBrokerManagerFactory.getProjectBrokerManager().getProjectListBy(projectBrokerId)
        boolean enrolled = ProjectBrokerManagerFactory.getProjectBrokerManager().enrollProjectParticipant(urequest.getIdentity(), currentProject, moduleConfig, nbrSelectedProjects, isParticipantInAnyProject);
        if (enrolled) {
          ProjectBrokerManagerFactory.getProjectBrokerEmailer().sendEnrolledEmailToParticipant(urequest.getIdentity(), currentProject, this.getTranslator());
          if (currentProject.isMailNotificationEnabled()) {
            ProjectBrokerManagerFactory.getProjectBrokerEmailer().sendEnrolledEmailToManager(urequest.getIdentity(), currentProject, this.getTranslator());
          }
          ProjectBrokerManagerFactory.getProjectGroupManager().sendGroupChangeEvent(currentProject, courseId, urequest.getIdentity());
        } else {
          showInfo("info.msg.could.not.enroll");
        }
        updateProjectListModelOf(tableController, urequest.getIdentity());
      } else if ( te.getActionId().equals(TABLE_ACTION_CANCEL_SELECT)) {
        getLogger().debug("start cancelProjectEnrollmentOf identity=" + urequest.getIdentity() + " to project=" + currentProject);
        boolean cancelEnrollmend = ProjectBrokerManagerFactory.getProjectBrokerManager().cancelProjectEnrollmentOf(urequest.getIdentity(), currentProject, moduleConfig);
        if (cancelEnrollmend) {
          ProjectBrokerManagerFactory.getProjectBrokerEmailer().sendCancelEnrollmentEmailToParticipant(urequest.getIdentity(), currentProject, this.getTranslator());
          if (currentProject.isMailNotificationEnabled()) {
            ProjectBrokerManagerFactory.getProjectBrokerEmailer().sendCancelEnrollmentEmailToManager(urequest.getIdentity(), currentProject, this.getTranslator());
          }
          ProjectBrokerManagerFactory.getProjectGroupManager().sendGroupChangeEvent(currentProject, courseId, urequest.getIdentity());
        } else {
          showInfo("info.msg.could.not.cancel.enrollment");
View Full Code Here


  /**
   * @see org.olat.core.gui.components.table.TableDataModel#getValueAt(int, int)
   */
  public Object getValueAt(int row, int col) {
    Project project = (Project) objects.get(row);
    if (col == 0) {
        String name = project.getTitle();
        return name;
    } else if (col == 1) {
      // get identity_date list sorted by AddedDate
      List<Object[]> identities = ManagerFactory.getManager().getIdentitiesAndDateOfSecurityGroup(project.getProjectLeaderGroup(), true);
      if (identities.isEmpty()) {
        return "-";
      } else {
        // Get last added identity
        Object[] identityAndData = identities.get(identities.size()-1);
        String last = ((Identity)identityAndData[0]).getUser().getProperty(UserConstants.LASTNAME, getLocale());
        String first= ((Identity)identityAndData[0]).getUser().getProperty(UserConstants.FIRSTNAME, getLocale());
        String showName = last + " " + first;
        if (identities.size() == 1) {
          return showName;
        } else {
          // more than one projectleader => show ...
          return showName + ", ...";
        }
      }
    } else if (col == (numberOfCustomFieldInTable + numberOfEventInTable + 2)) {
      return translator.translate(ProjectBrokerManagerFactory.getProjectBrokerManager().getStateFor(project,identity,moduleConfig));
    } else if (col == (numberOfCustomFieldInTable + numberOfEventInTable + 3)) {
      StringBuilder buf = new StringBuilder();
      buf.append(project.getSelectedPlaces());
      if (project.getMaxMembers() != Project.MAX_MEMBERS_UNLIMITED) {
        buf.append("/");
        buf.append(project.getMaxMembers());
      }
      return buf.toString();
    else if (col == (numberOfCustomFieldInTable + numberOfEventInTable + 4)) { // enroll
      return ProjectBrokerManagerFactory.getProjectBrokerManager().canBeProjectSelectedBy(identity, project, moduleConfig, nbrSelectedProjects, isParticipantInAnyProject);
    } else if (col == (numberOfCustomFieldInTable + numberOfEventInTable + 5)) { // cancel enrollment
      return ProjectBrokerManagerFactory.getProjectBrokerManager().canBeCancelEnrollmentBy(identity,project,moduleConfig);
    } else if ( (col == 2) && (numberOfCustomFieldInTable > 0) ) {
      return project.getCustomFieldValue(enabledCustomFieldNumbers[0]);
    } else if ( (col == 3) && (numberOfCustomFieldInTable > 1) ) {
      return project.getCustomFieldValue(enabledCustomFieldNumbers[1]);
    } else if ( (col == 4) && (numberOfCustomFieldInTable > 2) ) {
      return project.getCustomFieldValue(enabledCustomFieldNumbers[2]);
    } else if ( (col == 5) && (numberOfCustomFieldInTable > 3) ) {
      return project.getCustomFieldValue(enabledCustomFieldNumbers[3]);
    } else if ( (col == 6) && (numberOfCustomFieldInTable > 4) ) {
      return project.getCustomFieldValue(enabledCustomFieldNumbers[4]);
    } else if ( col == (2 + numberOfCustomFieldInTable) ) {
      return getDateEventString(project.getProjectEvent(enabledEventList.get(0)),translator);
    } else if ( col == (3 + numberOfCustomFieldInTable) ) {
      return getDateEventString(project.getProjectEvent(enabledEventList.get(1)),translator);
    } else if ( col == (4 + numberOfCustomFieldInTable) ) {
      return getDateEventString(project.getProjectEvent(enabledEventList.get(2)),translator);
    } else {
      return "ERROR";
    }
  }
View Full Code Here

  public void testIsProjectManager() throws Exception {
    ProjectBroker projectBrokerD = ProjectBrokerManagerFactory.getProjectBrokerManager().createAndSaveProjectBroker();
    Long idProjectBrokerD = projectBrokerD.getKey();
    ProjectBrokerModuleConfiguration moduleConfig = new ProjectBrokerModuleConfiguration( new ModuleConfiguration() );
   
    Project testProjectA = createProject("thema A", id1, idProjectBrokerD, resourceableId );
    List<Identity> projectManagerList = new ArrayList<Identity>();
    projectManagerList.add(id1);
    BGConfigFlags flags = BGConfigFlags.createRightGroupDefaultFlags();
    Project testProjectB = createProject("thema B", id2, idProjectBrokerD, resourceableId );
    // check project leader in ProjectA
    assertTrue("Must be project-leader of project A", ProjectBrokerManagerFactory.getProjectBrokerManager().isProjectManager(id1, testProjectA));
    assertFalse("Can not be project leader of project B",ProjectBrokerManagerFactory.getProjectBrokerManager().isProjectManager(id1, testProjectB));
    assertTrue("Must be project-leader of project A", ProjectBrokerManagerFactory.getProjectBrokerManager().isProjectManager(id2, testProjectB));
View Full Code Here

  }


private Project createProject(String name, Identity creator, Long projectBrokerId, Long courseId) {
  BusinessGroup projectGroup = ProjectBrokerManagerFactory.getProjectGroupManager().createProjectGroupFor(projectBrokerId, creator, name + "_Group", name + "GroupDescription", courseId);
  Project project = ProjectBrokerManagerFactory.getProjectBrokerManager().createAndSaveProjectFor(name + "title", name + "description1", projectBrokerId, projectGroup);
  return project;
}
View Full Code Here

TOP

Related Classes of org.olat.course.nodes.projectbroker.datamodel.Project

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.