Changeset 610


Ignore:
Timestamp:
Nov 26, 2013, 11:16:15 PM (11 years ago)
Author:
chronos
Message:
  • Added: Identification code to language list.
  • Fixed: Locale update to database used fixed language id. Now id is detected from language code.
Location:
trunk
Files:
7 edited

Legend:

Unmodified
Added
Removed
  • trunk/admin/UpdateTrace.php

    r608 r610  
    26392639}
    26402640
     2641function UpdateTo610($Manager)
     2642{
     2643  $Manager->Execute('ALTER TABLE `Language` ADD `Default` INT NOT NULL ,
     2644ADD `Code` VARCHAR( 255 ) NOT NULL ;');
     2645  $Manager->Execute('UPDATE `Language` SET `Default` = 1,
     2646`Code` = "en" WHERE `Language`.`Name` ="Angličitna";');
     2647  $Manager->Execute('UPDATE `Language` SET `Code` = "cs" WHERE `Language`.`Name` ="Čeština";');
     2648  $Manager->Execute('UPDATE `Language` SET `Code` = "sk" WHERE `Language`.`Name` ="Slovenština";');   
     2649}
     2650
     2651
    26412652$Updates = array(
    26422653        498 => array('Revision' => 506, 'Function' => 'UpdateTo506'),
     
    26522663        600 => array('Revision' => 604, 'Function' => 'UpdateTo604'),
    26532664        604 => array('Revision' => 609, 'Function' => 'UpdateTo609'),
     2665        609 => array('Revision' => 610, 'Function' => 'UpdateTo610'),
    26542666);
  • trunk/admin/index.php

    r609 r610  
    9595       
    9696        $Locale->AnalyzeCode(dirname(dirname(__FILE__)));
    97         $Locale->UpdateToDatabase($System->Database, 3);
     97        $Locale->UpdateToDatabase($System->Database, $Locale->Texts->Code);
    9898        $FileName = dirname(dirname(__FILE__)).'/locale/'.$Locale->Texts->Code.'.php';
    9999        $Locale->SaveToFile($FileName);
  • trunk/includes/Locale.php

    r609 r610  
    108108  }
    109109 
    110   function LoadFromDatabase($Database, $LanguageId)
     110  function LoadFromDatabase($Database, $LangCode)
    111111  {
    112         $this->Texts->Data = array();
    113         $DbResult = $Database->select('Locale', '`Original`, `Translated`', '`Language`='.$LanguageId * 1);
    114         while($DbRow = $DbResult->fetch_assoc())
    115           $this->Texts->Data[$DbRow['Original']] = $DbRow['Translated'];
     112        $DbResult = $Database->select('Language', '*', 'Code='.$Database->quote($LangCode));
     113        if($DbResult->num_rows > 0)
     114        {
     115          $Language = $DbResult->fetch_assoc();
     116        $this->Texts->Data = array();
     117        $DbResult = $Database->select('Locale', '`Original`, `Translated`', '`Language`='.$Language['Id']);
     118          while($DbRow = $DbResult->fetch_assoc())
     119            $this->Texts->Data[$DbRow['Original']] = $DbRow['Translated'];
     120        }
    116121  }
    117122
    118   function SaveToDatabase(Database $Database, $LanguageId)
     123  function SaveToDatabase(Database $Database, $LangCode)
    119124  {
    120         $Database->delete('Locale', '`Language`='.$LanguageId * 1);
    121         foreach($this->Texts->Data as $Index => $Item)
    122           $Database->query('INSERT INTO `Locale` (`Language`,`Original`,`Translated`) '.
    123           'VALUES('.$LanguageId.','.$Database->quote($Index).','.$Database->quote($Item).')');
     125        $DbResult = $Database->select('Language', '*', 'Code='.$Database->quote($LangCode));
     126        if($DbResult->num_rows > 0)
     127        {
     128          $Language = $DbResult->fetch_assoc();
     129          $Database->delete('Locale', '`Language`='.$Language['Id']);
     130          foreach($this->Texts->Data as $Index => $Item)
     131          $Database->query('INSERT INTO `Locale` (`Language`,`Original`,`Translated`) '.
     132            'VALUES('.$Language['Id'].','.$Database->quote($Index).','.$Database->quote($Item).')');
     133        }
    124134  }
    125135
    126   function UpdateToDatabase(Database $Database, $LanguageId)
     136  function UpdateToDatabase(Database $Database, $LangCode)
    127137  {
    128         foreach($this->Texts->Data as $Index => $Item)
    129     {
    130           $DbResult = $Database->select('Locale', '*', '`Original` ='.$Database->quote($Index));
    131           if($DbResult->num_rows > 0)
    132           $Database->update('Locale', '(`Language`='.($LanguageId * 1).') AND '.
    133         '(`Original` ='.$Database->quote($Index).')', array('Translated' => $Item));
    134           else $Database->insert('Locale', array('Language' => $LanguageId * 1,
    135        'Original' => $Index, 'Translated' => $Item));
    136     }
     138        $DbResult = $Database->select('Language', '*', 'Code='.$Database->quote($LangCode));
     139        if($DbResult->num_rows > 0)
     140        {
     141          $Language = $DbResult->fetch_assoc();
     142        foreach($this->Texts->Data as $Index => $Item)
     143      {
     144            $DbResult = $Database->select('Locale', '*', '(`Original` ='.$Database->quote($Index).') AND (`Language`='.($Language['Id']).')');
     145          if($DbResult->num_rows > 0)
     146          $Database->update('Locale', '(`Language`='.($Language['Id']).') AND '.
     147          '(`Original` ='.$Database->quote($Index).')', array('Translated' => $Item));
     148          else $Database->insert('Locale', array('Language' => $Language['Id'],
     149         'Original' => $Index, 'Translated' => $Item));
     150      }
     151        }
    137152  }
    138153}
  • trunk/includes/Version.php

    r609 r610  
    66// and system will need database update.
    77
    8 $Revision = 609; // Subversion revision
    9 $DatabaseRevision = 608; // Database structure revision
     8$Revision = 610; // Subversion revision
     9$DatabaseRevision = 610; // Database structure revision
    1010$ReleaseTime = '2013-11-26';
  • trunk/includes/system.php

    r609 r610  
    3939    (                   
    4040                array(
    41                                 'Title' => 'Soubory',
     41                                'Title' => T('Files'),
    4242                                'Hint' => 'Stahování různých pomocných souborů a programů',
    4343                                'Link' => $this->Link('/download.php'),
     
    4646                ),
    4747                array(
    48                                 'Title' => 'Pokyny',
     48                                'Title' => T('Instructions'),
    4949                                'Hint' => 'Informace k překladu hry',
    5050                                'Link' => $this->Link('/info.php'),
     
    5353                ),
    5454                array(
    55                                 'Title' => 'Zdroje dat',
     55                                'Title' => T('Data source'),
    5656                                'Hint' => 'Informace o překladových skupinách',
    5757                                'Link' => $this->Link('/TranslationList.php?action=grouplist'),
     
    6060                ),
    6161                array(
    62                                 'Title' => 'Prezentace',
     62                                'Title' => T('Presentation'),
    6363                                'Hint' => 'Prezentace a motivace překladu',
    6464                                'Link' => $this->Link('/promotion.php'),
     
    6767                ),             
    6868                array(
    69                                 'Title' => 'IRC chat',
     69                                'Title' => T('IRC chat'),
    7070                                'Hint' => 'IRC chat pro překladatele',
    7171                                'Link' => 'http://embed.mibbit.com/?server=game.zdechov.net%3A6667&channel=%23wowpreklad&forcePrompt=true&charset=utf-8',
     
    7474                ),
    7575                array(
    76                                 'Title' => 'Správa',
     76                                'Title' => T('Administration'),
    7777                                'Hint' => 'Volby pro správu',
    7878                                'Link' => $this->Link('/admin/'),
     
    208208          $this->ModuleManager->Modules['Log']->WriteLog('Stránka "'.
    209209          implode('/', $this->PathItems).'" nenalezena'.$Referer, LOG_TYPE_PAGE_NOT_FOUND);
    210     return(ShowMessage('Stránka "'.implode('/', $this->PathItems).'" nenalezena.', MESSAGE_CRITICAL));
     210    return(ShowMessage(sprintf(T('Page "%s" not found'), implode('/', $this->PathItems)), MESSAGE_CRITICAL));
    211211  }
    212212 
     
    238238                        //$Team = $DbResult->fetch_assoc();
    239239                        //$Output .= ''<span class="MenuItem">Moje překlady: <a href="">Dokončené</a> <a href="">Rozpracované</a> <a href="">Exporty</a> Tým: <a href="">'.$Team['name'].'</a></span>';
    240                         $Output .= '<span class="MenuItem2">'.$this->System->User->Name.' <a href="'.$this->System->Link('/?action=logout').'">Odhlášení</a>'.
     240                        $Output .= '<span class="MenuItem2">'.$this->System->User->Name.' <a href="'.$this->System->Link('/?action=logout').'">'.T('Logout').'</a>'.
    241241                                        ' <a href="'.$this->System->Link('/user.php?user='.$this->System->User->Id).'">'.T('My page').'</a>'.
    242242                                        ' <a href="'.$this->System->Link('/Options.php').'">'.T('Options').'</a>'.
    243243                                        ' <a title="Vámi přeložené texty" href="'.$this->System->Link('/TranslationList.php?user='.
    244                                         $this->System->User->Id.'&amp;group=0&amp;state=2&amp;text=&amp;entry=').'">Přeložené</a>'.
     244                                        $this->System->User->Id.'&amp;group=0&amp;state=2&amp;text=&amp;entry=').'">'.T('Translated').'</a>'.
    245245                                        ' <a title="Vaše rozpracované text" href="'.$this->System->Link('/TranslationList.php?user='.
    246                                         $this->System->User->Id.'&amp;group=0&amp;state=3&amp;text=&amp;entry=').'">Rozpracované</a>'.
    247                                         ' <a title="Nikým nepřeložené texty" href="'.$this->System->Link('/TranslationList.php?user=0&amp;group=0&amp;state=1&amp;text=&amp;entry=').'">Nepřeložené</a>'.
     246                                        $this->System->User->Id.'&amp;group=0&amp;state=3&amp;text=&amp;entry=').'">'.T('Unfinished').'</a>'.
     247                                        ' <a title="Nikým nepřeložené texty" href="'.$this->System->Link('/TranslationList.php?user=0&amp;group=0&amp;state=1&amp;text=&amp;entry=').'">'.T('Untranslated').'</a>'.
    248248                                        '</span>';
    249249                } else
     
    287287        function ShowSearchBox()
    288288        {
    289                 $Output = '<strong>Hledání:</strong>'.
     289                $Output = '<strong>'.T('Search').':</strong>'.
    290290                                '<form action="'.$this->System->Link('/search/').'" method="get"><div>'.                       
    291291                                '<table>'.
     
    294294                                '</tr>'.
    295295                                '<tr>'.
    296                                 '<th><input type="submit" value="Hledat" /></th>'.
     296                                '<th><input type="submit" value="'.T('Do search').'" /></th>'.
    297297                                '</tr>'.
    298298                                '</table></div>'.
  • trunk/locale/cs.php

    r609 r610  
    3131      'Online translators' => 'Online překladatelé',
    3232      'Servers' => 'Servery',
     33      'Logout' => 'Odhlášení',
     34      'Translated' => 'Přeložené',
     35      'Files' => 'Soubory',
     36      'Instructions' => 'Pokyny',
     37      'Data source' => 'Zdroje dat',
     38      'Presentation' => 'Prezentace',
     39      'IRC chat' => 'IRC chat',
     40      'Administration' => 'Správa',
     41      'Page "%s" not found' => 'Stránka "%s" nenalezena',
     42      'Unfinished' => 'Rozpracované',
     43      'Untranslated' => 'Nepřeložené',
     44      'Search' => 'Vyhledávání',
     45      'Do search' => 'Hledat',
    3346    );
    3447  }
  • trunk/locale/en.php

    r609 r610  
    55  function Load()
    66  {
    7     $this->Code = 'cs';
     7    $this->Code = 'en';
    88    $this->Data = array(
    99      'Access denied' => '',
Note: See TracChangeset for help on using the changeset viewer.