LPS-40585 If we are using the altorithm 3 and there is no locale prepend to the URL we should set the locale in the session to the user prefered locale and we shouldn't prepend any locale.
LPS-40585 If we are using algorithm 3 and in the case of a guest user we should set the locale in the session to the default locale of the portal and we shouldn't prepend any locale.
LPS-40585 Avoid that the Portal Message overlaps with something important like dockbard or add application controls when useAnimation is false. If we are using animation we can overlap some content because it will be automatically dismiss and we don't want the user to see the page moving up and down.
LPS-40585 Allow users to dismiss the message during the session (until next login). Otherwise the message with the options will be displayed every time the user clicks any link.
LPS-40585 Fix tests. The method getPrependI18nLanguageId should always return null when the algorithm is 3. We never auto prepend the locale when the algorithm is 3.
LPS-40585 The logic to display or not the notification shouldn't be handled from the Servlet because it's called too many times (even if we are just doing a AJAX request without rendering any JSP). It should be handled somewhere in the UI.
LPS-40585 SF