Age | Commit message (Collapse) | Author |
|
|
|
The URL for the Home side tray is specified in settings.xml. It can
now be overriden on a grid-level via a "home_sidetray_url" token sent
by login.cgi.
I also updated the Home URL in settings.xml to pass through a bunch of
information to the web server as query params. These include:
p= : the authentication token from login.cgi
lang= : the user's current two-letter language setting
channel= : the viewer's channel name, e.g., "Second Life Beta",
"Second Life Release", "Snowglobe", etc.
version= : the viewer's version number, e.g., "2.0.0.200712"
major= : the viewer's major version number, e.g. "2"
minor= : the viewer's minor version number, e.g. "0"
|
|
Search and the Home sidetray now have their own specific
authentication keys that they support from login.cgi, but they
fallback to a common key as follows:
Search: "search_token", fallback to "auth_token"
Home: "home_sidetray_token", fallback to "auth_token"
|
|
The search URL is now specified in app_settings/settings.xml (instead
of in floater_search.xml), and it is now defined more flexibly with
support for various substitution strings, such as [QUERY], [AUTH_KEY],
[MATURITY], [GODLIKE], etc.
I pulled the common substitution code out into a new static method,
LLWeb::expandURLSubstitutions(). This provides support for common
strings like [VERSION], [CHANNEL], [LANGUAGE], [OS], etc. The Help and
Home sidetray code has been updated to use this new function, to avoid
replicating this behavior 3 times.
I also cleaned up the app_settings/settings.xml file and removed the
old search keys of: SearchURLDefault, SearchURLQuery, and
SearchURLSuffix2.
|
|
Renamed llviewerversion to llversioninfo, to avoid confusion with
llversionviewer in llcommon (llversion is already used by llwindow).
Created new LLVersionInfo class with the following methods:
static S32 getMajor();
static S32 getMinor();
static S32 getPatch();
static S32 getBuild();
static const std::string &getVersion();
static const std::string &getShortVersion();
static const std::string &getChannel();
All viewer code has been updated to use this API. Viewer code no
longer directly includes llversionviewer.h from llcommon.
|
|
The Home side panel URL, specified in settings.xml, now additionally
supports a [GRID] substitution variable, with potential values equal
to: "None", "Agni", "Aditi", etc.
|
|
This module now contains general viewer version routines, not just
access to the viewer build number, so I've renamed it from
llviewerbuild to llviewerversion.
|
|
Rather than copy/paste the same version string formatting pattern
again, I added new string-based version routines:
/// return the full viewer version as a string like "2.0.0.200030"
const std::string &llGetViewerVersion();
/// return the viewer version as a string like "2.0.0"
const std::string &llGetViewerShortVersion();
/// return the viewer build version as a string, e.g., "200130"
const std::string &llGetViewerBuildVersion();
|
|
The URL for the Home side panel is now specified via a new
"HomeSidePanelURL" string in app_settings/settings.xml. This
string supports the following substitutions:
CHANNEL = the channel name for the viewer
VERSION = the full version string for the viewer
LANGUAGE = the current language set in the viewer
AUTH_KEY = the authentication key (see below)
The authentication key is an optional string that is read from the
dictionary of strings returned by login.cgi. If login.cgi returns a
key called "home_sidetray_token", then the value of that key is used
for the AUTH_KEY substitution. This lets the server provide a piece of
blind data that can be passed to the Home panel web page to support
authentication. The viewer does not interpret the token in any way.
This change adds a new module, llviewerhome.{cpp|h} to contain the
model functionality, used by the view module, llpanelhome.{cpp|h}.
|