In-Portal Issue Tracker

Welcome to the In-Portal Open Source CMS Issue Tracker! This is a central management / tracking tool for all types of tasks / issues / bugs for the In-Portal Project. Before reporting any issues, please make sure to read the Guide into Issue Tracker and How to Properly Test and Report Bugs!

Relationship Graph View Issue ] Dependency Graph ]
related to child of duplicate of

Viewing Issue Simple Details
ID Category Type Reproducibility Date Submitted Last Update
0000929 [In-Portal CMS] Localization feature request always 2010-11-18 16:49 2012-07-25 05:32
Reporter Dmitry View Status public  
Assigned To alex
Priority normal Resolution fixed  
Status closed      
Summary 0000929: Ability to have Preferred Language for Front-end Users
Description We need to create a functionality to remember User Preferred Language and then being able to apply it to Email Event sending and auto-loading User Language on Login.


For that we should ad a NEW User field called PreferredLanguageId (default NULL) and store there user Language selection (option formatter).

The value in this field can changed in 3 places:

1. Front-end: Drop-down with currently available Languages (need to count in SiteDomain options) on User Profile form - user can select and save.

2. Front-end: OnChangeLanguage event when user changes the language we can change his PreferredLanguageId too.

3. Admin: when Admin can edit users profile.


APPLICATIONS:

1. All Email Events should rely on new PreferredLanguageId field for language selection.

2. Automatically Load users language (do redirect if needed) on Login if
currently loaded and preferred languages are different.



NOTES:

a. NULL value will indicate that we need to use Site Primary language for this User.

b. in case if user (or Admin) has selected the Preferred Language which was disabled or removed (ID is not matching) or it's not in the list of available for current SiteDomain - system should automatically default to Front-end Primary language.
Additional Information Plan:
1. add FrontLanguage column (before AdminLanguage column) into PortalUser table
2. in UserHelper::_processInterfaceLanguage / lang:OnChangeLanguage use:
- FrontLanguage column instead of AdminLanguage column
- PrimaryLang column instead of AdminInterfaceLang column
- remove isAdmin check on top of the method of course
when login is performed on Front-End
3. add FrontLanguage dropdown to user adding/editing page (admin), to my profile page in "advanced" theme (front-end)
4. add AdminLanguage dropdown to admin adding/editing page (admin)
5. make sure, that available interface languages in dropdown (when displayed on front-end only) only includes languages, that are allowed in current site domain
6. use FrontLanguage as language for Front-End Type e-mail events (if user_id is specified in kApplication::EmailEventUser)
7. use AdminLanguage as language for Admin Type e-mail events (if user_id is specified in kApplication::EmailEventAdmin)
8. make sure that e-mail event language override via "language_id" send parameter (see "_getSendLanguage" method) still works
9. placing all new e-mail event language detection logic inside that "_getSendLanguage" method would be the best choice



Web Development by Intechnic
In-Portal Open Source CMS
In-Portal Open Source CMS
Copyright © 2000 - 2009 MantisBT Group

Powered by Mantis Bugtracker