diff --git a/inc/RSCDSUser.php b/inc/RSCDSUser.php
index 15d20f70..271c0fc4 100644
--- a/inc/RSCDSUser.php
+++ b/inc/RSCDSUser.php
@@ -65,7 +65,7 @@ class RSCDSUser extends User
if ( $ef->EditMode ) {
$html .= '
';
$html .= $ef->EndForm();
}
@@ -79,19 +79,21 @@ class RSCDSUser extends User
*
* @return string The string of html to be output
*/
- function RenderRelationshipsFrom( $ef, $title = "Relationships from this user" ) {
+ function RenderRelationshipsFrom( $ef, $title = null ) {
global $session, $c;
+ if ( $title == null ) $title = i18n("Relationships from this user");
+
$browser = new Browser("");
$browser->AddHidden( 'user_link', "'' || fullname || ''" );
- $browser->AddColumn( 'rt_name', 'Relationship' );
- $browser->AddColumn( 'fullname', 'Linked To', 'left', '##user_link##' );
+ $browser->AddColumn( 'rt_name', translate('Relationship') );
+ $browser->AddColumn( 'fullname', translate('Linked To'), 'left', '##user_link##' );
// $browser->AddColumn( 'is_group', 'Group?', 'centre', '', "CASE WHEN rt_isgroup THEN 'Yes' ELSE 'No' END" );
- $browser->AddHidden( 'confers', 'Confers' );
- $browser->AddColumn( 'email', 'EMail' );
+ $browser->AddHidden( 'confers', translate('Confers') );
+ $browser->AddColumn( 'email', translate('EMail') );
if ( $ef->EditMode ) { // && $session->AllowedTo("MaintainRelationships") ) {
- $browser->AddColumn( 'delete', 'Delete', 'centre', '', "'user_no&action=delete_relationship&to_user=' || user_no || '\">Delete'" );
+ $browser->AddColumn( 'delete', translate('Delete'), 'centre', '', "'user_no&action=delete_relationship&to_user=' || user_no || '\">Delete'" );
}
$browser->SetJoins( 'relationship NATURAL JOIN relationship_type rt LEFT JOIN usr ON (to_user = user_no)' );
@@ -103,7 +105,7 @@ class RSCDSUser extends User
else
$browser->AddOrder( 'rt_name', 'A' );
- $browser->RowFormat( "\n", "
\n", '#even' );
+ $browser->RowFormat( "\n", "
\n", '#even' );
$browser->DoQuery();
/**
@@ -124,13 +126,13 @@ SELECT user_no, fullname FROM usr
$group_target
EOSQL;
$person_selection = $ef->DataEntryField( "", "lookup", "relate_to",
- array("title" => "Select the user, resource or group to relate this user to",
+ array("title" => translate("Select the user, resource or group to relate this user to"),
"_null" => "--- select a user ".( isset($this->roles['Group Target']) ? '' : ', group ' ).'or resource ---',
"_sql" => $sql ) );
$group_target = ( isset($this->roles['Group Target']) ? 'WHERE NOT rt_isgroup' : '' );
$relationship_type_selection = $ef->DataEntryField( "", "lookup", "relate_as",
- array("title" => "Select the type of relationship from this user",
+ array("title" => translate("Select the type of relationship from this user"),
"_null" => "--- select a relationship type ---",
"_sql" => "SELECT rt_id, rt_name FROM relationship_type $group_target " ) );
@@ -141,7 +143,7 @@ EOSQL;
) );
}
- $html = ( $title == "" ? "" : $ef->BreakLine($title) );
+ $html = translate(( $title == "" ? "" : $ef->BreakLine($title) ));
$html .= "| | \n";
$html .= $browser->Render();
$html .= " |
\n";
@@ -154,17 +156,18 @@ EOSQL;
*
* @return string The string of html to be output
*/
- function RenderRelationshipsTo( $ef, $title = "Relationships to this user" ) {
+ function RenderRelationshipsTo( $ef, $title = null ) {
global $session, $c;
+ if ( $title == null ) $title = i18n("Relationships to this user");
$browser = new Browser("");
$browser->AddHidden( 'user_link', "'' || fullname || ''" );
- $browser->AddColumn( 'fullname', 'Linked From', 'left', '##user_link##' );
- $browser->AddColumn( 'rt_name', 'Relationship' );
- $browser->AddColumn( 'is_group', 'Group?', 'centre', '', "CASE WHEN rt_isgroup THEN 'Yes' ELSE 'No' END" );
- $browser->AddHidden( 'confers', 'Confers' );
- $browser->AddColumn( 'email', 'EMail' );
+ $browser->AddColumn( 'fullname', translate('Linked From'), 'left', '##user_link##' );
+ $browser->AddColumn( 'rt_name', translate('Relationship') );
+ $browser->AddColumn( 'is_group', translate('Group?'), 'centre', '', "CASE WHEN rt_isgroup THEN 'Yes' ELSE 'No' END" );
+ $browser->AddHidden( 'confers', translate('Confers') );
+ $browser->AddColumn( 'email', translate('EMail') );
$browser->SetJoins( 'relationship NATURAL JOIN relationship_type rt LEFT JOIN usr ON (from_user = user_no)' );
$browser->SetWhere( "to_user = $this->user_no" );
@@ -175,10 +178,10 @@ EOSQL;
else
$browser->AddOrder( 'rt_name', 'A' );
- $browser->RowFormat( "\n", "
\n", '#even' );
+ $browser->RowFormat( "\n", "
\n", '#even' );
$browser->DoQuery();
- $html = ( $title == "" ? "" : $ef->BreakLine($title) );
+ $html = translate( $title == "" ? "" : $ef->BreakLine($title) );
$html .= "| | \n";
$html .= $browser->Render();
$html .= " |
\n";
@@ -210,10 +213,10 @@ EOSQL;
dbg_error_log("User",":HandleAction: Deleting relationship from %d to %d", $this->user_no, $_GET['to_user'] );
$qry = new PgQuery("DELETE FROM relationship WHERE from_user=? AND to_user=?;", $this->user_no, $_GET['to_user'] );
if ( $qry->Exec() ) {
- $c->messages[] = "Relationship deleted";
+ $c->messages[] = i18n("Relationship deleted");
}
else {
- $c->messages[] = "There was an error writing to the database.";
+ $c->messages[] = i18n("There was an error writing to the database.");
return false;
}
}
@@ -236,10 +239,10 @@ EOSQL;
dbg_error_log("User",":Write: Adding relationship as %d to %d", $_POST['relate_as'], isset($_POST['relate_to'] ) );
$qry = new PgQuery("INSERT INTO relationship (from_user, to_user, rt_id ) VALUES( $this->user_no, ?, ? )", $_POST['relate_to'], $_POST['relate_as'] );
if ( $qry->Exec() ) {
- $c->messages[] = "Relationship added.";
+ $c->messages[] = i18n("Relationship added.");
}
else {
- $c->messages[] = "There was an error writing to the database.";
+ $c->messages[] = i18n("There was an error writing to the database.");
return false;
}
}
diff --git a/inc/always.php b/inc/always.php
index 299c6796..029c9c59 100644
--- a/inc/always.php
+++ b/inc/always.php
@@ -18,19 +18,16 @@ $c->images = "/images";
$c->save_time_zone_defs = 1;
$c->stylesheets = array( "/rscds.css" );
$c->collections_always_exist = true;
+$c->default_locale = array('es_MX', 'es_MX.UTF-8', 'es');
+$c->base_directory = preg_replace("#/[^/]*$#", "", $_SERVER['DOCUMENT_ROOT']);
// Kind of private configuration values
$c->total_query_time = 0;
-$c->dbg = array( );
+$c->dbg = array( "i18n" => 1 );
require_once("AWLUtilities.php");
-// Internationalisation framework
-require_once("Translation.php");
-init_gettext( 'rscds', '../locale' );
-
-
/**
* Calculate the simplest form of reference to this page, excluding the PATH_INFO following the script name.
*/
@@ -45,6 +42,10 @@ $c->protocol_server_port_script = sprintf( "%s://%s%s%s", (isset($_SERVER['HTTPS
dbg_error_log( "LOG", "==========> method =%s= =%s= =%s=", $_SERVER['REQUEST_METHOD'], $c->protocol_server_port_script, $_SERVER['PATH_INFO']);
+// Internationalisation framework
+require_once("Translation.php");
+init_gettext( 'rscds', $c->base_directory.'/locale' );
+
if ( file_exists("/etc/rscds/".$_SERVER['SERVER_NAME']."-conf.php") ) {
include_once("/etc/rscds/".$_SERVER['SERVER_NAME']."-conf.php");
}
@@ -56,6 +57,12 @@ else {
exit;
}
+/**
+* Now that we have loaded the configuration file we can switch to a
+* default site locale. This may be overridden by each user.
+*/
+awl_set_locale($c->default_locale);
+
/**
* Figure our version from the changelog
*/
diff --git a/inc/interactive-page.php b/inc/interactive-page.php
index 69b13d4e..9b744e8b 100644
--- a/inc/interactive-page.php
+++ b/inc/interactive-page.php
@@ -1,16 +1,16 @@
AddOption("Home","/","Browse all users", false, 3900 );
-$page_menu->AddOption("Help","/help.php","Help on something or other", false, 4500 );
-$page_menu->AddOption("Logout","/?logout","Log out of the $c->system_name", false, 5400 );
-$page_menu->AddOption("Report Bug","http://sourceforge.net/tracker/?func=add&group_id=179845&atid=890785","Report a bug in the system", false, 9000 );
+$page_menu->AddOption(translate("Home"),"/",translate("Browse all users"), false, 3900 );
+$page_menu->AddOption(translate("Help"),"/help.php",translate("Help on something or other"), false, 4500 );
+$page_menu->AddOption(translate("Logout"),"/?logout",translate("Log out of the").$c->system_name, false, 5400 );
+$page_menu->AddOption(translate("Report Bug"),"http://sourceforge.net/tracker/?func=add&group_id=179845&atid=890785",translate("Report a bug in the system"), false, 9000 );
$relationship_menu = new MenuSet('submenu', 'submenu', 'submenu_active');
$user_menu = new MenuSet('submenu', 'submenu', 'submenu_active');
// $role_menu = new MenuSet('submenu', 'submenu', 'submenu_active');
-$user_menu->AddOption("My Details","/user.php?user_no=$session->user_no","View my own user record", false, 700);
+$user_menu->AddOption(translate("My Details"),"/user.php?user_no=$session->user_no",translate("View my own user record"), false, 700);
$active_menu_pattern = '#^/(index.*)?$#'
?>
\ No newline at end of file
diff --git a/inc/page-header.php b/inc/page-header.php
index 365f275b..9912d197 100644
--- a/inc/page-header.php
+++ b/inc/page-header.php
@@ -1,7 +1,7 @@
title) ) {
- $c->title = "Really Simple CalDAV Store";
+ $c->title = translate("Really Simple CalDAV Store");
}
function make_help_link($matches)
@@ -21,7 +21,7 @@ function make_help_link($matches)
else {
$display_url = "help";
}
- return " [$display_url] ";
+ return " [$display_url] ";
}
@@ -65,8 +65,8 @@ EOHDR;
echo "