Tony,
I'm glad the info was useful. This type of exchange of information is one of things I like most about the DNN community. As people find solutions to problems they are very willing to share their findings. Having a resource like this (Skincovered) is invaluable as a central point for the community (thanks Nina, Armand & John!).
One more point on the resource files and the DNN Language Editor... one a project I'm working on I needed to add some custom "Profile Properties". Naturally after adding my custom "Profile Properties" the first thing I wanted to do is add the resource file entries. I discovered that the DNN Language Editor does not provide a way to add new entries -at least I couldn't find how. Someone please correct me if I an wrong.
What you have to do is manually add your new entries using a text editor. This requires file-level-access to your portal. It's not a problem for me because the websites we work on we host. Now, some importing things to know about how DNN uses the resource files...
Resource File Names: Typically, the file name of the resource file is the name of the user control that uses it. For example, the user control "Profile.ascx" is the control used to edit Profile Properties. The resource file associated with this user control is "Profile.ascx.resx". Most of the time this makes it easy to know where to find the resource entries for a particular user control or module.
Global Resource Files: This resource file is "Global" meaning that all portals within the DNN install use the entries in this file.
Portal-Specific Resource Files: DNN also makes use of what I call "portal-specific" resource files. When you are logged on to a given portal and you change an entry(ies) DNN creates a new resource file containing only the changed entries. The filename is basically the same as the original with "Portal-x" injected into the name (x represents the Portal ID of the portal you are logged on to). So, "Profile.ascx.resx" becomes "Profile.ascx.Portal-3.resx". When you look at the APP_LocalResources directory you will see both files.
When load a resource file in the DNN Language Editor it first loads the global file ("Profile.ascx.resx") then loads the portal-specific file ("Profile.ascx.Portal-3.resx") if there is one, overwritting any of the global entries withe portal-specific ones. This allows for localization of global entries at the portal level.
Because of this, in my scenario above with my custom Profile Properties I did not want to add the entries into the global resource file ("Profile.ascx.resx") because these new entries were custom to one portal only. Since it's typically an administrator that would be using the Language Editor ti wouldn't have caused a problem as far as the website users but I didn't want to clutter up the resource file for all portals.
So, what I did was manually create "Profile.ascx.Portal-3.resx" by copying "Profile.ascx.Portal-3.resx". Then,using a text editor I removed all the standard entries and created entries for the Profile Proerties I created. Take special care not to delete the header section that contains a bunch of "...xsd" entries. Remove only the blocks. Also the last line in the file must contain .
Also of note, when dealing with resource files for most modules you will notice the entries are usually the field name or control name (i.e. PageSettings.Text or cmdEdit.Text). With Profile Properties, the entries are the field name with a prefix of "ProfileProperties_" (i.e. ProfileProperties_FirstName.Text).
Enjoy,
Chuck |