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

Merge OpenOLAT 9.4 to OpenOLAT default branch with 0ef701c24983b79152f4122695730009f27360b9

parents 416c2394 3e6a4a50
No related branches found
No related tags found
No related merge requests found
Showing
with 86 additions and 12 deletions
......@@ -211,4 +211,27 @@ public class Constants {
*/
public static final OLATResourceable ORESOURCE_GUESTONLY = OresHelper.lookupType(BaseSecurityModule.class, "RGuestOnly");
/**
* status of a user
* <code>USERSTATUS_ACTIVE</code> is an active user
*/
public static final Integer USERSTATUS_ACTIVE = 2;
/**
* status of a user
* <code>USERSTATUS_NOT_DELETEABLE</code> is a not deleteable user
*/
public static final Integer USERSTATUS_NOT_DELETEABLE = 1;
/**
* status of a user
* <code>USERSTATUS_LOGIN_DENIED</code> is a user, whose login is denied
*/
public static final Integer USERSTATUS_LOGIN_DENIED = 101;
/**
* status of a user
* <code>USERSTATUS_DELETED</code> is a deleted user
*/
public static final Integer USERSTATUS_DELETED = 199;
}
\ No newline at end of file
......@@ -484,7 +484,7 @@ public class ICalFileCalendarManager extends BasicManager implements CalendarMan
Date end = null;
if (dur != null) {
end = dur.getDuration().getTime(event.getStartDate().getDate());
} else {
} else if(event.getEndDate() != null) {
end = event.getEndDate().getDate();
}
......
......@@ -138,12 +138,22 @@ public class FullCalendarMapper implements Mapper {
private boolean isInRange(Date from, Date to, KalendarEvent event) {
Date end = event.getEnd();
Date begin = event.getBegin();
if(from.compareTo(begin) <= 0 && to.compareTo(end) >= 0) {
return true;
} else if(from.compareTo(begin) <= 0 && to.compareTo(begin) >= 0) {
return true;
} else if(from.compareTo(end) <= 0 && to.compareTo(end) >= 0) {
return true;
if(begin != null && end != null) {
if(from.compareTo(begin) <= 0 && to.compareTo(end) >= 0) {
return true;
} else if(from.compareTo(begin) <= 0 && to.compareTo(begin) >= 0) {
return true;
} else if(from.compareTo(end) <= 0 && to.compareTo(end) >= 0) {
return true;
}
} else if(begin != null) {
if(from.compareTo(begin) <= 0 && to.compareTo(begin) >= 0) {
return true;
}
} else if(end != null) {
if(from.compareTo(end) <= 0 && to.compareTo(end) >= 0) {
return true;
}
}
return false;
}
......
......@@ -75,6 +75,8 @@ import org.olat.core.util.mail.MailHelper;
import org.olat.core.util.mail.MailPackage;
import org.olat.core.util.mail.MailTemplate;
import org.olat.core.util.resource.OresHelper;
import org.olat.core.util.vfs.Quota;
import org.olat.core.util.vfs.QuotaManager;
import org.olat.group.BusinessGroup;
import org.olat.group.BusinessGroupManagedFlag;
import org.olat.group.BusinessGroupMembership;
......@@ -676,6 +678,16 @@ public abstract class AbstractBusinessGroupListController extends FormBasicContr
tools.setToolEnabled(enabledTool, true);
if(CollaborationTools.TOOL_FOLDER.equals(enabledTool)) {
tools.saveFolderAccess(new Long(configuration.getFolderAccess()));
Quota quota = configuration.getQuota();
if(quota != null) {
String path = tools.getFolderRelPath();
Quota fQuota = QuotaManager.getInstance()
.createQuota(path, quota.getQuotaKB(), quota.getUlLimitKB());
QuotaManager.getInstance()
.setCustomQuotaKB(fQuota);
}
} else if (CollaborationTools.TOOL_CALENDAR.equals(enabledTool)) {
tools.saveCalendarAccess(new Long(configuration.getCalendarAccess()));
}
......
......@@ -30,6 +30,7 @@ import org.olat.core.commons.modules.bc.FolderConfig;
import org.olat.core.gui.UserRequest;
import org.olat.core.gui.components.form.flexible.FormItemContainer;
import org.olat.core.gui.components.form.flexible.elements.IntegerElement;
import org.olat.core.gui.components.form.flexible.impl.Form;
import org.olat.core.gui.components.form.flexible.impl.FormBasicController;
import org.olat.core.gui.control.Controller;
import org.olat.core.gui.control.Event;
......@@ -59,6 +60,13 @@ public class BGConfigQuotaController extends FormBasicController {
this.quota = quota;
initForm(ureq);
}
public BGConfigQuotaController(UserRequest ureq, WindowControl wControl, Quota quota, Form rootForm) {
super(ureq, wControl, -1, null, rootForm);
setTranslator(Util.createPackageTranslator(QuotaForm.class, getLocale(), getTranslator()));
this.quota = quota;
initForm(ureq);
}
/**
* @return Quota in KB.
......
......@@ -116,7 +116,7 @@ public class BGConfigToolsStepController extends StepFormBasicController {
//add quota configuration for admin only
if(ureq.getUserSession().getRoles().isOLATAdmin()) {
Quota quota = quotaManager.createQuota(null, null, null);
config.quotaCtrl = new BGConfigQuotaController(ureq, getWindowControl(), quota);
config.quotaCtrl = new BGConfigQuotaController(ureq, getWindowControl(), quota, mainForm);
config.configContainer.add("quota", config.quotaCtrl.getInitialFormItem());
config.quotaCtrl.getInitialFormItem().setVisible(false);
}
......@@ -168,7 +168,9 @@ public class BGConfigToolsStepController extends StepFormBasicController {
configuration.setFolderAccess(config.folderCtrl.getFolderAccess());
//only admin are allowed to configure quota
if(ureq.getUserSession().getRoles().isOLATAdmin() && config.quotaCtrl != null) {
Quota quota = quotaManager.createQuota(null, config.quotaCtrl.getQuotaKB(), config.quotaCtrl.getULLimit());
Long quotaKB = config.quotaCtrl.getQuotaKB();
Long ulLimit = config.quotaCtrl.getULLimit();
Quota quota = quotaManager.createQuota(null, quotaKB, ulLimit);
configuration.setQuota(quota);
}
}
......
......@@ -459,11 +459,16 @@ public class RepositorySearchController extends BasicController implements Activ
displaySearchResults(ureq);
}
private void doSearchById(Long id) {
private void doSearchById(Long id, Set<String> restrictedTypes) {
RepositoryManager rm = RepositoryManager.getInstance();
RepositoryEntry entry = rm.lookupRepositoryEntry(id);
List<RepositoryEntry> entries = new ArrayList<RepositoryEntry>(1);
if (entry != null) entries.add(entry);
if (entry != null) {
if(restrictedTypes == null || restrictedTypes.isEmpty()
|| restrictedTypes.contains(entry.getOlatResource().getResourceableTypeName())) {
entries.add(entry);
}
}
filterRepositoryEntries(entries);
repoTableModel.setObjects(entries);
tableCtr.modelChanged();
......@@ -651,7 +656,7 @@ public class RepositorySearchController extends BasicController implements Activ
} else if (source == searchForm) { // process search form events
if (event == Event.DONE_EVENT) {
if (searchForm.hasId()) {
doSearchById(searchForm.getId());
doSearchById(searchForm.getId(), searchForm.getRestrictedTypes());
} else if (enableSearchforAllInSearchForm != null) {
doSearchAllReferencables(urequest, null, true);
} else {
......
......@@ -31,6 +31,7 @@ import javax.ws.rs.core.Response;
import org.olat.admin.sysinfo.manager.SessionStatsManager;
import org.olat.admin.sysinfo.model.SessionsStats;
import org.olat.basesecurity.BaseSecurity;
import org.olat.basesecurity.Constants;
import org.olat.core.CoreSpringFactory;
import org.olat.core.util.SessionInfo;
import org.olat.core.util.UserSession;
......@@ -168,6 +169,8 @@ public class OpenOLATStatisticsWebService implements Sampler {
BaseSecurity securityManager = CoreSpringFactory.getImpl(BaseSecurity.class);
long countUsers = securityManager.countIdentitiesByPowerSearch(null, null, false, null, null, null, null, null, null, null, null);
stats.setTotalUserCount(countUsers);
long countActiveUsers = securityManager.countIdentitiesByPowerSearch(null, null, false, null, null, null, null, null, null, null, Constants.USERSTATUS_ACTIVE);
stats.setActiveUserCount(countActiveUsers);
BusinessGroupService bgs = CoreSpringFactory.getImpl(BusinessGroupService.class);
long countGroups = bgs.countBusinessGroups(null, null);
......
......@@ -34,6 +34,8 @@ public class UserStatisticsVO {
@XmlAttribute(name="totalUserCount", required=true)
private long totalUserCount;
@XmlAttribute(name="activeUserCount", required=true)
private long activeUserCount;
@XmlAttribute(name="totalGroupCount", required=true)
private long totalGroupCount;
......@@ -46,6 +48,14 @@ public class UserStatisticsVO {
this.totalUserCount = totalUserCount;
}
public long getActiveUserCount() {
return activeUserCount;
}
public void setActiveUserCount(long activeUserCount) {
this.activeUserCount = activeUserCount;
}
public long getTotalGroupCount() {
return totalGroupCount;
}
......
......@@ -157,6 +157,7 @@ public class SystemTest extends OlatJerseyTestCase {
assertNotNull(userStats);
assertTrue(userStats.getTotalUserCount() > 0);
assertTrue(userStats.getTotalGroupCount() >= 0);
assertTrue(userStats.getActiveUserCount() >= 0);
conn.shutdown();
}
......
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