Changeset 3502 in subversion


Ignore:
Timestamp:
Apr 19, 2010 7:59:06 AM (3 years ago)
Author:
alec
Message:
  • Fix setting spellcheck languages with extended codes (#1486605)
Location:
trunk/roundcubemail
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/roundcubemail/CHANGELOG

    r3492 r3502  
    22=========================== 
    33 
     4- Fix setting spellcheck languages with extended codes (#1486605) 
    45- Fix messages list scrolling in FF3.6 (#1486472) 
    56- Fix quicksearch input focus (#1486637) 
  • trunk/roundcubemail/program/steps/mail/compose.inc

    r3479 r3502  
    523523  if (!empty($CONFIG['enable_spellcheck'])) { 
    524524 
    525     $lang = strtolower(substr($_SESSION['language'], 0, 2)); 
    526    
    527     $spellcheck_langs = (array)$RCMAIL->config->get('spellcheck_languages', array('da'=>'Dansk', 'de'=>'Deutsch', 'en' => 'English', 'es'=>'Español', 'fr'=>'Français', 'it'=>'Italiano', 'nl'=>'Nederlands', 'pl'=>'Polski', 'pt'=>'Português', 'fi'=>'Suomi', 'sv'=>'Svenska')); 
     525    $engine = $RCMAIL->config->get('spellcheck_engine','googie'); 
     526    $spellcheck_langs = (array) $RCMAIL->config->get('spellcheck_languages', 
     527      array('da'=>'Dansk', 'de'=>'Deutsch', 'en' => 'English', 'es'=>'Español', 
     528            'fr'=>'Français', 'it'=>'Italiano', 'nl'=>'Nederlands', 'pl'=>'Polski', 
     529            'pt'=>'Português', 'fi'=>'Suomi', 'sv'=>'Svenska')); 
     530 
     531    // googie works only with two-letter codes 
     532    if ($engine == 'googie') { 
     533      $lang = strtolower(substr($_SESSION['language'], 0, 2)); 
     534 
     535      $spellcheck_langs_googie = array(); 
     536      foreach ($spellcheck_langs as $key => $name) 
     537        $spellcheck_langs_googie[strtolower(substr($key,0,2))] = $name; 
     538        $spellcheck_langs = $spellcheck_langs_googie; 
     539    } 
     540    else { 
     541      $lang = $_SESSION['language']; 
     542 
     543      // if not found in the list, try with two-letter code 
     544      if (!$spellcheck_langs[$lang]) 
     545        $lang = strtolower(substr($lang, 0, 2)); 
     546    } 
     547 
    528548    if (!$spellcheck_langs[$lang]) 
    529549      $lang = 'en'; 
    530      
     550 
    531551    $editor_lang_set = array(); 
    532552    foreach ($spellcheck_langs as $key => $name) { 
    533553      $editor_lang_set[] = ($key == $lang ? '+' : '') . JQ($name).'='.JQ($key); 
    534       } 
     554    } 
    535555     
    536556    $OUTPUT->include_script('googiespell.js'); 
Note: See TracChangeset for help on using the changeset viewer.