In order to properly orient Liferay toward use as an LMS, it is important to consider calendar based availability to all content and tools as a feature.
Description: Included in the portlet and/or page configurations, along with the Permissions tab (or on it) would be a section which allows the portlet/page configurer to specify a date and time when the portlet is visible, as well as a date and time when the portlet becomes invisible again.
Use case: Quite often it is required to allow incremental access to Course information during the course of a term or session. Instructors are often reluctant to deliver all their content at once. While this could be accomplished by simply adding the content when it is required, this prevents the instructional designer from pre-arranging dates/times weeks ahead of time. As well, this does not only affect raw content, such as that published by tools like CMS, Document Lib, etc... This could potentially affect portlets of any type, Quizzes (when such exists), Chat, MB, Assignments (when such exists), Polls, etc... even full Pages.
Through such a mechanism, a content delivery flow can be created and pre-configured ahead of time, saving instructors (whom we should note is often not the instructional designer, but someone who had the course developed for them) from the time and skill required to do it manually.
A future consieration would be to also allow other criteria to affect visibility: a quiz completion/mark, an assignment delivery/mark, a completed Poll, etc... This might be accomplished by designation certain portlets as a type which can be used as access criteria. The data would only be available at the community level. The list of criteria affecting resources, within a community, could be available as a drop down argument to the availability configuration mentioned above.