thomascube
2005-11-13 ecf7590cb84bb944d4adcd46124fbf0d081848f3
Added new languages and new XMLHttpRequest class


6 files added
5 files modified
1015 ■■■■■ changed files
CHANGELOG 8 ●●●●● patch | view | raw | blame | history
index.php 8 ●●●●● patch | view | raw | blame | history
program/js/app.js 236 ●●●● patch | view | raw | blame | history
program/localization/el/labels.inc 183 ●●●●● patch | view | raw | blame | history
program/localization/el/messages.inc 81 ●●●●● patch | view | raw | blame | history
program/localization/index.inc 1 ●●●● patch | view | raw | blame | history
program/localization/nn_NO/labels.inc 176 ●●●●● patch | view | raw | blame | history
program/localization/nn_NO/messages.inc 60 ●●●●● patch | view | raw | blame | history
program/localization/pt_BR/labels.inc 22 ●●●● patch | view | raw | blame | history
program/localization/ru/labels.inc 178 ●●●●● patch | view | raw | blame | history
program/localization/ru/messages.inc 62 ●●●●● patch | view | raw | blame | history
CHANGELOG
@@ -60,9 +60,9 @@
- Display folder names with special chars correctly (Bug #1330157)
2005/11/06
2005/11/13
----------
- Added Finnish, Romanian, Polish, Czech, British, Norwegian and Chinese translation
- Added Finnish, Romanian, Polish, Czech, British, Norwegian, Greek, Russian and Chinese translation
- Get IMAP server capabilities in array
- Check for NAMESPACE capability before sending command
- Set default user language from config 'locale_string'
@@ -77,5 +77,7 @@
- Added messages/warning to compose step (Patch #1323895)
- Added favicon to the default skin
- Fixed Bug #1334337 as far as possible
- Added Reply-To-All functionality
- Added Reply-To-All functionality (Request #1326395, Patch #1349777)
- Redesign of client side AJAX code (enable multi threading)
- Added keep-alive signal every minute
index.php
@@ -289,6 +289,14 @@
  }
// handle keep-alive signal
if ($_action=='keep-alive')
  {
  rcube_remote_response('');
  exit;
  }
// only allow these templates to be included
$valid_tasks = array('mail','settings','addressbook');
program/js/app.js
@@ -6,7 +6,7 @@
 | Copyright (C) 2005, RoundCube Dev, - Switzerland                      |
 | Licensed under the GNU GPL                                            |
 |                                                                       |
 | Modified: 2005/11/08 (roundcube)                                      |
 | Modified: 2005/11/13 (roundcube)                                      |
 |                                                                       |
 +-----------------------------------------------------------------------+
 | Author: Thomas Bruederli <roundcube@gmail.com>                        |
@@ -33,6 +33,7 @@
  this.dblclick_time = 600;
  this.message_time = 5000;
  this.request_timeout = 180000;
  this.kepp_alive_interval = 60000;
  this.mbox_expression = new RegExp('[^0-9a-z\-_]', 'gi');
  this.env.blank_img = 'skins/default/images/blank.gif';
  
@@ -217,6 +218,10 @@
    // show message
    if (this.pending_message)
      this.display_message(this.pending_message[0], this.pending_message[1]);
    // start interval for keep-alive siganl
    if (this.kepp_alive_interval)
      this.kepp_alive_int = setInterval(this.ref+'.send_keep_alive()', this.kepp_alive_interval);
    };
@@ -1189,7 +1194,7 @@
    // send request to server
    var url = '_mbox='+escape(mbox)+(page ? '&_page='+page : '');
    this.set_busy(true, 'loading');
    this.http_request('list', url+add_url);
    this.http_request('list', url+add_url, true);
    };
@@ -1217,13 +1222,18 @@
          this.message_rows[id].obj.style.display = 'none';
        }
      }
    var lock = false;
    // show wait message
    if (this.env.action=='show')
      {
      lock = true;
      this.set_busy(true, 'movingmessage');
      }
    // send request to server
    this.http_request('moveto', '_uid='+a_uids.join(',')+'&_mbox='+escape(this.env.mailbox)+'&_target_mbox='+escape(mbox)+'&_from='+(this.env.action ? this.env.action : ''));
    this.http_request('moveto', '_uid='+a_uids.join(',')+'&_mbox='+escape(this.env.mailbox)+'&_target_mbox='+escape(mbox)+'&_from='+(this.env.action ? this.env.action : ''), lock);
    };
@@ -1692,7 +1702,7 @@
    // send request to server
    var url = page ? '&_page='+page : '';
    this.set_busy(true, 'loading');
    this.http_request('list', url);
    this.http_request('list', url, true);
    };
@@ -1834,7 +1844,7 @@
      name = form.elements['_folder_name'].value;
    if (name)
      this.http_request('create-folder', '_name='+escape(name));
      this.http_request('create-folder', '_name='+escape(name), true);
    else if (form.elements['_folder_name'])
      form.elements['_folder_name'].focus();
    };
@@ -2346,18 +2356,29 @@
  /********************************************************/
  // send a http request to the server
  this.http_request = function(action, querystring)
  this.http_sockets = new Array();
  // find a non-busy socket or create a new one
  this.get_request_obj = function()
    {
    if (window.XMLHttpRequest)
      this.request_obj = new XMLHttpRequest();
    else if (window.ActiveXObject)
      this.request_obj = new ActiveXObject("Microsoft.XMLHTTP");
    else
    for (var n=0; n<this.http_sockets.length; n++)
      {
      if (!this.http_sockets[n].busy)
        return this.http_sockets[n];
      }
    // create a new XMLHTTP object
    var i = this.http_sockets.length;
    this.http_sockets[i] = new rcube_http_request();
    return this.http_sockets[i];
    };
  // send a http request to the server
  this.http_request = function(action, querystring, lock)
    {
    var request_obj = this.get_request_obj();
    querystring += '&_remote=1';
    
    // add timestamp to request url to avoid cacheing problems in Safari
@@ -2365,51 +2386,77 @@
      querystring += '&_ts='+(new Date().getTime());
    // send request
    if (this.request_obj)
    if (request_obj)
      {
      // prompt('request', this.env.comm_path+'&_action='+escape(action)+'&'+querystring);
      console('HTTP request: '+this.env.comm_path+'&_action='+escape(action)+'&'+querystring);
      this.set_busy(true);
      this.request_action = action;
      this.request_obj.onreadystatechange = function(){ rcube_webmail_client.http_response(); };
      this.request_obj.open('GET', this.env.comm_path+'&_action='+escape(action)+'&'+querystring);
      this.request_obj.send(null);
      if (lock)
        this.set_busy(true);
      request_obj.__lock = lock ? true : false;
      request_obj.__action = action;
      request_obj.onerror = function(o){ rcube_webmail_client.http_error(o); };
      request_obj.oncomplete = function(o){ rcube_webmail_client.http_response(o); };
      request_obj.GET(this.env.comm_path+'&_action='+escape(action)+'&'+querystring);
      }
    };
  // handle http response
  this.http_response = function()
  // handle HTTP response
  this.http_response = function(request_obj)
    {
    if (this.request_obj.readyState == 4) // || this.request_obj.readyState == 2)
      {
      var ctype = this.request_obj.getResponseHeader('Content-Type');
      if (ctype)
        ctype = String(ctype).toLowerCase();
    var ctype = request_obj.get_header('Content-Type');
    if (ctype)
      ctype = String(ctype).toLowerCase();
    if (request_obj.__lock)
      this.set_busy(false);
  console(this.request_obj.responseText);
  console(request_obj.responseText);
      // if we get javascript code from server -> execute it
      if (this.request_obj.responseText && (ctype=='text/javascript' || ctype=='application/x-javascript'))
        eval(this.request_obj.responseText);
    // if we get javascript code from server -> execute it
    if (request_obj.responseText && (ctype=='text/javascript' || ctype=='application/x-javascript'))
      eval(request_obj.responseText);
      // process the response data according to the sent action
      switch (this.request_action)
        {
        case 'delete':
        case 'moveto':
          if (this.env.action=='show')
            this.command('list');
          break;
    // process the response data according to the sent action
    switch (request_obj.__action)
      {
      case 'delete':
      case 'moveto':
        if (this.env.action=='show')
          this.command('list');
        break;
          
        case 'list':
          this.enable_command('select-all', 'select-none', this.env.messagecount ? true : false);
          break;
        }
      case 'list':
        this.enable_command('select-all', 'select-none', this.env.messagecount ? true : false);
        break;
      }
    request_obj.reset();
    };
  // handle HTTP request errors
  this.http_error = function(request_obj)
    {
    alert('Error sending request: '+request_obj.url);
    if (request_obj.__lock)
      this.set_busy(false);
    request_obj.reset();
    request_obj.__lock = false;
    };
  // use an image to send a keep-alive siganl to the server
  this.send_keep_alive = function()
    {
    var d = new Date();
    this.http_request('keep-alive', '_t='+d.getTime());
    };
  /********************************************************/
@@ -2525,6 +2572,111 @@
// class for HTTP requests
function rcube_http_request()
  {
  this.url = '';
  this.busy = false;
  this.xmlhttp = null;
  // reset object properties
  this.reset = function()
    {
    // set unassigned event handlers
    this.onloading = function(){ };
    this.onloaded = function(){ };
    this.oninteractive = function(){ };
    this.oncomplete = function(){ };
    this.onabort = function(){ };
    this.onerror = function(){ };
    this.url = '';
    this.busy = false;
    this.xmlhttp = null;
    }
  // create HTMLHTTP object
  this.build = function()
    {
    if (window.XMLHttpRequest)
      this.xmlhttp = new XMLHttpRequest();
    else if (window.ActiveXObject)
      this.xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
    else
      {
      }
    }
  // sedn GET request
  this.GET = function(url)
    {
    this.build();
    if (!this.xmlhttp)
      {
      this.onerror(this);
      return false;
      }
    var ref = this;
    this.url = url;
    this.busy = true;
    this.xmlhttp.onreadystatechange = function(){ ref.xmlhttp_onreadystatechange(); };
    this.xmlhttp.open('GET', url);
    this.xmlhttp.send(null);
    };
  this.POST = function(url, a_param)
    {
    // not implemented yet
    };
  // handle onreadystatechange event
  this.xmlhttp_onreadystatechange = function()
    {
    if(this.xmlhttp.readyState == 1)
      this.onloading(this);
    else if(this.xmlhttp.readyState == 2)
      this.onloaded(this);
    else if(this.xmlhttp.readyState == 3)
      this.oninteractive(this);
    else if(this.xmlhttp.readyState == 4)
      {
      this.responseText = this.xmlhttp.responseText;
      this.responseXML = this.xmlhttp.responseXML;
      if(this.xmlhttp.status == 0)
        this.onabort(this);
      else if(this.xmlhttp.status == 200)
        this.oncomplete(this);
      else
        this.onerror(this);
      this.busy = false;
      }
    }
  // getter method for HTTP headers
  this.get_header = function(name)
    {
    return this.xmlhttp.getResponseHeader(name);
    };
  this.reset();
  }  // end class rcube_http_request
function console(str)
  {
program/localization/el/labels.inc
New file
@@ -0,0 +1,183 @@
<?php
/*
 +------------------------------------------------------------------------------+
 | language/el/labels.inc                                                       |
 |                                                                              |
 | Language file of the RoundCube Webmail client                                |
 | Copyright (C) 2005, RoundQube Dev. - Switzerland                             |
 | Licensed under the GNU GPL                                                   |
 |                                                                              |
 +------------------------------------------------------------------------------+
 | Author: Thomas Bruederli <roundcube@gmail.com>                               |
 +------------------------------------------------------------------------------+
 | Greek Translation: Panormitis Petrou <panormitis@gmx.net>                    |
 +------------------------------------------------------------------------------+
 $Id$
*/
$utf8_decoding = TRUE;
$labels = array();
// login page
$labels['username']  = 'Όνομα χρήστη';
$labels['password']  = 'Κωδικός πρόσβασης';
$labels['server']    = 'Διακομιστής';
$labels['login']     = 'Είσοδος';
// taskbar
$labels['logout']   = 'Αποσύνδεση';
$labels['mail']     = 'E-Mail';
$labels['settings'] = 'Προσωπικές ρυθμίσεις';
$labels['addressbook'] = 'Βιβλίο διευθύνσεων';
// mailbox names
$labels['inbox']  = 'Εισερχόμενα';
$labels['sent']   = 'Απεσταλμένα';
$labels['trash']  = 'Κάδος αχρήστων';
$labels['drafts'] = 'Προσχέδια';
$labels['junk']   = '’χρηστα';
// message listing
$labels['subject'] = 'Θέμα';
$labels['nosubject']  = '(χωρίς θέμα)';
$labels['from']    = 'Αποστολέας';
$labels['to']      = 'Παραλήπτης';
$labels['cc']      = 'Κοινοποίηση';
$labels['bcc']     = 'Κρυφή κοινοποίηση';
$labels['replyto'] = 'Απάντηση προς';
$labels['replytoallmessage'] = 'Απάντηση προς τον αποστολέα και προς όλους τους παραλήπτες';
$labels['date']    = 'Ημερομηνία';
$labels['size']    = 'Μέγεθος';
$labels['priority'] = 'Προτεραιότητα';
$labels['organization'] = 'Οργανισμός';
$labels['sortby']   = 'Ταξινόμηση κατά';
$labels['sortasc']  = 'Αύξουσα ταξινόμηση';
$labels['sortdesc'] = 'Φθίνουσα ταξινόμηση';
// aliases
$labels['reply-to'] = $labels['Απάντηση προς'];
$labels['mailboxlist'] = 'Φάκελοι';
$labels['messagesfromto'] = 'Μηνύματα $from έως $to από $count';
$labels['messagenrof'] = 'Μήνυμα $nr από $count';
$labels['moveto']   = 'Μετακίνηση σε...';
$labels['download'] = 'Λήψη';
$labels['filename'] = 'Όνομα αρχείου';
$labels['filesize'] = 'Μέγεθος αρχείου';
$labels['preferhtml'] = 'Προτιμάται HTML';
$labels['htmlmessage'] = 'Μήνυμα HTML';
$labels['prettydate'] = 'Μορφοποιημένες ημερομηνίες';
$labels['addtoaddressbook'] = 'Προσθήκη στο βιβλίο διευθύνσεων';
// weekdays short
$labels['sun'] = 'Κυρ';
$labels['mon'] = 'Δευ';
$labels['tue'] = 'Τρι';
$labels['wed'] = 'Τετ';
$labels['thu'] = 'Πεμ';
$labels['fri'] = 'Παρ';
$labels['sat'] = 'Σαβ';
// weekdays long
$labels['sunday']    = 'Κυριακή';
$labels['monday']    = 'Δευτέρα';
$labels['tuesday']   = 'Τρίτη';
$labels['wednesday'] = 'Τετάρτη';
$labels['thursday']  = 'Πέμπτη';
$labels['friday']    = 'Παρασκευή';
$labels['saturday']  = 'Σάββατο';
$labels['today'] = 'Σήμερα';
// toolbar buttons
$labels['writenewmessage']  = 'Δημιουργία νέου μηνύματος';
$labels['replytomessage']   = 'Απάντηση μηνύματος';
$labels['forwardmessage']   = 'Προώθηση μηνύματος';
$labels['deletemessage']    = 'Μεταφορά του μηνύματος στον κάδο αχρήστων';
$labels['printmessage']     = 'Εκτύπωση μηνύματος';
$labels['previousmessages'] = 'Εμφάνιση προηγουμένων μηνυμάτων';
$labels['nextmessages']     = 'Εμφάνιση επομένων μηνυμάτων';
$labels['backtolist']       = 'Επιστροφή στη λίστα μηνυμάτων';
$labels['viewsource']       = 'Προβολή προέλευσης';
$labels['select'] = 'Επιλογή';
$labels['all'] = 'Όλα';
$labels['none'] = 'Κανένα';
$labels['unread'] = 'Αδιάβαστα';
// message compose
$labels['compose']  = 'Σύνθεση μηνύματος';
$labels['sendmessage']  = 'Αποστολή του μηνύματος τώρα';
$labels['addattachment']  = 'Επισύναψη αρχείου';
$labels['attachments'] = 'Συνημμένα';
$labels['upload'] = 'Αποστολή';
$labels['close']  = 'Κλείσιμο';
$labels['low']     = 'Χαμηλή';
$labels['lowest']  = 'Χαμηλότατη';
$labels['normal']  = 'Κανονική';
$labels['high']    = 'Υψηλή';
$labels['highest'] = 'Ύψιστη';
$labels['showimages'] = 'Εμφάνιση εικόνων';
// address boook
$labels['name']      = 'Εμφάνιση ονόματος';
$labels['firstname'] = 'Όνομα';
$labels['surname']   = 'Επώνυμο';
$labels['email']     = 'Διεύθυνση e-mail';
$labels['addcontact'] = 'Προσθήκη νέας επαφής';
$labels['editcontact'] = 'Επεξεργασία επαφής';
$labels['edit']   = 'Επεξεργασία';
$labels['cancel'] = '’κυρο';
$labels['save']   = 'Αποθήκευση';
$labels['delete'] = 'Διαγραφή';
$labels['newcontact']     = 'Δημιουργία νέας κάρτας επαφής';
$labels['deletecontact']  = 'Διαγραφή επιλεγμένων επαφών';
$labels['composeto']      = 'Σύνθεση μηνύματος προς';
$labels['contactsfromto'] = 'Επαφές $from έως $to από $count';
$labels['print']          = 'Εκτύπωση';
$labels['export']         = 'Εξαγωγή';
// settings
$labels['settingsfor']  = 'Ρυθμίσεις για';
$labels['preferences']  = 'Προτιμήσεις';
$labels['userpreferences']  = 'Προτιμήσεις χρήστη';
$labels['editpreferences']  = 'Επεξεργασία προτιμήσεων χρήστη';
$labels['identities']  = 'Ταυτότητες';
$labels['manageidentities']  = 'Διαχείριση ταυτοτήτων αυτού του λογαριασμού';
$labels['newidentity']  = 'Νέα ταυτότητα';
$labels['newitem']  = 'Νέο αντικείμενο';
$labels['edititem']  = 'Επεξεργασία αντικειμένου';
$labels['setdefault']  = 'Ορισμός προεπιλογών';
$labels['language']  = 'Γλώσσα';
$labels['timezone']  = 'Ζώνη ώρας';
$labels['pagesize']  = 'Γραμμές ανά σελίδα';
$labels['folders']  = 'Φάκελοι';
$labels['foldername']  = 'Όνομα φακέλου';
$labels['subscribed']  = 'Εγγεγραμμένοι φάκελοι';
$labels['create']  = 'Δημιουργία';
$labels['createfolder']  = 'Δημιουργία νέου φακέλου';
$labels['deletefolder']  = 'Διαγραφή φακέλου';
$labels['managefolders']  = 'Διαχείριση φακέλων';
?>
program/localization/el/messages.inc
New file
@@ -0,0 +1,81 @@
<?php
/*
 +------------------------------------------------------------------------------+
 | language/el/messages.inc                                                     |
 |                                                                              |
 | Language file of the RoundCube Webmail client                                |
 | Copyright (C) 2005, RoundQube Dev. - Switzerland                             |
 | Licensed under the GNU GPL                                                   |
 |                                                                              |
 +------------------------------------------------------------------------------+
 | Author: Thomas Bruederli <roundcube@gmail.com>                               |
 +------------------------------------------------------------------------------+
 | Greek Translation: Panormitis Petrou <panormitis@gmx.net>                    |
 +------------------------------------------------------------------------------+
 $Id$
*/
$utf8_decoding = TRUE;
$messages = array();
$messages['loginfailed']  = 'Η είσοδος απέτυχε';
$messages['cookiesdisabled'] = 'Ο φυλλομετρητής σας δεν υποστηρίζει cookies';
$messages['sessionerror'] = 'Η σύνοδος σας δεν είναι έγκυρη ή έχει λήξει';
$messages['imaperror'] = 'Η σύνδεση με τον διακομιστή IMAP απέτυχε';
$messages['nomessagesfound'] = 'Δεν βρέθηκαν μηνύματα σε αυτό το γραμματοκιβώτιο';
$messages['loggedout'] = 'Έχετε αποσυνδεθεί επιτυχώς. Αντίο!';
$messages['mailboxempty'] = 'Το γραμματοκιβώτιο είναι άδειο';
$messages['loading'] = 'Φόρτωση...';
$messages['loadingdata'] = 'Φόρτωση δεδομένων...';
$messages['sendingmessage'] = 'Αποστολή μηνύματος...';
$messages['messagesent'] = 'Το μήνυμα στάλθηκε επιτυχώς';
$messages['successfullysaved'] = 'Αποθηκεύτηκε επιτυχώς';
$messages['addedsuccessfully'] = 'Η επαφή προστέθηκε επιτυχώς στο βιβλίο διευθύνσεων';
$messages['contactexists'] = 'Υπάρχει ήδη επαφή με αυτή τη διεύθυνση e-mail';
$messages['blockedimages'] = 'Για τη δική σας προστασία, έχουν μπλοκαριστεί οι απομακρυσμένες εικόνες που έχει αυτό το μήνυμα.';
$messages['encryptedmessage'] = 'Αυτό είναι ένα κρυπτογραφημένο μήνυμα και δεν μπορεί να εμφανιστεί. Συγνώμη!';
$messages['noemailwarning']    = 'Παρακαλώ εισάγετε μια έγκυρη διεύθυνση e-mail';
$messages['nonamewarning']     = 'Παρακαλώ εισάγετε ένα όνομα';
$messages['nopagesizewarning'] = 'Παρακαλώ εισάγετε ένα μέγεθος σελίδας';
$messages['formincomplete']    = 'Η φόρμα δεν συμπληρώθηκε τελείως';
$messages['norecipientwarning'] = 'Παρακαλώ εισάγετε τουλάχιστον έναν παραλήπτη';
$messages['nosubjectwarning']  = 'Το πεδίο "Θέμα" είναι άδειο. Θέλετε να το πληκτρολογήσετε τώρα;';
$messages['nobodywarning'] = 'Θέλετε να στείλετε αυτό το μήνυμα χωρίς κείμενο';
$messages['nocontactsfound'] = 'Δεν βρέθηκαν επαφές';
$messages['sendingfailed'] = 'Η αποστολή του μηνύματος απέτυχε';
$messages['errorsaving'] = 'Εμφανίστηκε ένα σφάλμα κατά την αποθήκευση';
$messages['errormoving']   = 'Το μήνυμα δεν μπόρεσε να μετακινηθεί';
$messages['errordeleting'] = 'Το μήνυμα δεν μπόρεσε να διαγραφτεί';
?>
program/localization/index.inc
@@ -62,6 +62,7 @@
    'ru' => 'Windows-1251',
    'lv' => 'ISO-8859-2',
    'pl' => 'ISO-8859-2',
    'el' => 'ISO-8859-7',
    'tw' => 'BIG5'
);
program/localization/nn_NO/labels.inc
New file
@@ -0,0 +1,176 @@
<?php
/*
 +-----------------------------------------------------------------------+
 | language/nn/labels.inc                                                |
 |                                                                       |
 | Language file of the RoundCube Webmail client                         |
 | Copyright (C) 2005, RoundQube Dev. - Switzerland                      |
 | Licensed under the GNU GPL                                            |
 |                                                                       |
 +-----------------------------------------------------------------------+
 | Author: Per-Stian Vatne <psv@orsta.org>                               |
 +-----------------------------------------------------------------------+
 $Id$
*/
$labels = array();
// login page
$labels['username']  = 'Brukarnamn';
$labels['password']  = 'Passord';
$labels['server']    = 'Tenar';
$labels['login']     = 'Logg inn';
// taskbar
$labels['logout']   = 'Logg ut';
$labels['mail']     = 'E-post';
$labels['settings'] = 'Personlege innstillingar';
$labels['addressbook'] = 'Adressebok';
// mailbox names
$labels['inbox']  = 'Innboks';
$labels['sent']   = 'Sende element';
$labels['trash']  = 'Sletta element';
$labels['drafts'] = 'Kladd';
$labels['junk']   = 'Søppel';
// message listing
$labels['subject'] = 'Emne';
$labels['from']    = 'Sendar';
$labels['to']      = 'Mottakar';
$labels['cc']      = 'Kopi';
$labels['bcc']     = 'Blindkopi';
$labels['replyto'] = 'Svar-til';
$labels['date']    = 'Dato';
$labels['size']    = 'Storleik';
$labels['priority'] = 'Prioritet';
$labels['organization'] = 'Organisasjon';
// aliases
$labels['reply-to'] = $labels['replyto'];
$labels['mailboxlist'] = 'Katalogar';
$labels['messagesfromto'] = 'Meldingar $from til $to av $count';
$labels['messagenrof'] = 'Melding $nr av $count';
$labels['moveto']   = 'flytt til...';
$labels['download'] = 'last ned';
$labels['filename'] = 'Filnamn';
$labels['filesize'] = 'Filstorleik';
$labels['preferhtml'] = 'Føretrekk HTML';
$labels['htmlmessage'] = 'HTML-melding';
$labels['prettydate'] = 'Pene datoar';
$labels['addtoaddressbook'] = 'Legg til i adressebok';
// weekdays short
$labels['sun'] = 'Sun';
$labels['mon'] = 'Mån';
$labels['tue'] = 'Tys';
$labels['wed'] = 'Ons';
$labels['thu'] = 'Tor';
$labels['fri'] = 'Fre';
$labels['sat'] = 'Lau';
// weekdays long
$labels['sunday']    = 'Sundag';
$labels['monday']    = 'Måndag';
$labels['tuesday']   = 'Tysdag';
$labels['wednesday'] = 'Onsdag';
$labels['thursday']  = 'Torsdag';
$labels['friday']    = 'Fredag';
$labels['saturday']  = 'Laurdag';
$labels['today'] = 'I dag';
// toolbar buttons
$labels['writenewmessage']  = 'Skriv ei ny melding';
$labels['replytomessage']   = 'Svar på meldinga';
$labels['forwardmessage']   = 'Vidaresend meldinga';
$labels['deletemessage']    = 'Flytt melding til Sletta element';
$labels['printmessage']     = 'Skriv ut meldinga';
$labels['previousmessages'] = 'Vis føregåande side med meldingar';
$labels['nextmessages']     = 'Vis neste side med med meldingar';
$labels['backtolist']       = 'Tilbake til meldingslista';
$labels['viewsource']       = 'Vis kjelde';
$labels['select'] = 'Vel';
$labels['all'] = 'Alle';
$labels['none'] = 'Ingen';
$labels['unread'] = 'Uleste';
// message compose
$labels['compose']  = 'Skriv ei melding';
$labels['sendmessage']  = 'Send meldinga no';
$labels['addattachment']  = 'Legg ved ei fil';
$labels['attachments'] = 'Vedlegg';
$labels['upload'] = 'Last opp';
$labels['close']  = 'Steng';
$labels['low']     = 'Låg';
$labels['lowest']  = 'Lågast';
$labels['normal']  = 'Normal';
$labels['high']    = 'Høg';
$labels['highest'] = 'Høgast';
$labels['showimages'] = 'Vis bilete';
// address book
$labels['name']      = 'Visingsnamn';
$labels['firstname'] = 'Førenamn';
$labels['surname']   = 'Etternamn';
$labels['email']     = 'E-post';
$labels['addcontact'] = 'Legg til ny kontakt';
$labels['editcontact'] = 'Redigere kontakt';
$labels['edit']   = 'Redigere';
$labels['cancel'] = 'Avbryt';
$labels['save']   = 'Lagre';
$labels['delete'] = 'Slette';
$labels['newcontact']     = 'Opprett nytt kontaktkort';
$labels['deletecontact']  = 'Slett valde kontaktar';
$labels['composeto']      = 'Ny melding til';
$labels['contactsfromto'] = 'Kontaktar $from til $to av $count';
$labels['print']          = 'Skriv ut';
$labels['export']         = 'Eksport';
// settings
$labels['settingsfor']  = 'Innstillingar for';
$labels['preferences']  = 'Innstillingar';
$labels['userpreferences']  = 'Brukarinnstillingar';
$labels['editpreferences']  = 'Redigere brukarinnstillingar';
$labels['identities']  = 'Identitetar';
$labels['manageidentities']  = 'Administrere identitetar for denne kontoen';
$labels['newidentity']  = 'Ny identitet';
$labels['newitem']  = 'Nytt element';
$labels['edititem']  = 'Redigere element';
$labels['setdefault']  = 'Set som standard';
$labels['language']  = 'Språk';
$labels['timezone']  = 'Tidssone';
$labels['pagesize']  = 'Rader pr side';
$labels['folders']  = 'Mapper';
$labels['foldername']  = 'Mappenamn';
$labels['subscribed']  = 'Abonnert';
$labels['create']  = 'Opprette';
$labels['createfolder']  = 'Opprett ny mappe';
$labels['deletefolder']  = 'Slett mappe';
$labels['managefolders']  = 'Administrere mapper';
?>
program/localization/nn_NO/messages.inc
New file
@@ -0,0 +1,60 @@
<?php
/*
 +-----------------------------------------------------------------------+
 | language/nn/messages.inc                                              |
 |                                                                       |
 | Language file of the RoundCube Webmail client                         |
 | Copyright (C) 2005, RoundCube Dev. - Switzerland                      |
 | Licensed under the GNU GPL                                            |
 |                                                                       |
 +-----------------------------------------------------------------------+
 | Author: Per-Stian Vatne <psv@orsta.org>                               |
 +-----------------------------------------------------------------------+
 $Id$
*/
$messages = array();
$messages['loginfailed']  = 'Feil ved innlogging';
$messages['cookiesdisabled'] = 'Nettlesaren din tillet ikkje informasjonskapslar (cookies)';
$messages['sessionerror'] = 'Sesjonen din er ulovleg eller har gått ut på tid';
$messages['imaperror'] = 'Feil ved tilkopling til IMAP-tenar';
$messages['nomessagesfound'] = 'Ingen meldingar i denne postkassa';
$messages['loggedout'] = 'Du har avslutta sesjonen. Ha det bra!';
$messages['mailboxempty'] = 'Postkassa er tom';
$messages['loadingdata'] = 'Lastar inn data...';
$messages['messagesent'] = 'Meldinga vart send';
$messages['successfullysaved'] = 'Meldinga vart lagra';
$messages['addedsuccessfully'] = 'Kontakta vart lagt til i adresseboka';
$messages['contactexists'] = 'Ei kontakt med denne e-postadressa eksisterer allereie';
$messages['blockedimages'] = 'For å ta vare på privatlivet ditt er eksterne bilete blokkert i denne meldinga.';
$messages['encryptedmessage'] = 'Dette er ei kryptert melding og kan ikkje visast. Orsak!';
$messages['nocontactsfound'] = 'Fann ingen kontaktar';
$messages['sendingfailed'] = 'Kunne ikkje sende meldinga';
$messages['errorsaving'] = 'Det skjedde ein feil ved lagring';
$messages['errormoving'] = 'Kunne ikkje flytte meldinga';
$messages['errordeleting'] = 'Kunne ikkje slette meldinga';
?>
program/localization/pt_BR/labels.inc
@@ -22,7 +22,7 @@
$labels = array();
// login page
$labels['username']  = 'Usu&aacute;rio';
$labels['username']  = 'Nome de Usuário';
$labels['password']  = 'Senha';
$labels['server']    = 'Servidor';
$labels['login']     = 'Login';
@@ -30,8 +30,8 @@
// taskbar
$labels['logout']   = 'Sair';
$labels['mail']     = 'E-Mail';
$labels['settings'] = 'Configura&cedil;&otilde;es pessoais';
$labels['addressbook'] = 'Cat&aacute;logo de endere&cedil;os';
$labels['settings'] = 'Configuraçôes pessoais';
$labels['addressbook'] = 'Catálogo de endereços';
// mailbox names
$labels['inbox']  = 'Caixa de entrada';
@@ -44,19 +44,19 @@
$labels['subject'] = 'Assunto';
$labels['from']    = 'De';
$labels['to']      = 'Para';
$labels['cc']      = 'C&oacute;pia';
$labels['cc']      = 'Cópia';
$labels['bcc']     = 'Bcc';
$labels['replyto'] = 'Responder para';
$labels['date']    = 'Data';
$labels['size']    = 'Tamanho';
$labels['priority'] = 'Prioridade';
$labels['organization'] = 'Organiza&cedil;&atilde;o';
$labels['organization'] = 'Organizaçâo';
// aliases
$labels['reply-to'] = $labels['replyto'];
$labels['mailboxlist'] = 'Mensagens';
$labels['messagesfromto'] = 'Mensagens $from at&eacute; $to de $count';
$labels['messagesfromto'] = 'Mensagens $from até $to de $count';
$labels['messagenrof'] = 'Mensagens $nr de $count';
$labels['moveto']   = 'mover para ...';
@@ -69,7 +69,7 @@
$labels['htmlmessage'] = 'Mensagem HTML';
$labels['prettydate'] = 'Formatar datas';
$labels['addtoaddressbook'] = 'Incluir no cat&aacute;logo de endere&cedil;os';
$labels['addtoaddressbook'] = 'Incluir no catálogo de endereços';
// weekdays short
$labels['sun'] = 'Dom';
@@ -78,16 +78,16 @@
$labels['wed'] = 'Qua';
$labels['thu'] = 'Qui';
$labels['fri'] = 'Sex';
$labels['sat'] = 'Sáb';
$labels['sat'] = 'Sáb';
// weekdays long
$labels['sunday']    = 'Domingo';
$labels['monday']    = 'Segunda';
$labels['tuesday']   = 'Ter&cedil;a';
$labels['tuesday']   = 'Terça';
$labels['wednesday'] = 'Quarta';
$labels['thursday']  = 'Quinta';
$labels['friday']    = 'Sexta';
$labels['saturday']  = 'S&aacute;bado';
$labels['saturday']  = 'Sábado';
$labels['today'] = 'Hoje';
@@ -99,7 +99,7 @@
$labels['deletemessage']    = 'Mover para a lixeira';
$labels['printmessage']     = 'Imprimir';
$labels['previousmessages'] = 'Anterior';
$labels['nextmessages']     = 'Pr&oacute;ximo';
$labels['nextmessages']     = 'Próximo';
$labels['backtolist']       = 'Voltar';
$labels['select'] = 'Selecionar';
program/localization/ru/labels.inc
New file
@@ -0,0 +1,178 @@
<?php
/*
 +-----------------------------------------------------------------------+
 | language/ru/labels.inc                                                |
 |                                                                       |
 | Language file of the RoundCube Webmail client                         |
 | Copyright (C) 2005, RoundQube Dev. - Switzerland                      |
 | Licensed under the GNU GPL                                            |
 |                                                                       |
 +-----------------------------------------------------------------------+
 | Author: Maxim Zenin <maxx@webmechanics.ru>, www.webmechanics.ru       |
 +-----------------------------------------------------------------------+
 $Id$
*/
$utf8_decoding = TRUE;
$labels = array();
// login page
$labels['username']  = 'Имя пользователя';
$labels['password']  = 'Пароль';
$labels['server']    = 'Сервер';
$labels['login']     = 'Логин';
// taskbar
$labels['logout']   = 'Выход';
$labels['mail']     = 'E-Mail';
$labels['settings'] = 'Настройки';
$labels['addressbook'] = 'Адресная книга';
// mailbox names
$labels['inbox']  = 'Входящие';
$labels['sent']   = 'Отправленные';
$labels['trash']  = 'Корзина';
$labels['drafts'] = 'Черновики';
$labels['junk']   = 'СПАМ';
// message listing
$labels['subject'] = 'Тема';
$labels['from']    = 'отправитель';
$labels['to']      = 'Получатель';
$labels['cc']      = 'Копия';
$labels['bcc']     = 'Скрытая';
$labels['replyto'] = 'Отвечать на';
$labels['date']    = 'Дата';
$labels['size']    = 'Размер';
$labels['priority'] = 'Приоритет';
$labels['organization'] = 'Организация';
// aliases
$labels['reply-to'] = $labels['replyto'];
$labels['mailboxlist'] = 'Папки';
$labels['messagesfromto'] = 'Сообщения  с $from по $to из $count';
$labels['messagenrof'] = 'Сообщение $nr из $count';
$labels['moveto']   = 'переместить в...';
$labels['download'] = 'загрузить';
$labels['filename'] = 'Имя файла';
$labels['filesize'] = 'Размер файла';
$labels['preferhtml'] = 'предпочитать HTML';
$labels['htmlmessage'] = 'Сообщение HTML';
$labels['prettydate'] = 'Красивые даты';
$labels['addtoaddressbook'] = 'Добавить в адресную книгу';
// weekdays short
$labels['sun'] = 'Вс';
$labels['mon'] = 'Пн';
$labels['tue'] = 'Вт';
$labels['wed'] = 'Ср';
$labels['thu'] = 'Чт';
$labels['fri'] = 'Пт';
$labels['sat'] = 'Сб';
// weekdays long
$labels['sunday']    = 'Воскресенье';
$labels['monday']    = 'Понедельник';
$labels['tuesday']   = 'Вторник';
$labels['wednesday'] = 'Среда';
$labels['thursday']  = 'Четверг';
$labels['friday']    = 'Пятница';
$labels['saturday']  = 'Суббота';
$labels['today'] = 'Сегодня';
// toolbar buttons
$labels['writenewmessage']  = 'Новое сообщение';
$labels['replytomessage']   = 'Ответить';
$labels['forwardmessage']   = 'Переслать';
$labels['deletemessage']    = 'В корзину';
$labels['printmessage']     = 'Печать';
$labels['previousmessages'] = 'Показать предыдущее';
$labels['nextmessages']     = 'Показать следующее';
$labels['backtolist']       = 'К списку сообщений';
$labels['viewsource']       = 'Показать источник';
$labels['select'] = 'Выбрать';
$labels['all'] = 'Все';
$labels['none'] = 'Ничего';
$labels['unread'] = 'Непрочитанные';
// message compose
$labels['compose']  = 'Написать';
$labels['sendmessage']  = 'Отправить сейчас';
$labels['addattachment']  = 'Вложение';
$labels['attachments'] = 'Вложения';
$labels['upload'] = 'Загрузить';
$labels['close']  = 'Закрыть';
$labels['low']     = 'Низкий';
$labels['lowest']  = 'Самый низкий';
$labels['normal']  = 'Нормальный';
$labels['high']    = 'Высокий';
$labels['highest'] = 'Самый высокий';
$labels['showimages'] = 'Показать картинки';
// address boook
$labels['name']      = 'Псевдоним';
$labels['firstname'] = 'Имя';
$labels['surname']   = 'Фамилия';
$labels['email']     = 'E-Mail';
$labels['addcontact'] = 'Добавть контакт';
$labels['editcontact'] = 'Редактировать контакт';
$labels['edit']   = 'Правка';
$labels['cancel'] = 'Отмена';
$labels['save']   = 'Сохранить';
$labels['delete'] = 'Отмена';
$labels['newcontact']     = 'Создать карточку контакта';
$labels['deletecontact']  = 'Удалить выбранные контакты';
$labels['composeto']      = 'Новое сообщение контакту';
$labels['contactsfromto'] = 'Контакты с $from по $to из $count';
$labels['print']          = 'Печать';
$labels['export']         = 'Экспорт';
// settings
$labels['settingsfor']  = 'Настройки для';
$labels['preferences']  = 'Настройки';
$labels['userpreferences']  = 'Настройки пользователя';
$labels['editpreferences']  = 'Редактировать настройки пользователя';
$labels['identities']  = 'Профили';
$labels['manageidentities']  = 'Управление профилями';
$labels['newidentity']  = 'новый профиль';
$labels['newitem']  = 'Новый элемент';
$labels['edititem']  = 'Редактировать элемент';
$labels['setdefault']  = 'Сделать основным';
$labels['language']  = 'Язык';
$labels['timezone']  = 'Часовой пояс';
$labels['pagesize']  = 'Строк на странице';
$labels['folders']  = 'Папки';
$labels['foldername']  = 'Имя папки';
$labels['subscribed']  = 'Подписан';
$labels['create']  = 'Создать';
$labels['createfolder']  = 'Создать новую папку';
$labels['deletefolder']  = 'Удалить папку';
$labels['managefolders']  = 'Настройка папок';
?>
program/localization/ru/messages.inc
New file
@@ -0,0 +1,62 @@
<?php
/*
 +-----------------------------------------------------------------------+
 | language/ru/messages.inc                                              |
 |                                                                       |
 | Language file of the RoundCube Webmail client                         |
 | Copyright (C) 2005, RoundCube Dev. - Switzerland                      |
 | Licensed under the GNU GPL                                            |
 |                                                                       |
 +-----------------------------------------------------------------------+
 | Author: Maxim Zenin <maxx@webmechanics.ru>, www.webmechanics.ru       |
 +-----------------------------------------------------------------------+
 $Id$
*/
$utf8_decoding = TRUE;
$messages = array();
$messages['loginfailed']  = 'Неудачная авторизация';
$messages['cookiesdisabled'] = 'Ваш броузер не поддерживает cookies';
$messages['sessionerror'] = 'Ваш сеанс истек';
$messages['imaperror'] = 'неудачное соединение с IMAP сервером';
$messages['nomessagesfound'] = 'Сообщения в этой папке не найдены';
$messages['loggedout'] = 'Ваша сессия завершена. До свидания!';
$messages['mailboxempty'] = 'почтовый ящик пуст';
$messages['loadingdata'] = 'Загрузка данных...';
$messages['messagesent'] = 'Сообщение отправлено';
$messages['successfullysaved'] = 'Сохранено';
$messages['addedsuccessfully'] = 'Контакт добавлен в адресную книгу';
$messages['contactexists'] = 'Контакт с указанным адресом уже содержится в адресной книге';
$messages['blockedimages'] = 'Для вашей безопасности изображения с удаленных сайтов заблокированы.';
$messages['encryptedmessage'] = 'Это сообщение зашифровано и не может быть отображено. Извините.';
$messages['nocontactsfound'] = 'Контактов не найдено';
$messages['sendingfailed'] = 'Невоможно отправить сообщение';
$messages['errorsaving'] = 'Невозможно сохранить';
$messages['errormoving'] = 'Невозможно перенести сообщение';
$messages['errordeleting'] = 'Невозможно удалить сообщение';
?>