Skip to content
Snippets Groups Projects
Commit ffbb7473 authored by Daniel Gerhardt's avatar Daniel Gerhardt
Browse files

Merge branch 'fixSessionInfoExport' into 'master'

sessioninfo integration for sessionimport

This MR refactors the import of the public pool attributes for sessions.

See merge request !25
parents b5f8f8bf d74ef999
Branches
Tags
1 merge request!25sessioninfo integration for sessionimport
Pipeline #2146 passed with stages
......@@ -129,27 +129,22 @@ public class ImportExportSession {
final Session s = new Session();
// import fields
s.setActive(session.isActive());
s.setName(session.getName());
s.setShortName(session.getShortName());
// overwrite name and shortname
s.setName(session.getPublicPool().getName());
s.setShortName(session.getPublicPool().getShortName());
// mark as public pool session
s.setSessionType(session.getSessionType());
s.setFeatures(session.getSessionFeature());
// public pool
if (session.getPublicPool() != null) {
// overwrite name and shortname
s.setName(session.getPublicPool().getName());
s.setShortName(session.getPublicPool().getShortName());
// set pool fields
s.setPpAuthorMail(session.getPublicPool().getPpAuthorMail());
s.setPpAuthorName(session.getPublicPool().getPpAuthorName());
s.setPpDescription(session.getPublicPool().getPpDescription());
s.setPpFaculty(session.getPublicPool().getPpFaculty());
s.setPpLevel(session.getPublicPool().getPpLevel());
s.setPpLicense(session.getPublicPool().getPpLicense());
s.setPpLogo(session.getPublicPool().getPpLogo());
s.setPpSubject(session.getPublicPool().getPpSubject());
s.setPpUniversity(session.getPublicPool().getPpUniversity());
// mark as public pool session
s.setSessionType("public_pool");
}
// set pool fields (which are also used as a session info)
s.setPpAuthorMail(session.getPublicPool().getPpAuthorMail());
s.setPpAuthorName(session.getPublicPool().getPpAuthorName());
s.setPpDescription(session.getPublicPool().getPpDescription());
s.setPpFaculty(session.getPublicPool().getPpFaculty());
s.setPpLevel(session.getPublicPool().getPpLevel());
s.setPpLicense(session.getPublicPool().getPpLicense());
s.setPpLogo(session.getPublicPool().getPpLogo());
s.setPpSubject(session.getPublicPool().getPpSubject());
s.setPpUniversity(session.getPublicPool().getPpUniversity());
// other fields
s.setType("session");
s.setCreator(user.getUsername());
......@@ -232,6 +227,8 @@ public class ImportExportSession {
private String shortName;
private String sessionType;
private boolean active;
private PublicPool publicPool;
......@@ -247,6 +244,15 @@ public class ImportExportSession {
this.name = name;
}
@ApiModelProperty(required = false, value = "used to identify public pool sessions")
public String getSessionType() {
return sessionType;
}
public void setSessionType(String sessionType) {
this.sessionType = sessionType;
}
@ApiModelProperty(required = true, value = "used to display short name")
public String getShortName() {
return shortName;
......
......@@ -414,7 +414,7 @@ public class SessionService implements ISessionService, ApplicationEventPublishe
@PreAuthorize("isAuthenticated() and hasPermission(#sessionkey, 'session', 'owner')")
public SessionInfo copySessionToPublicPool(String sessionkey, de.thm.arsnova.entities.transport.ImportExportSession.PublicPool pp) {
ImportExportSession temp = databaseDao.exportSession(sessionkey, false, false);
temp.getSession().setPublicPool(pp);
temp.getSession().setSessionType("public_pool");
final User user = userService.getCurrentUser();
return databaseDao.importSession(user, temp);
}
......
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment