wiki:GuiUrls

Version 4 (modified by Nicolas, 15 years ago) (diff)

--

GUI URLs

GUI URLs is a mechanism that projects to pass URLs to the client, for display as hyperlinks in the GUI. These links will be shown when the project is selected in the Projects tab. To use this feature, include a file 'gui_urls.xml' in the project root directory, with the following form:

<gui_urls>
    <gui_url>
        <name>Your account</name>
        <description>View your account information and credit totals</description>
        <url>http://foo.project.com/show_user.php?userid=<userid/></url>
    </gui_url>
    <gui_url>
        <name>Help</name>
        <description>Get help about SETI@home</description>
        <url>http://foo.project.com/help.php</url>
    </gui_url>
    <ifteam>
        <gui_url>
            <name>Team</name>
            <description>Info about <team_name/></description>
            <url>http://foo.project.com/team_display.php?teamid=<teamid/></url>
        </gui_url>
    </ifteam>
    ...
</gui_urls>

Each entry describes a GUI URL. These URLs (macro-substituted as described below) will be sent to client hosts in the reply to scheduler RPCs. Team-specific entries should be enclosed in <ifteam>; they will be sent only if the user belongs to a team.

Like with any XML file, all text (including URLs) must be entity-escaped:

Character Escape Code
Ampersand & &amp;
Single Quote ' &apos;
Double Quote " &quot;
Greater Than > &gt;
Less Than < &lt;

The components of a <gui_url> element are:

name
A short name, used e.g. as a button name or menu item
description
An explanation, used e.g. as a rollover popup
url
The URL

All items are macro-substituted as follows:

<userid/>
The user ID
<user_name/>
The user name
<teamid/>
The team ID
<team_name/>
The team name
<hostid/>
The host ID
<authenticator/>
The user's account key