Skip to content
Snippets Groups Projects
Commit fcc38b04 authored by srosse's avatar srosse
Browse files

OO-2631: fix default quota for group and course folder

parent 434b42f2
No related branches found
No related tags found
No related merge requests found
......@@ -19,7 +19,6 @@
*/
package org.olat.core.util.vfs.callbacks;
import org.olat.admin.quota.QuotaConstants;
import org.olat.core.commons.services.notifications.SubscriptionContext;
import org.olat.core.util.vfs.Quota;
import org.olat.core.util.vfs.QuotaManager;
......@@ -33,15 +32,18 @@ import org.olat.core.util.vfs.QuotaManager;
public class FullAccessWithLazyQuotaCallback extends FullAccessWithQuotaCallback {
private final String folderPath;
private final String defaultQuota;
public FullAccessWithLazyQuotaCallback(String folderPath) {
public FullAccessWithLazyQuotaCallback(String folderPath, String defaultQuota) {
super(null);
this.folderPath = folderPath;
this.defaultQuota = defaultQuota;
}
public FullAccessWithLazyQuotaCallback(String folderPath, SubscriptionContext subscriptionContext) {
public FullAccessWithLazyQuotaCallback(String folderPath, String defaultQuota, SubscriptionContext subscriptionContext) {
super(null, subscriptionContext);
this.folderPath = folderPath;
this.defaultQuota = defaultQuota;
}
@Override
......@@ -50,7 +52,7 @@ public class FullAccessWithLazyQuotaCallback extends FullAccessWithQuotaCallback
QuotaManager qm = QuotaManager.getInstance();
Quota q = qm.getCustomQuota(folderPath);
if (q == null) {
Quota defQuota = qm.getDefaultQuota(QuotaConstants.IDENTIFIER_DEFAULT_GROUPS);
Quota defQuota = qm.getDefaultQuota(defaultQuota);
q = QuotaManager.getInstance().createQuota(folderPath, defQuota.getQuotaKB(), defQuota.getUlLimitKB());
}
super.setQuota(q);
......
......@@ -28,6 +28,7 @@ package org.olat.course;
import java.io.File;
import java.io.Serializable;
import org.olat.admin.quota.QuotaConstants;
import org.olat.core.CoreSpringFactory;
import org.olat.core.commons.modules.bc.vfs.OlatRootFolderImpl;
import org.olat.core.commons.persistence.DBFactory;
......@@ -247,7 +248,7 @@ public class PersistingCourseImpl implements ICourse, OLATResourceable, Serializ
"could not create course's coursefolder path:" + fCourseFolder.getAbsolutePath(), null);
}
FullAccessWithQuotaCallback secCallback = new FullAccessWithLazyQuotaCallback(isolatedCourseFolder.getRelPath());
FullAccessWithQuotaCallback secCallback = new FullAccessWithLazyQuotaCallback(isolatedCourseFolder.getRelPath(), QuotaConstants.IDENTIFIER_DEFAULT_COURSE);
isolatedCourseFolder.setLocalSecurityCallback(secCallback);
return isolatedCourseFolder;
}
......
......@@ -24,6 +24,7 @@ import java.util.HashSet;
import java.util.List;
import java.util.Set;
import org.olat.admin.quota.QuotaConstants;
import org.olat.collaboration.CollaborationManager;
import org.olat.collaboration.CollaborationTools;
import org.olat.core.CoreSpringFactory;
......@@ -134,7 +135,7 @@ class GroupfoldersWebDAVMergeSource extends WebDAVMergeSource {
VFSSecurityCallback secCallback;
if(writeAccess) {
SubscriptionContext sc = new SubscriptionContext(group, "toolfolder");
secCallback = new FullAccessWithLazyQuotaCallback(folderPath, sc);
secCallback = new FullAccessWithLazyQuotaCallback(folderPath, QuotaConstants.IDENTIFIER_DEFAULT_GROUPS, sc);
} else {
secCallback = new ReadOnlyCallback();
}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment