White labeling in EPiServer

Vote:
 
Is there any easy way of changing the look and feel of an EPiServer site based on some personalized setting? We would like to change the colors and images of the site depending on which user logs on.
#12773
Mar 25, 2008 18:35
Vote:
 
Yes, you can use the PersonalizedData class to store personalized values for a specific user. The following is from the SDK and is an example on how to store some value against the current user's profile (for example a selected theme or css file). if(PersonalizedData.Current!=null) { // Print current value if(PersonalizedData.Current["MyTestKey"]!=null) Response.Write(PersonalizedData.Current["MyTestKey"]); // Set new value PersonalizedData.Current["MyTestKey"] = "MyTestValue"; }
#14872
Mar 25, 2008 18:46
Vote:
 
I've used the PersonalizedData, but what I'm really looking for is something like skins in Asp.Net 2.0. My solution so far is replacing the Header user control (contains links to style sheets) with my own user control. This user controls looks in the PersonalizedData collection for a specific value. It then loads the correct CSS.
#14873
Mar 25, 2008 18:46
Vote:
 
I have previously done this by creating a dynamic css-file. That is a .aspx-page that renders the css-code. This dynamic css is then linked from the header. To make it work in some cache-scenarios we found it was best to send settings as querystring variables to the css. This means the method that creates the link to the css must read whatever settings you are interested in and forwarding them.
#14874
Mar 25, 2008 18:46
* You are NOT allowed to include any hyperlinks in the post because your account hasn't associated to your company. User profile should be updated.