I've written before about guest access to Original courses in Ultra Navigation. This post is about self-registration in Ultra Navigation. The expected behavior in the system is:
1. Enable self-registration in the specific course in Administrator Panel
2. Share a link to the course with students who are not enrolled in the course
3. When students access the link, and Enroll button is visible in bottom left
As long as students are already logged in, authenticated, the system works as expected. However, this is only one scenario for using self-registration. Another scenario is to include a link to the self-registration course on a public website or in an invitation email, so students can click on the link, login, self-register, and participate in the course.
This scenario in Saas systems with Ultra Navigation breaks down. After students click on the link, they are asked to login, and then they are forwarded to the Institutional Page ( Home page ). This means that they have to click again on the invitation link to see the enrollment option.
In the past a solution was to enable guest access on a single course item, such as the Welcome content area in the course, and have students be logged in as guest, upon clicking Enroll, they would be asked to login as themselves and participate in the course. This produces an error message.
So, to the workaround/solution.
The invitation link has to be crafted to use the default login page and skip custom login page with appropriate new_loc parameter. It may sound complicated, but the basics are here:
1. Destination URL to the self-registration course:
You would find this URL by right-clicking on the content area in the destination course.
2. Encode the destination URL in a new URL with new_loc parameter:
3. Create a short URL, easy to remember:
If step 2 seems a bit challenging, I'm sure the nerd-readers know what's going on, you can use our Guest Link tool to generate the URL. All you need is the destination URL from step 1, then paste it in the Guest Link tool. Simply, generate the guest URL, then modify one element:
The resulting URL will present the default login page (utilize ldap, shib, or local auth), then lead the student to the course with Enroll link. After clicking Enroll the student will be able to participate in the course.