1 package org.kuali.student.enrollment.class2.courseoffering.rule;
2
3 import org.kuali.rice.core.api.util.RiceKeyConstants;
4 import org.kuali.rice.krad.maintenance.MaintenanceDocument;
5 import org.kuali.rice.krad.rules.MaintenanceDocumentRuleBase;
6 import org.kuali.rice.krad.util.GlobalVariables;
7 import org.kuali.rice.krad.util.KRADConstants;
8 import org.kuali.student.enrollment.class2.courseoffering.dto.ActivityOfferingWrapper;
9
10 public class ActivityOfferingRule extends MaintenanceDocumentRuleBase {
11
12 @Override
13 protected boolean processGlobalSaveDocumentBusinessRules(MaintenanceDocument document) {
14 return true;
15 }
16
17 @Override
18 protected boolean isDocumentValidForSave(MaintenanceDocument maintenanceDocument) {
19 boolean result = super.isDocumentValidForSave(maintenanceDocument);
20
21 if (result){
22 ActivityOfferingWrapper wrapper = (ActivityOfferingWrapper)maintenanceDocument.getNewMaintainableObject().getDataObject();
23 if (wrapper.isColocatedAO() && wrapper.getColocatedActivities().isEmpty()){
24 GlobalVariables.getMessageMap().putError(KRADConstants.GLOBAL_ERRORS, RiceKeyConstants.ERROR_CUSTOM,"Colocated AOs are missing");
25 result = false;
26 }
27 }
28
29 return result;
30 }
31 }