Coverage Report - org.kuali.student.lum.lu.ui.course.client.configuration.CourseAdminRetireConfigurer
 
Classes in this File Line Coverage Branch Coverage Complexity
CourseAdminRetireConfigurer
0%
0/36
0%
0/2
1.2
 
 1  
 package org.kuali.student.lum.lu.ui.course.client.configuration;
 2  
 
 3  
 import org.kuali.student.common.dto.DtoConstants;
 4  
 import org.kuali.student.common.ui.client.configurable.mvc.SectionTitle;
 5  
 import org.kuali.student.common.ui.client.configurable.mvc.sections.Section;
 6  
 import org.kuali.student.common.ui.client.configurable.mvc.views.VerticalSectionView;
 7  
 import org.kuali.student.common.ui.client.mvc.View;
 8  
 import org.kuali.student.common.ui.client.widgets.KSLabel;
 9  
 import org.kuali.student.lum.common.client.lu.LUUIConstants;
 10  
 import org.kuali.student.lum.lu.ui.course.client.controllers.CourseAdminRetireController;
 11  
 import org.kuali.student.lum.lu.ui.course.client.controllers.CourseProposalController;
 12  
 import org.kuali.student.lum.lu.ui.course.client.requirements.CourseRequirementsViewController;
 13  
 
 14  
 /**
 15  
  * This is the screen configuration and layout for the admin retire screen
 16  
  * 
 17  
  * @author Will
 18  
  * 
 19  
  */
 20  0
 public class CourseAdminRetireConfigurer extends CourseProposalConfigurer {
 21  
 
 22  
     protected CourseRequirementsViewController requisitesSection;
 23  
 
 24  
     /**
 25  
      * Sets up all the views and sections of {@link CourseAdminRetireController}. This
 26  
      * should be called once for initialization and setup per
 27  
      * {@link CourseAdminRetireController} instance.
 28  
      * 
 29  
      * @param layout
 30  
      */
 31  
     @Override
 32  
     public void configure(final CourseProposalController layout) {
 33  0
         type = "course";
 34  0
         state = DtoConstants.STATE_RETIRED;
 35  0
         nextState = DtoConstants.STATE_RETIRED;
 36  
 
 37  0
         groupName = LUUIConstants.COURSE_GROUP_NAME;
 38  
 
 39  0
         KSLabel courseStatusLabel = new KSLabel("");
 40  0
         if (layout.getCourseState() != null)
 41  0
             courseStatusLabel.setText(getLabel("courseStatusLabel") + ": " + layout.getCourseState());
 42  
         else
 43  0
             courseStatusLabel.setText(getLabel("courseStatusLabel") + ": Unknown");
 44  0
         layout.addContentWidget(courseStatusLabel);
 45  
 
 46  0
         layout.addView(generateCourseAdminView((CourseAdminRetireController) layout));
 47  0
     }
 48  
 
 49  
     /**
 50  
      * Configuration for the course admin screens
 51  
      * 
 52  
      * @return view
 53  
      */
 54  
     protected View generateCourseAdminView(final CourseAdminRetireController layout) {
 55  0
         VerticalSectionView view =
 56  
                 new VerticalSectionView(CourseSections.COURSE_INFO, getLabel(LUUIConstants.RETIREMENT_LABEL_KEY),
 57  
                         COURSE_PROPOSAL_MODEL, false);
 58  0
         view.addStyleName(LUUIConstants.STYLE_SECTION);
 59  
 
 60  
         // Create course admin sections
 61  0
         Section activeDatesSection = generateActiveDatesSection(initSection(LUUIConstants.ACTIVE_DATES_LABEL_KEY));
 62  0
         Section retirementSection = generateRetirementSection(initSection(LUUIConstants.RETIREMENT_LABEL_KEY));
 63  
 
 64  
         //Add course admin sections to view
 65  0
         view.addSection(activeDatesSection);
 66  0
         view.addSection(retirementSection);
 67  
 
 68  
         //Add menu items for sections
 69  0
         String sections = getLabel(LUUIConstants.COURSE_SECTIONS);
 70  0
         layout.addMenu(sections);
 71  0
         layout.addMenuItemSection(sections, getLabel(LUUIConstants.ACTIVE_DATES_LABEL_KEY),
 72  
                 LUUIConstants.ACTIVE_DATES_LABEL_KEY, activeDatesSection.getLayout());
 73  0
         layout.addMenuItemSection(sections, getLabel(LUUIConstants.RETIREMENT_LABEL_KEY),
 74  
                 LUUIConstants.RETIREMENT_LABEL_KEY, retirementSection.getLayout());
 75  
 
 76  
         //Add buttons to top and bottom of view
 77  0
         layout.addButtonForView(CourseSections.COURSE_INFO, layout.getSaveButton());
 78  0
         layout.addButtonForView(CourseSections.COURSE_INFO, layout.getCancelButton());
 79  0
         layout.addTopButtonForView(CourseSections.COURSE_INFO, layout.getSaveButton());
 80  0
         layout.addTopButtonForView(CourseSections.COURSE_INFO, layout.getCancelButton());
 81  
 
 82  0
         return view;
 83  
     }
 84  
 
 85  
     protected Section generateActiveDatesSection(Section section) {
 86  0
         addReadOnlyField(section, COURSE + "/" + START_TERM, generateMessageInfo(LUUIConstants.START_TERM_LABEL_KEY));
 87  0
         addField(section, COURSE + "/" + END_TERM, generateMessageInfo(LUUIConstants.END_TERM_LABEL_KEY));
 88  
 
 89  0
         return section;
 90  
     }
 91  
 
 92  
     protected Section generateRetirementSection(Section section) {
 93  0
         addField(section, COURSE + "/" + RETIREMENT_RATIONALE,
 94  
                 generateMessageInfo(LUUIConstants.RETIREMENT_RATIONALE_LABEL_KEY));
 95  0
         addField(section, COURSE + "/" + LAST_TERM_OFFERED,
 96  
                 generateMessageInfo(LUUIConstants.LAST_TERM_OFFERED_LABEL_KEY));
 97  0
         addField(section, COURSE + "/" + LAST_PUBLICATION_YEAR,
 98  
                 generateMessageInfo(LUUIConstants.LAST_PUBLICATION_YEAR_LABEL_KEY));
 99  0
         addField(section, COURSE + "/" + SPECIAL_CIRCUMSTANCES,
 100  
                 generateMessageInfo(LUUIConstants.SPECIAL_CIRCUMSTANCES_LABEL_KEY));
 101  
 
 102  0
         return section;
 103  
     }
 104  
 
 105  
     protected Section initSection(String labelKey) {
 106  0
         return initSection(SectionTitle.generateH2Title(getLabel(labelKey)), NO_DIVIDER);
 107  
     }
 108  
 
 109  
 }