We have a custom building block we wrote that we've been using since 2010. It listens to the Luminis Message Broker to get the LDIS transactions (a customization of IMS) and then creates the courses.
One of the things it does is grab the start and end date for the course from the Banner information and populates that in the course. However, it then sets the course duration to "continuous" not "Days".
So we end up with a situation that all our courses are set to continuous duration, but still have the course start and end dates in the database. If an instructor decides to go to the properties to enable dates, the default dates are pre-populated. It works great!
UNTIL the new "padlock" tool came along. The padlock tool looks at the course properties and if the dates exist and "today" isn't in that date range, then it ALWAYS shows as locked. EVEN IF THE COURSE IS SET TO CONTINUOUS DURATION. It isn't adding a check to only look at the dates if the date duration is selected.
This is wreaking havoc among our instructors who keep saying "Why doesn't the lock tool work". It has gotten so bad that I decided to use branding to hide the padlock completely.
When I investigated further, I found that in the GUI in both the instructor "course properties" menu and the system admin "course edit" menus, if I set the course to "continuous" and save the settings, it will overwrite the dates with "null" if I don't have "Days from date of enrollment" selected. So it looks like in the GUI, it is enforcing that you cannot have both "Continuous" for duration and dates entered into the course.
So, my question. Are we doing something wrong in our building block? Are we breaking some rule by having the duration set to "Continuous" AND setting the start and end date for the course?
Or, is the bug in the padlock tool, where it is making assumptions about those dates which it shouldn't be making?