From 6b42562cfdb4bc598928aefbd8b67c2352ba7e7a Mon Sep 17 00:00:00 2001 From: Cinders Date: Thu, 20 Dec 2012 10:28:45 -0700 Subject: [PATCH] Separate user settings and chat logs by grid (appending .gridlabel to the directory) in OS builds, Settings and directories in Havok build remain the same (firstname lastname) Remove option to append. We assume OS build users connect to more than one grid. --- indra/llvfs/lldir.cpp | 47 +++++++++++++++---- indra/llvfs/lldir.h | 12 +++-- indra/newview/app_settings/settings.xml | 11 ----- indra/newview/llstartup.cpp | 20 +++++--- .../xui/de/panel_preferences_privacy.xml | 1 - .../xui/en/panel_preferences_privacy.xml | 9 ---- .../xui/pl/panel_preferences_privacy.xml | 1 - 7 files changed, 59 insertions(+), 42 deletions(-) diff --git a/indra/llvfs/lldir.cpp b/indra/llvfs/lldir.cpp index 539daefdda..002eb6f879 100644 --- a/indra/llvfs/lldir.cpp +++ b/indra/llvfs/lldir.cpp @@ -596,8 +596,13 @@ std::string LLDir::getForbiddenFileChars() { return "\\/:*?\"<>|"; } - +// Seperate user directories per grid on OS build +#ifdef HAS_OPENSIM_SUPPORT +void LLDir::setLindenUserDir(const std::string &username, const std::string &gridname) +#else void LLDir::setLindenUserDir(const std::string &username) +#endif // HAS_OPENSIM_SUPPORT +// { // if the username isn't set, that's bad if (!username.empty()) @@ -607,9 +612,24 @@ void LLDir::setLindenUserDir(const std::string &username) std::string userlower(username); LLStringUtil::toLower(userlower); LLStringUtil::replaceChar(userlower, ' ', '_'); +// Seperate user directories per grid on OS build +#ifdef HAS_OPENSIM_SUPPORT + std::string gridlower(gridname); + LLStringUtil::toLower(gridlower); + LLStringUtil::replaceChar(gridlower, ' ', '_'); +#endif // HAS_OPENSIM_SUPPORT +// mLindenUserDir = getOSUserAppDir(); mLindenUserDir += mDirDelimiter; mLindenUserDir += userlower; +// Seperate user directories per grid on OS build +#ifdef HAS_OPENSIM_SUPPORT + if (!gridname.empty()) + { + mLindenUserDir += "." + gridlower; + } +#endif // HAS_OPENSIM_SUPPORT +// } else { @@ -631,10 +651,13 @@ void LLDir::setChatLogsDir(const std::string &path) } } -// FIRE-7343: Seperate chat logs per grid -//void LLDir::setPerAccountChatLogsDir(const std::string &username) -void LLDir::setPerAccountChatLogsDir(const std::string &gridname, const std::string &username, bool append) -// FIRE-7343: Seperate chat logs per grid +// Seperate user directories per grid on OS build +#ifdef HAS_OPENSIM_SUPPORT +void LLDir::setPerAccountChatLogsDir(const std::string &username, const std::string &gridname) +#else +void LLDir::setPerAccountChatLogsDir(const std::string &username) +#endif // HAS_OPENSIM_SUPPORT +// { // if both first and last aren't set, assume we're grabbing the cached dir if (!username.empty()) @@ -644,20 +667,24 @@ void LLDir::setPerAccountChatLogsDir(const std::string &gridname, const std::str std::string userlower(username); LLStringUtil::toLower(userlower); LLStringUtil::replaceChar(userlower, ' ', '_'); -// FIRE-7343: Seperate chat logs per grid +// Seperate user directories per grid on OS build +#ifdef HAS_OPENSIM_SUPPORT std::string gridlower(gridname); LLStringUtil::toLower(gridlower); LLStringUtil::replaceChar(gridlower, ' ', '_'); -// FIRE-7343: Seperate chat logs per grid +#endif // HAS_OPENSIM_SUPPORT +// mPerAccountChatLogsDir = getChatLogsDir(); mPerAccountChatLogsDir += mDirDelimiter; mPerAccountChatLogsDir += userlower; -// FIRE-7343: Seperate chat logs per grid - // If the user has elected, append the grid name to chat log directories - if (append && !gridname.empty()) +// Seperate user directories per grid on OS build +#ifdef HAS_OPENSIM_SUPPORT + if (!gridname.empty()) { mPerAccountChatLogsDir += "." + gridlower; } +#endif // HAS_OPENSIM_SUPPORT +// } else diff --git a/indra/llvfs/lldir.h b/indra/llvfs/lldir.h index 2fc98854b0..e0b100f038 100644 --- a/indra/llvfs/lldir.h +++ b/indra/llvfs/lldir.h @@ -160,11 +160,15 @@ class LLDir static std::string getForbiddenFileChars(); virtual void setChatLogsDir(const std::string &path); // Set the chat logs dir to this user's dir -// FIRE-7343: Seperate chat logs per grid - //virtual void setPerAccountChatLogsDir(const std::string &username); // Set the per user chat log directory. - virtual void setPerAccountChatLogsDir(const std::string &gridname, const std::string &username, bool append); // Set the per user chat log directory. -// FIRE-7343: Seperate chat logs per grid +// Seperate user directories per grid on OS build +#ifdef HAS_OPENSIM_SUPPORT + virtual void setPerAccountChatLogsDir(const std::string &username, const std::string &gridname); + virtual void setLindenUserDir(const std::string &username, const std::string &gridname); +#else + virtual void setPerAccountChatLogsDir(const std::string &username); // Set the per user chat log directory. virtual void setLindenUserDir(const std::string &username); // Set the linden user dir to this user's dir +#endif // HAS_OPENSIM_SUPPORT +// virtual void setSkinFolder(const std::string &skin_folder); virtual void setSkinThemeFolder(const std::string &theme_folder); // KB: Catznip Viewer-skins virtual bool setCacheDir(const std::string &path); diff --git a/indra/newview/app_settings/settings.xml b/indra/newview/app_settings/settings.xml index be162db7a3..df5d1e4107 100755 --- a/indra/newview/app_settings/settings.xml +++ b/indra/newview/app_settings/settings.xml @@ -18950,17 +18950,6 @@ Change of this parameter will affect the layout of buttons in notification toast Value 0 - FSAppendGridToLogFolder - - Comment - Append grid name to chat log folder - Persist - 1 - Type - Boolean - Value - 0 - PlayModeUISndRadarChatEnter diff --git a/indra/newview/llstartup.cpp b/indra/newview/llstartup.cpp index bf82a7098f..01c9616906 100755 --- a/indra/newview/llstartup.cpp +++ b/indra/newview/llstartup.cpp @@ -1092,7 +1092,14 @@ bool idle_startup() // create necessary directories // *FIX: these mkdir's should error check +// Seperate user directories per grid on OS build +#ifdef HAS_OPENSIM_SUPPORT + std::string gridlabel = LLGridManager::getInstance()->getGridLabel(); + gDirUtilp->setLindenUserDir(userid, gridlabel); +#else gDirUtilp->setLindenUserDir(userid); +#endif // HAS_OPENSIM_SUPPORT +// LLFile::mkdir(gDirUtilp->getLindenUserDir()); // Set PerAccountSettingsFile to the default value. @@ -1124,12 +1131,13 @@ bool idle_startup() { gDirUtilp->setChatLogsDir(gSavedPerAccountSettings.getString("InstantMessageLogPath")); } -// FIRE-7343: Seperate chat logs per grid - //gDirUtilp->setPerAccountChatLogsDir(userid); - static LLCachedControl AppendGrid(gSavedSettings, "FSAppendGridToLogFolder"); - gDirUtilp->setPerAccountChatLogsDir(LLGridManager::getInstance()->getGridLabel(), userid, AppendGrid); -// FIRE-7343: Seperate chat logs per grid - +// Seperate user directories per grid on OS build +#ifdef HAS_OPENSIM_SUPPORT + gDirUtilp->setPerAccountChatLogsDir(userid, gridlabel); +#else + gDirUtilp->setPerAccountChatLogsDir(userid); +#endif // HAS_OPENSIM_SUPPORT +// LLFile::mkdir(gDirUtilp->getChatLogsDir()); LLFile::mkdir(gDirUtilp->getPerAccountChatLogsDir()); diff --git a/indra/newview/skins/default/xui/de/panel_preferences_privacy.xml b/indra/newview/skins/default/xui/de/panel_preferences_privacy.xml index 8e4e7bb273..a3613eb1f3 100644 --- a/indra/newview/skins/default/xui/de/panel_preferences_privacy.xml +++ b/indra/newview/skins/default/xui/de/panel_preferences_privacy.xml @@ -32,7 +32,6 @@ - Protokolle speichern in: diff --git a/indra/newview/skins/default/xui/en/panel_preferences_privacy.xml b/indra/newview/skins/default/xui/en/panel_preferences_privacy.xml index 70ada79661..e011c425f1 100644 --- a/indra/newview/skins/default/xui/en/panel_preferences_privacy.xml +++ b/indra/newview/skins/default/xui/en/panel_preferences_privacy.xml @@ -230,15 +230,6 @@ name="logfile_name_datestamp" top_pad="3" width="350"/> -