/*
 * XMLObject_MultilingualManager
 *
 * The SQL definition of the Multilingual Tables.
 */
//Create Tables
$tableSM = new RowManager_MultilingualSeriesManager();
$tableSM->dropTable();
$tableSM->createTable();
$tablePM = new RowManager_MultilingualPageManager();
$tablePM->dropTable();
$tablePM->createTable();
$tableLM = new RowManager_MultilingualLabelManager();
$tableLM->dropTable();
$tableLM->createTable();
$tableXL = new RowManager_XLationManager();
$tableXL->dropTable();
$tableXL->createTable();
$dir = $extension . SITE_PATH_MODULES;
$files1 = scandir($dir);
//echo "----------<br><pre>";
//print_r ($files1);
//echo"</pre><br>--------<br><br>";
//echo "Directory of <b>$dir</b><br>";
//echo "---------------------------<br>";
for ($i = 0; $i < count($files1); $i++) {
    if ($files1[$i] !== "." && $files1[$i] !== ".." && is_dir($dir . $files1[$i])) {
        if (substr($files1[$i], 0, 5) == "site_") {
            //echo "checking {$files1[$i]} for setup script...";
            if (is_file($dir . $files1[$i] . "/tool_setup.php")) {
                //echo "<b>tool_setup.php found...</b>";
 /**
  * function updateDBTable
  * <pre>
  * Updates the DB table info.
  * </pre>
  * @return [void]
  */
 function updateDBTable()
 {
     // make sure label is translated into UnicodeEntities
     $data = $this->getLabel();
     $newData = Unicode_utf8ToUnicodeEntities($data);
     $this->setLabel($newData);
     parent::updateDBTable();
     // Go Through and remove any existing xlation requests for this
     // label entry.
     $currentPageID = $this->getPageID();
     $currentKey = $this->getKey();
     $currentLanguageID = $this->getLanguageID();
     $xlationManager = new RowManager_XLationManager();
     // for each label with matching PageID & Key
     $labelManager = new RowManager_MultilingualLabelManager();
     $labelManager->setPageID($currentPageID);
     $labelManager->setKey($currentKey);
     $labelList = $labelManager->getListIterator();
     $labelList->setFirst();
     while ($label = $labelList->getNext()) {
         // delete any xlation entry with current language_id &
         // matching label_id
         if ($xlationManager->loadByLabelAndLanguage($label->getID(), $currentLanguageID)) {
             $xlationManager->deleteEntry();
         }
     }
     // next label
 }