On Sun, 7 Mar 2004, Andreas Schwarz wrote: Your performance requirements should be no problem at all for any decent solution. The main thing to look at is what your peak load is. That is, you get 600k hits per month, but they are probably not evenly distributed. So, look at how many you are getting druing your peak usage periods and do you performance checking based on that. i.e if you peak at 7200 hits per hour, then you will want to know if the solution you look at can do 2 requests per second with a response time of < .2 seconds. > I don't want to create a method for every string, and there is another > problem: the strings have to take "arguments" (the username, in this > case). I could use ERuby with a method like this: > > def gettext(string, *args) > @text[@lang] % args > end > > where @text[@lang] is "Logged in as %s". But it looks a bit ugly to > have <%=gettext('LOGGED_IN_AS', @username)%> everywhere in the file... So different chunks of text take different arguments? In the UHTML: <GetText oid="withUsername" text="logged_in_as"/> You define a component that a) has a 'username' instance var and b) looks at the 'text' parameter to see which text it is supposed to deliver. Then all you have to provide in the code file is the binding: <? withUsername { username = username } ?> This assumes that when the page was onened, a little bit of code got invoked that pulled the username out of wherever you have it stored (ex. a cookie). That might work. GetText would have to know how to get the various pieces of text based on what it received in the "text" attribute. > I think I could use the accept-language setting to set the > language cookie and also add some small form field to allow the user to > change the language, because many browsers aren't configured correctly. (*nod*) When I was thinking about this, what made sense to me was to default to Accept-Language settings, but to allow the presence of a cookie with the preferred language setting to override this. Good luck, Kirk Haines