001/** 002 * Copyright 2012 The Kuali Foundation Licensed under the 003 * Educational Community License, Version 2.0 (the "License"); you may 004 * not use this file except in compliance with the License. You may 005 * obtain a copy of the License at 006 * 007 * http://www.osedu.org/licenses/ECL-2.0 008 * 009 * Unless required by applicable law or agreed to in writing, 010 * software distributed under the License is distributed on an "AS IS" 011 * BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express 012 * or implied. See the License for the specific language governing 013 * permissions and limitations under the License. 014 * 015 * Created by vgadiyak on 8/17/12 016 */ 017package org.kuali.student.enrollment.class2.courseoffering.dto; 018 019import org.apache.commons.lang.StringUtils; 020import org.kuali.student.enrollment.class2.scheduleofclasses.sort.ComparatorModel; 021import org.kuali.student.enrollment.courseoffering.dto.ActivityOfferingClusterInfo; 022import org.kuali.student.enrollment.courseoffering.dto.FormatOfferingInfo; 023import org.kuali.student.enrollment.courseoffering.dto.RegistrationGroupInfo; 024import org.kuali.student.r2.common.util.constants.LuiServiceConstants; 025 026import java.io.Serializable; 027import java.util.ArrayList; 028import java.util.List; 029 030/** 031 * This class provides a wrapper for Registration Group data 032 * 033 * @author Kuali Student Team 034 */ 035public class RegistrationGroupWrapper implements Serializable, ComparatorModel { 036 //added for ARG 037 private ActivityOfferingClusterInfo aoCluster; 038 private FormatOfferingInfo formatOfferingInfo; 039 040 private RegistrationGroupInfo rgInfo; 041 private String aoActivityCodeText; 042 private String aoStateNameText; 043 private String stateKey; 044 private String aoTypeNameText; 045 private String aoInstructorText; 046 private String aoMaxEnrText; 047 private String rgMaxEnrText; 048 private String aoClusterName; 049 private String aoEditLink; 050 private String scheduledState = ""; 051 private String startTimeDisplay = ""; 052 private String endTimeDisplay = ""; 053 private String daysDisplayName = ""; 054 private String buildingName = ""; 055 private String buildingCode = ""; 056 private String roomName = ""; 057 private String requisite; 058 private String commonRequisite; 059 060 private List<String> startTime = new ArrayList<String>(); 061 private List<String> endTime = new ArrayList<String>(); 062 private List<String> weekDays = new ArrayList<String>(); 063 064 private List<String> bldgNameList = new ArrayList<String>(); 065 private List<String> bldgCodeList = new ArrayList<String>(); 066 067 public RegistrationGroupWrapper() { 068 rgInfo = new RegistrationGroupInfo(); 069 } 070 071 public RegistrationGroupWrapper(RegistrationGroupInfo info) { 072 rgInfo = info; 073 } 074 075 public ActivityOfferingClusterInfo getAoCluster() { 076 return aoCluster; 077 } 078 079 public void setAoCluster(ActivityOfferingClusterInfo aoCluster) { 080 this.aoCluster = aoCluster; 081 } 082 083 public FormatOfferingInfo getFormatOfferingInfo() { 084 return formatOfferingInfo; 085 } 086 087 public void setFormatOfferingInfo(FormatOfferingInfo formatOfferingInfo) { 088 this.formatOfferingInfo = formatOfferingInfo; 089 } 090 091 public RegistrationGroupInfo getRgInfo() { 092 return rgInfo; 093 } 094 095 public void setRgInfo(RegistrationGroupInfo rgInfo) { 096 this.rgInfo = rgInfo; 097 } 098 099 public String getAoActivityCodeText() { 100 return aoActivityCodeText; 101 } 102 103 public void setAoActivityCodeText(String aoActivityCodeText) { 104 this.aoActivityCodeText = aoActivityCodeText; 105 } 106 107 public String getAoStateNameText() { 108 return aoStateNameText; 109 } 110 111 public void setAoStateNameText(String aoStateNameText) { 112 this.aoStateNameText = aoStateNameText; 113 } 114 115 public String getStateKey() { 116 return stateKey; 117 } 118 119 public void setStateKey(String key, String stateKey) { 120 // TODO: Add the cnacelled state here when it is added in M6 121 if(key.equalsIgnoreCase(LuiServiceConstants.REGISTRATION_GROUP_INVALID_STATE_KEY)){ 122 this.stateKey = "<span class=\"uif-invalid-state\">" + stateKey + "</span>"; 123 }else{ 124 this.stateKey = stateKey; 125 } 126 } 127 128 public String getAoTypeNameText() { 129 return aoTypeNameText; 130 } 131 132 public void setAoTypeNameText(String aoTypeNameText) { 133 this.aoTypeNameText = aoTypeNameText; 134 } 135 136 public String getAoInstructorText() { 137 return aoInstructorText; 138 } 139 140 public void setAoInstructorText(String aoInstructorText) { 141 this.aoInstructorText = aoInstructorText; 142 } 143 144 public String getAoMaxEnrText() { 145 return aoMaxEnrText; 146 } 147 148 public void setAoMaxEnrText(String aoMaxEnrText) { 149 this.aoMaxEnrText = aoMaxEnrText; 150 } 151 152 public String getStartTimeDisplay() { 153 return startTimeDisplay; 154 } 155 156 public void setStartTimeDisplay(String startTimeDisplay) { 157 setStartTimeDisplay(startTimeDisplay, false); 158 } 159 160 public void setStartTimeDisplay(String startTimeDisplay,boolean appendForDisplay){ 161 setStartTimeDisplay(startTimeDisplay, false, null); 162 } 163 164 public void setStartTimeDisplay(String startTimeDisplay,boolean appendForDisplay, String dlTypeClass) { 165 String cssClass = ""; 166 if(!StringUtils.isEmpty(dlTypeClass)){ 167 cssClass = "class=\"" + dlTypeClass + "\""; 168 } 169 if(StringUtils.isEmpty(this.startTimeDisplay)){ 170 appendForDisplay = false; 171 } 172 if (appendForDisplay){ 173 this.startTimeDisplay = this.startTimeDisplay + "<br><span " + cssClass + " >" + startTimeDisplay + "</span>"; 174 }else{ 175 this.startTimeDisplay = "<span " + cssClass + " >" + startTimeDisplay + "</span>"; 176 } 177 } 178 179 public String getEndTimeDisplay() { 180 return endTimeDisplay; 181 } 182 183 public void setEndTimeDisplay(String endTimeDisplay) { 184 setEndTimeDisplay(endTimeDisplay, false); 185 } 186 187 public void setEndTimeDisplay(String endTimeDisplay,boolean appendForDisplay) { 188 setEndTimeDisplay(endTimeDisplay, false, null); 189 } 190 191 public void setEndTimeDisplay(String endTimeDisplay,boolean appendForDisplay, String dlTypeClass) { 192 String cssClass = ""; 193 if(!StringUtils.isEmpty(dlTypeClass)){ 194 cssClass = "class=\"" + dlTypeClass + "\""; 195 } 196 if(StringUtils.isEmpty(this.endTimeDisplay)){ 197 appendForDisplay = false; 198 } 199 if (appendForDisplay){ 200 this.endTimeDisplay = this.endTimeDisplay + "<br><span " + cssClass + " >" + endTimeDisplay + "</span>"; 201 }else{ 202 this.endTimeDisplay = "<span " + cssClass + " >" + endTimeDisplay + "</span>"; 203 } 204 } 205 206 public String getDaysDisplayName() { 207 return daysDisplayName; 208 } 209 210 public void setDaysDisplayName(String daysDisplayName) { 211 setDaysDisplayName(daysDisplayName, false); 212 } 213 214 public void setDaysDisplayName(String daysDisplayName,boolean appendForDisplay) { 215 setDaysDisplayName(daysDisplayName, false, null); 216 } 217 218 public void setDaysDisplayName(String daysDisplayName,boolean appendForDisplay, String dlTypeClass) { 219 String cssClass = ""; 220 if(!StringUtils.isEmpty(dlTypeClass)){ 221 cssClass = "class=\"" + dlTypeClass + "\""; 222 } 223 if(StringUtils.isEmpty(this.daysDisplayName)){ 224 appendForDisplay = false; 225 } 226 if (appendForDisplay){ 227 this.daysDisplayName = this.daysDisplayName + "<br><span " + cssClass + " >" + daysDisplayName + "</span>"; 228 }else{ 229 this.daysDisplayName = "<span " + cssClass + " >" + daysDisplayName + "</span>"; 230 } 231 } 232 233 public List<String> getStartTime() { 234 return startTime; 235 } 236 237 public void setStartTime(List<String> startTime) { 238 this.startTime = startTime; 239 } 240 241 public List<String> getEndTime() { 242 return endTime; 243 } 244 245 public void setEndTime(List<String> endTime) { 246 this.endTime = endTime; 247 } 248 249 public String getScheduledState() { 250 return scheduledState; 251 } 252 253 public void setScheduledState(String scheduledState) { 254 setScheduledState(scheduledState, false); 255 } 256 257 public void setScheduledState(String scheduledState,boolean appendForDisplay) { 258 setScheduledState(scheduledState, false, null); 259 } 260 261 public void setScheduledState(String scheduledState,boolean appendForDisplay, String dlTypeClass) { 262 String cssClass = ""; 263 if(!StringUtils.isEmpty(dlTypeClass)){ 264 cssClass = "class=\"" + dlTypeClass + "\""; 265 } 266 if(StringUtils.isEmpty(this.scheduledState)){ 267 appendForDisplay = false; 268 } 269 if (appendForDisplay){ 270 this.scheduledState = this.scheduledState + "<br><span " + cssClass + " >" + scheduledState + "</span>"; 271 }else{ 272 this.scheduledState = "<span " + cssClass + " >" + scheduledState + "</span>"; 273 } 274 } 275 276 public List<String> getWeekDays() { 277 return weekDays; 278 } 279 280 public void setWeekDays(List<String> weekDays) { 281 this.weekDays = weekDays; 282 } 283 284 public String getBuildingName() { 285 return buildingName; 286 } 287 288 public void setBuildingName(String buildingName) { 289 setBuildingName(buildingName, false); 290 } 291 292 public void setBuildingName(String buildingName,boolean appendForDisplay) { 293 setBuildingName(buildingName, false, null); 294 } 295 296 public void setBuildingName(String buildingName,boolean appendForDisplay, String dlTypeClass) { 297 String cssClass = ""; 298 if(!StringUtils.isEmpty(dlTypeClass)){ 299 cssClass = "class=\"" + dlTypeClass + "\""; 300 } 301 if(StringUtils.isEmpty(this.buildingName)){ 302 appendForDisplay = false; 303 } 304 if (appendForDisplay){ 305 this.buildingName = this.buildingName + "<br><span " + cssClass + " >" + buildingName + "</span>"; 306 }else{ 307 this.buildingName = "<span " + cssClass + " >" + buildingName + "</span>"; 308 } 309 } 310 311 public String getBuildingCode() { 312 return buildingCode; 313 } 314 315 public void setBuildingCode(String buildingCode) { 316 setBuildingCode(buildingCode, false); 317 } 318 319 public void setBuildingCode(String buildingCode,boolean appendForDisplay) { 320 setBuildingCode(buildingCode, false, null); 321 } 322 323 public void setBuildingCode(String buildingCode,boolean appendForDisplay, String dlTypeClass) { 324 String cssClass = ""; 325 if(!StringUtils.isEmpty(dlTypeClass)){ 326 cssClass = "class=\"" + dlTypeClass + "\""; 327 } 328 if(StringUtils.isEmpty(this.buildingCode)){ 329 appendForDisplay = false; 330 } 331 if (appendForDisplay){ 332 this.buildingCode = this.buildingCode + "<br><span " + cssClass + " >" + buildingCode + "</span>"; 333 }else{ 334 this.buildingCode = buildingCode; 335 } 336 } 337 338 public void setBuildingCodeWithTooltip(String buildingCode, String buildingName, String dlTypeClass) { 339 String cssClass = ""; 340 boolean appendForDisplay = true; 341 if(!StringUtils.isEmpty(dlTypeClass)){ 342 cssClass = "class=\"" + dlTypeClass + "\""; 343 } 344 if(StringUtils.isEmpty(this.buildingCode)){ 345 appendForDisplay = false; 346 } else { 347 appendForDisplay = true; 348 } 349 String underlineCssClass = "<span style=\"border-bottom: 1px dotted;\">"; 350 351/* 352 if (appendForDisplay){ 353 this.buildingCode = this.buildingCode + "<br><span " + cssClass + " >" + " [id='SchOfClasses-RegGroup-BuildingCodeAndName-Tooltip' messageText='" + buildingCode + "'" + " toolTip.tooltipContent="+ "'" + buildingName +"']" + "</span>"; 354 }else{ 355 this.buildingCode = "<span " + cssClass + " >" + " [id='SchOfClasses-RegGroup-BuildingCodeAndName-Tooltip' messageText=" + "'" + buildingCode + "'" + " toolTip.tooltipContent=" + "'" + buildingName + "']" + "</span>"; 356 } 357*/ 358 String BldgCodeMark = underlineCssClass + buildingCode + "</span>"; 359 if (appendForDisplay){ 360 this.buildingCode = this.buildingCode + "<br>" + BldgCodeMark; 361 }else{ 362 this.buildingCode = BldgCodeMark; 363 } 364 365 } 366 367 public void setBuildingCodeWithTooltip(String buildingCode, String buildingName) { 368 String underlineCssClass = "<span style=\"border-bottom: 1px dotted;\">"; 369 370 String BldgCodeMark = underlineCssClass + buildingCode + "</span>"; 371 372 this.buildingCode = BldgCodeMark; 373 } 374 375 public List<String> getBldgNameList() { 376 return bldgNameList; 377 } 378 379 public void setBldgNameList(List<String> bldgNameList) { 380 this.bldgNameList = bldgNameList; 381 } 382 383 public List<String> getBldgCodeList() { 384 return bldgCodeList; 385 } 386 387 public void setBldgCodeList(List<String> bldgCodeList) { 388 this.bldgCodeList = bldgCodeList; 389 } 390 391 public String getRoomName() { 392 return roomName; 393 } 394 395 public void setRoomName(String roomName) { 396 setRoomName(roomName, false); 397 } 398 399 public void setRoomName(String roomName,boolean appendForDisplay) { 400 setRoomName(roomName, false, null); 401 } 402 403 public void setRoomName(String roomName,boolean appendForDisplay, String dlTypeClass) { 404 String cssClass = ""; 405 if(!StringUtils.isEmpty(dlTypeClass)){ 406 cssClass = "class=\"" + dlTypeClass + "\""; 407 } 408 if(StringUtils.isEmpty(this.roomName)){ 409 appendForDisplay = false; 410 } 411 if (appendForDisplay){ 412 this.roomName = this.roomName + "<br><span " + cssClass + " >" + roomName + "</span>"; 413 }else{ 414 this.roomName = "<span " + cssClass + " >" + roomName + "</span>"; 415 } 416 } 417 418 public String getRgMaxEnrText() { 419 return rgMaxEnrText; 420 } 421 422 public void setRgMaxEnrText(String rgMaxEnrText) { 423 this.rgMaxEnrText = rgMaxEnrText; 424 } 425 426 public String getAoClusterName() { 427 return aoClusterName; 428 } 429 430 public void setAoClusterName(String aoClusterName) { 431 this.aoClusterName = aoClusterName; 432 } 433 434 public String getAoEditLink() { 435 return aoEditLink; 436 } 437 438 public void setAoEditLink(String aoEditLink) { 439 this.aoEditLink = aoEditLink; 440 } 441 442 public String getRequisite() { 443 return requisite; 444 } 445 446 public void setRequisite(String requisite) { 447 this.requisite = requisite; 448 } 449 450 public String getCommonRequisite() { 451 return commonRequisite; 452 } 453 454 public void setCommonRequisite(String commonRequisite) { 455 this.commonRequisite = commonRequisite; 456 } 457}