| 
<?
/*
 $Author: colineberhardt $
 $Date: 2004/11/12 16:30:20 $
 $Revision: 1.1 $
 $Name:  $
 
 Copyright (C) 2004  C.N.Eberhardt ([email protected])
 
 This program is free software; you can redistribute it and/or
 modify it under the terms of the GNU General Public License
 as published by the Free Software Foundation; either version 2
 of the License, or (at your option) any later version.
 
 This program is distributed in the hope that it will be useful,
 but WITHOUT ANY WARRANTY; without even the implied warranty of
 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License
 along with this program; if not, write to the Free Software
 Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
 */
 
 require("../SiteTranslatorAdmin.php");
 $translator = new SiteTranslatorAdmin();
 ?>
 
 <html>
 <body>
 <?
 if (!$translator->isLoggedIn())
 {
 echo "<h2>Access denied</h2>";
 }
 else
 {
 
 if ($_POST["submit"])
 {
 if ($translator->isEditor())
 {
 if ($_POST["delete"]=="CHECKED")
 {
 $translator->deleteText($_POST["key"]);
 }
 else
 {
 $languages = $translator->getTranslatorLanguages().",".$translator->getDefaultLanguage();
 
 //update the localised text for each language that this editor manages
 $language = strtok ($languages,",");
 while($language)
 {
 //does the editor wish to update this text?
 if ($_POST[$language."_update_text"]=="CHECKED")
 {
 //do they wish to update the timestamp for this record
 $blnUpdateTime = ($_POST[$language."_update_date"]=="CHECKED");
 $translator->setLocalisedText($language, $_POST["key"], $_POST[$language."_text"], $blnUpdateTime);
 }
 $language = strtok (",");
 }
 }
 }
 else
 {
 //update the localised text for each language that this editor manages
 $language = strtok ($translator->getTranslatorLanguages(),",");
 while($language)
 {
 $translator->setLocalisedText($language, $_POST["key"], $_POST[$language."_text"]);
 $language = strtok (",");
 }
 }
 
 echo "<h3>The database has been updated</h3>";
 echo "You will have to refresh the menu on the left hand side to see the changes";
 
 }
 else
 {
 ?>
 <form method="post" action="<? echo $PHP_SELF ?>">
 <INPUT VALUE="<? echo $_GET["key"] ?>" READONLY TYPE="HIDDEN" NAME="key" SIZE=10>
 <?
 
 if ($translator->isEditor())
 {
 echo '<INPUT TYPE="CHECKBOX" VALUE="CHECKED" NAME="delete"><b>Delete this text entry</b></INPUT>';
 
 //show the default text
 ShowTextArea($_GET["key"], $translator->getDefaultLanguage(), false, true);
 
 //show an edit box for each of the languages that this editor can translate
 $language = strtok ($translator->getTranslatorLanguages(),",");
 while($language)
 {
 ShowTextArea($_GET["key"], $language, false, true);
 $language = strtok (",");
 }
 }
 else
 {
 //show the default text (read only)
 ShowTextArea($_GET["key"], $translator->getDefaultLanguage(), true);
 
 //show an edit box for each of the languages that this editor can translate
 $language = strtok ($translator->getTranslatorLanguages(),",");
 while($language)
 {
 ShowTextArea($_GET["key"], $language);
 $language = strtok (",");
 }
 }
 
 ?>
 <p>
 <INPUT TYPE="SUBMIT" VALUE="Submit Details" NAME="submit">
 </form>
 <?
 }
 }
 
 
 function ShowTextArea($key, $language, $blnReadOnly=false, $blnEditor=false)
 {
 global $translator;
 
 //if the text requires an update - highlight it
 if ($translator->isTranslated($key, $language) && !$translator->isUpToDate($key, $language))
 $strUpdateText = '<font color="red">(requires updating)</font>';
 
 //output the heading
 $languageName = $translator->getLanguageName($language);
 echo "<br><br><b>$languageName: $strUpdateText</b><br><br>";
 
 //output the text area
 if ($blnReadOnly)
 $strReadOnly = "READONLY";
 $strText = $translator->getLocalisedText($language, $key);
 echo "<TEXTAREA $strReadOnly NAME=\"".$language."_text\" rows=\"15\" cols=\"80\">$strText</TEXTAREA>";
 
 if ($blnEditor)
 {
 echo "<BR><INPUT TYPE=\"CHECKBOX\" VALUE=\"CHECKED\" NAME=\"".$language."_update_text\">Update $languageName text</INPUT>";
 echo '<BR><INPUT TYPE="CHECKBOX" VALUE="CHECKED" NAME="'.$language.'_update_date">Update the timestamp for this text</INPUT>';
 }
 }
 
 ?>
 
 </body>
 </html>
 
 
 |