Apply changes from trunk to 0.1-stable
1 files deleted
4 files added
56 files modified
| | |
| | | - /temp |
| | | - /logs |
| | | 3. Create a new database and a database user for RoundCube (see DATABASE SETUP) |
| | | 4. Point your browser to http:///url-to-roundcube/installer/ |
| | | 4. Point your browser to http://url-to-roundcube/installer/ |
| | | 5. Follow the instructions of the install script (or see MANUAL CONFINGURATION) |
| | | 6. After creating and testing the configuration, remove the installer directory |
| | | 7. Done! |
| | |
| | | -- RoundCube Webmail initial database structure |
| | | -- Version 0.1-rc1 |
| | | -- Version 0.1 |
| | | -- |
| | | |
| | | -- -------------------------------------------------------- |
| | |
| | | `created` datetime NOT NULL default '0000-00-00 00:00:00', |
| | | `data` longtext NOT NULL, |
| | | PRIMARY KEY (`cache_id`), |
| | | KEY `user_id` (`user_id`), |
| | | KEY `cache_key` (`cache_key`), |
| | | KEY `session_id` (`session_id`) |
| | | INDEX `user_cache_index` (`user_id`,`cache_key`) |
| | | ); |
| | | |
| | | -- -------------------------------------------------------- |
| | |
| | | `size` int(11) unsigned NOT NULL default '0', |
| | | `headers` text NOT NULL, |
| | | `structure` text, |
| | | PRIMARY KEY (`message_id`), |
| | | KEY `user_id` (`user_id`), |
| | | KEY `idx` (`idx`), |
| | | KEY `uid` (`uid`), |
| | | PRIMARY KEY (`message_id`), |
| | | UNIQUE `uniqueness` (`user_id`, `cache_key`, `uid`) |
| | | ); |
| | | |
| | |
| | | -- RoundCube Webmail update script for MySQL databases |
| | | -- Updates from version 0.1-beta and 0.1-beta2 |
| | | -- Updates from version 0.1-stable to 0.1.1 |
| | | |
| | | TRUNCATE TABLE `messages`; |
| | | |
| | | ALTER TABLE `messages` |
| | | DROP `body`, |
| | | DROP INDEX `idx`, |
| | | DROP INDEX `uid` |
| | | |
| | | ALTER TABLE `cache` |
| | | DROP INDEX `cache_key`, |
| | | ADD `structure` TEXT, |
| | | ADD UNIQUE `uniqueness` (`user_id`, `cache_key`, `uid`); |
| | | DROP INDEX `session_id`, |
| | | ADD INDEX `user_cache_index` (`user_id`,`cache_key`); |
| | | |
| | | ALTER TABLE `identities` |
| | | ADD `html_signature` tinyint(1) default 0 NOT NULL; |
| | | |
| | | ALTER TABLE `session` CHANGE `ip` `ip` VARCHAR(40) |
| | | |
| | | -- Uncomment these lines if you're using MySQL 4.1 or higher |
| | | -- ALTER TABLE `users` |
| | | -- DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci, |
| | | -- CHANGE `username` `username` VARCHAR( 128 ) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL, |
| | | -- CHANGE `alias` `alias` VARCHAR( 128 ) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL; |
| | | ALTER TABLE `users` |
| | | ADD INDEX `username_index` (`username`), |
| | | ADD INDEX `alias_index` (`alias`); |
| | |
| | | -- RoundCube Webmail initial database structure |
| | | -- Version 0.1-rc1 |
| | | -- Version 0.1 |
| | | |
| | | -- -------------------------------------------------------- |
| | | |
| | |
| | | `ip` varchar(40) NOT NULL, |
| | | `vars` text NOT NULL, |
| | | PRIMARY KEY(`sess_id`) |
| | | ) TYPE=MYISAM CHARACTER SET utf8 COLLATE utf8_general_ci; |
| | | ) TYPE=INNODB CHARACTER SET utf8 COLLATE utf8_general_ci; |
| | | |
| | | |
| | | -- Table structure for table `users` |
| | |
| | | `last_login` datetime NOT NULL DEFAULT '0000-00-00 00:00:00', |
| | | `language` varchar(5) NOT NULL DEFAULT 'en', |
| | | `preferences` text, |
| | | PRIMARY KEY(`user_id`) |
| | | ) TYPE=MYISAM CHARACTER SET utf8 COLLATE utf8_general_ci; |
| | | PRIMARY KEY(`user_id`), |
| | | INDEX `username_index` (`username`), |
| | | INDEX `alias_index` (`alias`) |
| | | ) TYPE=INNODB CHARACTER SET utf8 COLLATE utf8_general_ci; |
| | | |
| | | |
| | | -- Table structure for table `messages` |
| | |
| | | `headers` text NOT NULL, |
| | | `structure` text, |
| | | PRIMARY KEY(`message_id`), |
| | | INDEX `idx`(`idx`), |
| | | INDEX `uid`(`uid`), |
| | | UNIQUE `uniqueness` (`user_id`, `cache_key`, `uid`), |
| | | CONSTRAINT `user_id_fk_messages` FOREIGN KEY (`user_id`) |
| | | REFERENCES `users`(`user_id`) |
| | | ON DELETE CASCADE |
| | | ON UPDATE CASCADE |
| | | ) TYPE=MYISAM CHARACTER SET utf8 COLLATE utf8_general_ci; |
| | | ) TYPE=INNODB CHARACTER SET utf8 COLLATE utf8_general_ci; |
| | | |
| | | |
| | | -- Table structure for table `cache` |
| | |
| | | `data` longtext NOT NULL, |
| | | `user_id` int(10) UNSIGNED NOT NULL DEFAULT '0', |
| | | PRIMARY KEY(`cache_id`), |
| | | INDEX `cache_key`(`cache_key`), |
| | | INDEX `session_id`(`session_id`), |
| | | INDEX `user_cache_index` (`user_id`,`cache_key`), |
| | | CONSTRAINT `user_id_fk_cache` FOREIGN KEY (`user_id`) |
| | | REFERENCES `users`(`user_id`) |
| | | ON DELETE CASCADE |
| | | ON UPDATE CASCADE |
| | | ) TYPE=MYISAM CHARACTER SET utf8 COLLATE utf8_general_ci; |
| | | ) TYPE=INNODB CHARACTER SET utf8 COLLATE utf8_general_ci; |
| | | |
| | | |
| | | -- Table structure for table `contacts` |
| | |
| | | REFERENCES `users`(`user_id`) |
| | | ON DELETE CASCADE |
| | | ON UPDATE CASCADE |
| | | ) TYPE=MYISAM CHARACTER SET utf8 COLLATE utf8_general_ci; |
| | | ) TYPE=INNODB CHARACTER SET utf8 COLLATE utf8_general_ci; |
| | | |
| | | |
| | | -- Table structure for table `identities` |
| | |
| | | REFERENCES `users`(`user_id`) |
| | | ON DELETE CASCADE |
| | | ON UPDATE CASCADE |
| | | ) TYPE=MYISAM CHARACTER SET utf8 COLLATE utf8_general_ci; |
| | | ) TYPE=INNODB CHARACTER SET utf8 COLLATE utf8_general_ci; |
| | | |
| | | |
| | | SET FOREIGN_KEY_CHECKS=1; |
| | |
| | | ); |
| | | |
| | | |
| | | |
| | | -- |
| | | -- Table "session" |
| | | -- Name: session; Type: TABLE; Schema: public; Owner: postgres |
| | |
| | | |
| | | CREATE TABLE identities ( |
| | | identity_id integer DEFAULT nextval('identity_ids'::text) PRIMARY KEY, |
| | | user_id integer NOT NULL REFERENCES users (user_id), |
| | | user_id integer NOT NULL REFERENCES users (user_id) ON DELETE CASCADE ON UPDATE CASCADE, |
| | | del integer DEFAULT 0 NOT NULL, |
| | | standard integer DEFAULT 0 NOT NULL, |
| | | name character varying(128) NOT NULL, |
| | |
| | | html_signature integer DEFAULT 0 NOT NULL |
| | | ); |
| | | |
| | | CREATE INDEX identities_user_id_idx ON identities (user_id); |
| | | |
| | | |
| | | -- |
| | |
| | | |
| | | CREATE TABLE contacts ( |
| | | contact_id integer DEFAULT nextval('contact_ids'::text) PRIMARY KEY, |
| | | user_id integer NOT NULL REFERENCES users (user_id), |
| | | user_id integer NOT NULL REFERENCES users (user_id) ON DELETE CASCADE ON UPDATE CASCADE, |
| | | changed timestamp with time zone DEFAULT now() NOT NULL, |
| | | del integer DEFAULT 0 NOT NULL, |
| | | name character varying(128) DEFAULT ''::character varying NOT NULL, |
| | |
| | | vcard text |
| | | ); |
| | | |
| | | |
| | | CREATE INDEX contacts_user_id_idx ON contacts (user_id); |
| | | |
| | | -- |
| | | -- Sequence "cache_ids" |
| | |
| | | |
| | | CREATE TABLE "cache" ( |
| | | cache_id integer DEFAULT nextval('cache_ids'::text) PRIMARY KEY, |
| | | user_id integer NOT NULL REFERENCES users (user_id), |
| | | user_id integer NOT NULL REFERENCES users (user_id) ON DELETE CASCADE ON UPDATE CASCADE, |
| | | session_id character varying(40) REFERENCES "session" (sess_id), |
| | | cache_key character varying(128) DEFAULT ''::character varying NOT NULL, |
| | | created timestamp with time zone DEFAULT now() NOT NULL, |
| | | data text NOT NULL |
| | | ); |
| | | |
| | | |
| | | CREATE INDEX cache_user_id_idx ON "cache" (user_id, cache_key); |
| | | |
| | | -- |
| | | -- Sequence "message_ids" |
| | |
| | | |
| | | CREATE TABLE "messages" ( |
| | | message_id integer DEFAULT nextval('message_ids'::text) PRIMARY KEY, |
| | | user_id integer NOT NULL REFERENCES users (user_id), |
| | | user_id integer NOT NULL REFERENCES users (user_id) ON DELETE CASCADE ON UPDATE CASCADE, |
| | | del integer DEFAULT 0 NOT NULL, |
| | | cache_key character varying(128) DEFAULT ''::character varying NOT NULL, |
| | | created timestamp with time zone DEFAULT now() NOT NULL, |
| | |
| | | -- RoundCube Webmail update script for Postres databases |
| | | -- Updates from version 0.1-beta and older |
| | | -- RoundCube Webmail update script for Postgres databases |
| | | -- Updates from version 0.1-stable to 0.1.1 |
| | | |
| | | ALTER TABLE "messages" DROP body; |
| | | ALTER TABLE "messages" ADD structure TEXT; |
| | | ALTER TABLE "messages" ADD UNIQUE (user_id, cache_key, uid); |
| | | CREATE INDEX cache_user_id_idx ON cache (user_id, cache_key); |
| | | CREATE INDEX contacts_user_id_idx ON contacts (user_id); |
| | | CREATE INDEX identities_user_id_idx ON identities (user_id); |
| | | |
| | | ALTER TABLE "identities" ADD html_signature INTEGER; |
| | | ALTER TABLE "identities" ALTER html_signature SET DEFAULT 0; |
| | | UPDATE identities SET html_signature = 0; |
| | | ALTER TABLE "identities" ALTER html_signature SET NOT NULL; |
| | | |
| | | -- added ON DELETE/UPDATE actions |
| | | ALTER TABLE messages DROP CONSTRAINT messages_user_id_fkey; |
| | | ALTER TABLE messages ADD FOREIGN KEY (user_id) REFERENCES users(user_id) ON DELETE CASCADE ON UPDATE CASCADE; |
| | | ALTER TABLE identities DROP CONSTRAINT identities_user_id_fkey; |
| | | ALTER TABLE identities ADD FOREIGN KEY (user_id) REFERENCES users(user_id) ON DELETE CASCADE ON UPDATE CASCADE; |
| | | ALTER TABLE contacts DROP CONSTRAINT contacts_user_id_fkey; |
| | | ALTER TABLE contacts ADD FOREIGN KEY (user_id) REFERENCES users(user_id) ON DELETE CASCADE ON UPDATE CASCADE; |
| | | ALTER TABLE cache DROP CONSTRAINT cache_user_id_fkey; |
| | | ALTER TABLE cache ADD FOREIGN KEY (user_id) REFERENCES users(user_id) ON DELETE CASCADE ON UPDATE CASCADE; |
| | |
| | | -- RoundCube Webmail initial database structure |
| | | -- Version 0.1-rc1 |
| | | -- Version 0.1 |
| | | -- |
| | | |
| | | -- -------------------------------------------------------- |
| | |
| | | data longtext NOT NULL |
| | | ); |
| | | |
| | | CREATE INDEX ix_cache_user_id ON cache(user_id); |
| | | CREATE INDEX ix_cache_cache_key ON cache(cache_key); |
| | | CREATE INDEX ix_cache_session_id ON cache(session_id); |
| | | CREATE INDEX ix_cache_user_cache_key ON cache(user_id, cache_key); |
| | | |
| | | |
| | | -- -------------------------------------------------------- |
| | |
| | | preferences text NOT NULL default '' |
| | | ); |
| | | |
| | | |
| | | -- -------------------------------------------------------- |
| | | |
| | | -- |
| | |
| | | subject varchar(255) NOT NULL default '', |
| | | "from" varchar(255) NOT NULL default '', |
| | | "to" varchar(255) NOT NULL default '', |
| | | cc varchar(255) NOT NULL default '', |
| | | date datetime NOT NULL default '0000-00-00 00:00:00', |
| | | "cc" varchar(255) NOT NULL default '', |
| | | "date" datetime NOT NULL default '0000-00-00 00:00:00', |
| | | size integer NOT NULL default '0', |
| | | headers text NOT NULL, |
| | | structure text |
| | | ); |
| | | |
| | | CREATE INDEX ix_messages_user_id ON messages(user_id); |
| | | CREATE INDEX ix_messages_cache_key ON messages(cache_key); |
| | | CREATE INDEX ix_messages_idx ON messages(idx); |
| | | CREATE INDEX ix_messages_uid ON messages(uid); |
| | | CREATE INDEX ix_messages_user_cache_uid ON messages(user_id,cache_key,uid); |
| | |
| | | -- RoundCube Webmail update script for SQLite databases |
| | | -- Updates from version 0.1-beta2 and older |
| | | -- Updates from version 0.1-stable to 0.1.1 |
| | | |
| | | DROP TABLE messages; |
| | | |
| | |
| | | subject varchar(255) NOT NULL default '', |
| | | "from" varchar(255) NOT NULL default '', |
| | | "to" varchar(255) NOT NULL default '', |
| | | cc varchar(255) NOT NULL default '', |
| | | date datetime NOT NULL default '0000-00-00 00:00:00', |
| | | "cc" varchar(255) NOT NULL default '', |
| | | "date" datetime NOT NULL default '0000-00-00 00:00:00', |
| | | size integer NOT NULL default '0', |
| | | headers text NOT NULL, |
| | | structure text |
| | | ); |
| | | |
| | | CREATE INDEX ix_messages_user_id ON messages(user_id); |
| | | CREATE INDEX ix_messages_cache_key ON messages(cache_key); |
| | | CREATE INDEX ix_messages_idx ON messages(idx); |
| | | CREATE INDEX ix_messages_uid ON messages(uid); |
| | | CREATE INDEX ix_messages_user_cache_uid ON messages(user_id,cache_key,uid); |
| | |
| | | $rcmail_config = array(); |
| | | |
| | | // PEAR database DSN for read/write operations |
| | | // format is db_provider://user:password@host/databse |
| | | // format is db_provider://user:password@host/database |
| | | // currently supported db_providers: mysql, mysqli, pgsql, sqlite, mssql |
| | | |
| | | $rcmail_config['db_dsnw'] = 'mysql://roundcube:pass@localhost/roundcubemail'; |
| | |
| | | // 0 = ask the user, 1 = send automatically, 2 = ignore (never send or ask) |
| | | $rcmail_config['mdn_requests'] = 0; |
| | | |
| | | // Use this charset as fallback for message decoding |
| | | $rcmail_config['default_charset'] = 'ISO-8859-1'; |
| | | |
| | | // Make use of the built-in spell checker. It is based on GoogieSpell. |
| | | // Since Google only accepts connections over https your PHP installatation |
| | | // requires to be compiled with Open SSL support |
| | |
| | | // path to a text file which will be added to each sent message |
| | | // paths are relative to the RoundCube root folder |
| | | $rcmail_config['generic_message_footer'] = ''; |
| | | |
| | | // add a received header to outgoing mails containing the creators IP and hostname |
| | | $rcmail_config['http_received_header'] = false; |
| | | |
| | | // this string is used as a delimiter for message headers when sending |
| | | // leave empty for auto-detection |
| | |
| | | $rcmail_config['javascript_config'] = array('read_when_deleted', 'flag_for_deletion'); |
| | | |
| | | // try to load host-specific configuration |
| | | $rcmail_config['include_host_config'] = FALSE; |
| | | $rcmail_config['include_host_config'] = false; |
| | | |
| | | // THIS OPTION WILL ALLOW THE INSTALLER TO RUN AND CAN EXPOSE SENSITIVE CONFIG DATA. |
| | | // ONLY ENABLE IT IF YOU'RE REALLY SURE WHAT YOU'RE DOING! |
| | | $rcmail_config['enable_installer'] = false; |
| | | |
| | | |
| | | /***** these settings can be overwritten by user's preferences *****/ |
| | |
| | | /* |
| | | +-----------------------------------------------------------------------+ |
| | | | RoundCube Webmail IMAP Client | |
| | | | Version 0.1-stable | |
| | | | Version 0.1.1 | |
| | | | | |
| | | | Copyright (C) 2005-2007, RoundCube Dev. - Switzerland | |
| | | | Copyright (C) 2005-2008, RoundCube Dev. - Switzerland | |
| | | | Licensed under the GNU GPL | |
| | | | | |
| | | | Redistribution and use in source and binary forms, with or without | |
| | |
| | | */ |
| | | |
| | | // application constants |
| | | define('RCMAIL_VERSION', '0.1'); |
| | | define('RCMAIL_VERSION', '0.1.1'); |
| | | define('RCMAIL_CHARSET', 'UTF-8'); |
| | | define('JS_OBJECT_NAME', 'rcmail'); |
| | | |
| | |
| | | if ($_action != 'get' && $_action != 'viewsource') |
| | | { |
| | | // use gzip compression if supported |
| | | if (function_exists('ob_gzhandler') && !ini_get('zlib.output_compression')) |
| | | if (function_exists('ob_gzhandler') |
| | | && !ini_get('zlib.output_compression') |
| | | && ini_get('output_handler') != 'ob_gzhandler') |
| | | { |
| | | ob_start('ob_gzhandler'); |
| | | } |
| | | else |
| | | ob_start(); |
| | | } |
| | |
| | | $OUTPUT->show_message("cookiesdisabled", 'warning'); |
| | | } |
| | | else if ($_SESSION['temp'] && !empty($_POST['_user']) && isset($_POST['_pass']) && |
| | | rcmail_login(get_input_value('_user', RCUBE_INPUT_POST), |
| | | rcmail_login(trim(get_input_value('_user', RCUBE_INPUT_POST), ' '), |
| | | get_input_value('_pass', RCUBE_INPUT_POST, true, 'ISO-8859-1'), $host)) |
| | | { |
| | | // create new session ID |
| | |
| | | if (empty($USER->ID)) |
| | | { |
| | | // check if installer is still active |
| | | if (is_file('./installer/index.php')) |
| | | if ($CONFIG['enable_installer'] && is_readable('./installer/index.php')) |
| | | $OUTPUT->add_footer(' |
| | | <div style="background:#ef9398; border:2px solid #dc5757; padding:0.5em; margin:2em auto; width:50em"> |
| | | <h2 style="margin-top:0.2em">Installer script is still accessible</h2> |
| | |
| | | <form action="index.php" method="get"> |
| | | <?php |
| | | |
| | | $required_php_exts = array('PCRE' => 'pcre', 'Session' => 'session', 'Sockets' => 'sockets'); |
| | | $required_php_exts = array('PCRE' => 'pcre', 'Session' => 'session'); |
| | | |
| | | $optional_php_exts = array('FileInfo' => 'fileinfo', 'Libiconv' => 'iconv', |
| | | 'Multibyte' => 'mbstring', 'OpenSSL' => 'openssl', 'Mcrypt' => 'mcrypt', 'GD' => 'gd'); |
| | |
| | | <h3>Checking PHP version</h3> |
| | | <?php |
| | | |
| | | if (phpversion() > 4.3) { |
| | | $RCI->pass('Version', 'PHP ' . phpversion() . ' detected'); |
| | | define('MIN_PHP_VERSION', '4.3.1'); |
| | | if (version_compare(PHP_VERSION, MIN_PHP_VERSION, '>=')) { |
| | | $RCI->pass('Version', 'PHP ' . PHP_VERSION . ' detected'); |
| | | } |
| | | else { |
| | | $RCI->fail('Version', 'PHP Version 4.3.1 or greater is required'); |
| | | $RCI->fail('Version', 'PHP Version ' . MIN_PHP_VERSION . ' or greater is required ' . PHP_VERSION . ' detected'); |
| | | } |
| | | |
| | | ?> |
| | | |
| | | <h3>Checking PHP extensions</h3> |
| | |
| | | |
| | | ?> |
| | | |
| | | <p class="hint">These extensions are <em>optional</em> but recommended to get the best performance:</p> |
| | | <p class="hint">The next couple of extensions are <em>optional</em> but recommended to get the best performance:</p> |
| | | <?php |
| | | |
| | | foreach ($optional_php_exts AS $name => $ext) { |
| | |
| | | 'htmleditor' => 1, |
| | | ); |
| | | |
| | | // allow the current user to get to the next step |
| | | $_SESSION['allowinstaller'] = true; |
| | | |
| | | if (!empty($_POST['submit'])) { |
| | | |
| | | echo '<p class="notice">Copy the following configurations and save them in two files (names above the text box)'; |
| | | echo ' within the <tt>config/</tt> directory of your RoundCube installation.</p>'; |
| | | echo ' within the <tt>config/</tt> directory of your RoundCube installation.<br/>'; |
| | | echo ' Make sure that there are no characters outside the <tt><?php ?></tt> brackets when saving the files.</p>'; |
| | | |
| | | $textbox = new textarea(array('rows' => 16, 'cols' => 60, 'class' => "configfile")); |
| | | |
| | |
| | | |
| | | <div id="content"> |
| | | |
| | | <h1>RoundCube Webmail Installer</h1> |
| | | |
| | | <?php |
| | | |
| | | ini_set('error_reporting', E_ALL&~E_NOTICE); |
| | | ini_set('display_errors', 1); |
| | | |
| | | session_start(); |
| | | |
| | | $docroot = realpath(dirname(__FILE__) . '/../'); |
| | | $include_path = $docroot . '/program/lib' . PATH_SEPARATOR . $docroot . '/program' . PATH_SEPARATOR . ini_get('include_path'); |
| | |
| | | require_once 'rcube_install.php'; |
| | | $RCI = rcube_install::get_instance(); |
| | | $RCI->load_config(); |
| | | |
| | | // exit if installation is complete |
| | | if ($RCI->configured && !$RCI->getprop('enable_installer') && !$_SESSION['allowinstaller']) { |
| | | header("HTTP/1.0 404 Not Found"); |
| | | echo '<h2 class="error">The installer is disabled!</h2>'; |
| | | echo '<p>To enable it again, set <tt>$rcmail_config[\'enable_installer\'] = true;</tt> in config/main.inc.php</p>'; |
| | | echo '</div></body></html>'; |
| | | exit; |
| | | } |
| | | |
| | | ?> |
| | | |
| | | <h1>RoundCube Webmail Installer</h1> |
| | | |
| | | <ol id="progress"> |
| | | <?php |
| | |
| | | </ol> |
| | | |
| | | <?php |
| | | |
| | | $include_steps = array('welcome.html', 'check.php', 'config.php', 'test.php'); |
| | | |
| | | if ($include_steps[$RCI->step]) { |
| | |
| | | $out); |
| | | } |
| | | |
| | | return $out; |
| | | return trim($out); |
| | | } |
| | | |
| | | |
| | |
| | | if (eregi(';$', trim($line))) { |
| | | $DB->query($buff); |
| | | $buff = ''; |
| | | if ($this->get_error()) |
| | | break; |
| | | } |
| | | } |
| | | } |
| | |
| | | |
| | | ?> |
| | | |
| | | <h3>Check if directories are writable</h3> |
| | | <p>RoundCube may need to write/save files into these directories</p> |
| | | <?php |
| | | |
| | | if ($RCI->configured) { |
| | | $pass = false; |
| | | foreach (array($RCI->config['temp_dir'],$RCI->config['log_dir']) as $dir) { |
| | | $dirpath = $dir{0} == '/' ? $dir : $docroot . '/' . $dir; |
| | | if (is_writable(realpath($dirpath))) { |
| | | $RCI->pass($dir); |
| | | $pass = true; |
| | | } |
| | | else { |
| | | $RCI->fail($dir, 'not writeable for the webserver'); |
| | | } |
| | | echo '<br />'; |
| | | } |
| | | |
| | | if (!$pass) |
| | | echo '<p class="hint">Use <tt>chmod</tt> or <tt>chown</tt> to grant write privileges to the webserver</p>'; |
| | | } |
| | | else { |
| | | $RCI->fail('Config', 'Could not read config files'); |
| | | } |
| | | |
| | | ?> |
| | | |
| | | <h3>Check configured database settings</h3> |
| | | <?php |
| | | |
| | | $db_working = false; |
| | | if (!empty($RCI->config)) { |
| | | if ($RCI->configured) { |
| | | if (!empty($RCI->config['db_backend']) && !empty($RCI->config['db_dsnw'])) { |
| | | |
| | | echo 'Backend: '; |
| | |
| | | } |
| | | else { |
| | | $RCI->fail('DSN (write)', $db_error_msg); |
| | | echo '<p class="hint">Make sure that the configured database extists and that the user as write privileges<br />'; |
| | | echo '<p class="hint">Make sure that the configured database exists and that the user has write privileges<br />'; |
| | | echo 'DSN: ' . $RCI->config['db_dsnw'] . '</p>'; |
| | | if ($RCI->config['db_backend'] == 'mdb2') |
| | | echo '<p class="hint">There are known problems with MDB2 running on PHP 4. Try setting <tt>db_backend</tt> to \'db\' instead</p>'; |
| | |
| | | // more database tests |
| | | if ($db_working) { |
| | | // write test |
| | | $db_write = $DB->query("INSERT INTO {$RCI->config['db_table_cache']} (session_id, cache_key, data, user_id) VALUES (?, ?, ?, 0)", '1234567890abcdef', 'test', 'test'); |
| | | $insert_id = $DB->insert_id($RCI->config['db_sequence_cache']); |
| | | |
| | | if ($db_write && $insert_id) { |
| | | $insert_id = md5(uniqid()); |
| | | $db_write = $DB->query("INSERT INTO {$RCI->config['db_table_session']} (sess_id, created, ip, vars) VALUES (?, ".$DB->now().", '127.0.0.1', 'foo')", $insert_id); |
| | | |
| | | if ($db_write) { |
| | | $RCI->pass('DB Write'); |
| | | $DB->query("DELETE FROM {$RCI->config['db_table_cache']} WHERE cache_id=?", $insert_id); |
| | | $DB->query("DELETE FROM {$RCI->config['db_table_session']} WHERE sess_id=?", $insert_id); |
| | | } |
| | | else { |
| | | $RCI->fail('DB Write', $RCI->get_error()); |
| | |
| | | $pass = $RCI->getprop('smtp_pass', '(none)'); |
| | | |
| | | if ($user == '%u') { |
| | | $user_field = new textfield(array('name' => '_user')); |
| | | $user = $user_field->show($_POST['_user']); |
| | | $user_field = new textfield(array('name' => '_smtp_user')); |
| | | $user = $user_field->show($_POST['_smtp_user']); |
| | | } |
| | | if ($pass == '%p') { |
| | | $pass_field = new passwordfield(array('name' => '_pass')); |
| | | $pass_field = new passwordfield(array('name' => '_smtp_pass')); |
| | | $pass = $pass_field->show(); |
| | | } |
| | | |
| | |
| | | preg_match('/^' . $RCI->email_pattern . '$/i', trim($_POST['_to']))) { |
| | | |
| | | $headers = array( |
| | | 'From' => trim($_POST['_from']), |
| | | 'To' => trim($_POST['_to']), |
| | | 'From' => trim($_POST['_from']), |
| | | 'To' => trim($_POST['_to']), |
| | | 'Subject' => 'Test message from RoundCube', |
| | | ); |
| | | |
| | |
| | | if ($RCI->getprop('smtp_server')) { |
| | | $CONFIG = $RCI->config; |
| | | |
| | | if (!empty($_POST['_user'])) |
| | | $CONFIG['smtp_user'] = $_POST['_user']; |
| | | if (!empty($_POST['_pass'])) |
| | | $CONFIG['smtp_pass'] = $_POST['_pass']; |
| | | |
| | | if (!empty($_POST['_smtp_user'])) { |
| | | $CONFIG['smtp_user'] = $_POST['_smtp_user']; |
| | | } |
| | | if (!empty($_POST['_smtp_pass'])) { |
| | | $CONFIG['smtp_pass'] = $_POST['_smtp_pass']; |
| | | } |
| | | |
| | | $mail_object = new rc_mail_mime(); |
| | | $send_headers = $mail_object->headers($headers); |
| | | |
| | |
| | | <ul> |
| | | <li>PCRE (perl compatible regular expression)</li> |
| | | <li>Session support</li> |
| | | <li>Sockets enabled</li> |
| | | <li>Libiconv (recommended)</li> |
| | | <li>OpenSSL (recommended)</li> |
| | | <li>FileInfo (optional)</li> |
| | |
| | | |
| | | $DB = new $dbclass($CONFIG['db_dsnw'], $CONFIG['db_dsnr'], $CONFIG['db_persistent']); |
| | | $DB->sqlite_initials = $INSTALL_PATH.'SQL/sqlite.initial.sql'; |
| | | $DB->set_debug((bool)$CONFIG['sql_debug']); |
| | | $DB->db_connect('w'); |
| | | |
| | | // use database for storing session data |
| | |
| | | function rcmail_set_imap_prop() |
| | | { |
| | | global $CONFIG, $IMAP; |
| | | |
| | | if (!empty($CONFIG['default_charset'])) |
| | | $IMAP->set_charset($CONFIG['default_charset']); |
| | | |
| | | // set root dir from config |
| | | if (!empty($CONFIG['imap_root'])) |
| | |
| | | 'X-USER-DEFINED' => 'ISO-8859-15', |
| | | 'ISO-8859-8-I' => 'ISO-8859-8', |
| | | 'KS_C_5601-1987' => 'EUC-KR', |
| | | 'GB2312' => 'GB18030' |
| | | ); |
| | | |
| | | // convert charset using iconv module |
| | | if (function_exists('iconv') && $from != 'UTF-7' && $to != 'UTF-7') |
| | | { |
| | | $aliases['GB2312'] = 'GB18030'; |
| | | return iconv(($aliases[$from] ? $aliases[$from] : $from), ($aliases[$to] ? $aliases[$to] : $to) . "//IGNORE", $str); |
| | | } |
| | | |
| | | // convert charset using mbstring module |
| | | if ($MBSTRING) |
| | | { |
| | | $mb_map = $aliases + array('UTF-7' => 'UTF7-IMAP'); |
| | | $aliases['UTF-7'] = 'UTF7-IMAP'; |
| | | $aliases['WINDOWS-1257'] = 'ISO-8859-13'; |
| | | |
| | | // return if convert succeeded |
| | | if (($out = mb_convert_encoding($str, ($mb_map[$to] ? $mb_map[$to] : $to), ($mb_map[$from] ? $mb_map[$from] : $from))) != '') |
| | | if (($out = mb_convert_encoding($str, ($aliases[$to] ? $aliases[$to] : $to), ($aliases[$from] ? $aliases[$from] : $from))) != '') |
| | | return $out; |
| | | } |
| | | |
| | |
| | | |
| | | /** |
| | | * Replace all css definitions with #container [def] |
| | | * and remove css-inlined scripting |
| | | * |
| | | * @param string CSS source code |
| | | * @param string Container ID to use as prefix |
| | |
| | | { |
| | | $a_css_values = array(); |
| | | $last_pos = 0; |
| | | |
| | | // ignore the whole block if evil styles are detected |
| | | if (stristr($source, 'expression') || stristr($source, 'behavior')) |
| | | return ''; |
| | | |
| | | // cut out all contents between { and } |
| | | while (($pos = strpos($source, '{', $last_pos)) && ($pos2 = strpos($source, '}', $pos))) |
| | |
| | | $last_pos = $pos+2; |
| | | } |
| | | |
| | | // remove html commends and add #container to each tag selector. |
| | | // remove html comments and add #container to each tag selector. |
| | | // also replace body definition because we also stripped off the <body> tag |
| | | $styles = preg_replace( |
| | | array( |
| | |
| | | function format_email_recipient($email, $name='') |
| | | { |
| | | if ($name && $name != $email) |
| | | return sprintf('%s <%s>', strpos($name, ",") ? '"'.$name.'"' : $name, $email); |
| | | { |
| | | // Special chars as defined by RFC 822 need to in quoted string (or escaped). |
| | | return sprintf('%s <%s>', preg_match('/[\(\)\<\>\\\.\[\]@,;:"]/', $name) ? '"'.addcslashes($name, '"').'"' : $name, $email); |
| | | } |
| | | else |
| | | return $email; |
| | | } |
| | |
| | | $foldername = $fname; |
| | | } |
| | | } |
| | | |
| | | // add unread message count display |
| | | if ($unread_count = $IMAP->messagecount($folder['id'], 'RECENT', ($folder['id']==$mbox_name))) |
| | | $foldername .= sprintf(' (%d)', $unread_count); |
| | | |
| | | // make folder name safe for ids and class names |
| | | $folder_id = preg_replace('/[^A-Za-z0-9\-_]/', '', $folder['id']); |
| | |
| | | $this->db_handle = $this->dsn_connect($dsn); |
| | | $this->db_connected = $this->db_handle ? TRUE : FALSE; |
| | | } |
| | | |
| | | |
| | | /** |
| | | * Activate/deactivate debug mode |
| | | * (not implemented) |
| | | */ |
| | | function set_debug($dbg = true) |
| | | { |
| | | |
| | | |
| | | } |
| | | |
| | | |
| | | /** |
| | | * Getter for error state |
| | | * |
| | |
| | | var $sort_order = 'DESC'; |
| | | var $delimiter = NULL; |
| | | var $caching_enabled = FALSE; |
| | | var $default_charset = 'ISO-8859-1'; |
| | | var $default_folders = array('INBOX'); |
| | | var $default_folders_lc = array('inbox'); |
| | | var $cache = array(); |
| | |
| | | |
| | | if (empty($this->delimiter)) |
| | | $this->get_hierarchy_delimiter(); |
| | | } |
| | | |
| | | |
| | | /** |
| | | * Set default message charset |
| | | * |
| | | * This will be used for message decoding if a charset specification is not available |
| | | * |
| | | * @param string Charset string |
| | | * @access public |
| | | */ |
| | | function set_charset($cs) |
| | | { |
| | | $this->default_charset = $ch; |
| | | } |
| | | |
| | | |
| | |
| | | |
| | | // normalize filename property |
| | | if ($filename_mime = $struct->d_parameters['filename'] ? $struct->d_parameters['filename'] : $struct->ctype_parameters['name']) |
| | | $struct->filename = $this->decode_mime_string($filename_mime); |
| | | $struct->filename = rcube_imap::decode_mime_string($filename_mime, $this->default_charset); |
| | | else if ($filename_encoded = $struct->d_parameters['filename*'] ? $struct->d_parameters['filename*'] : $struct->ctype_parameters['name*']) |
| | | { |
| | | // decode filename according to RFC 2231, Section 4 |
| | |
| | | $struct->filename = rcube_charset_convert(urldecode($filename_urlencoded), $filename_charset); |
| | | } |
| | | else if (!empty($struct->headers['content-description'])) |
| | | $struct->filename = $this->decode_mime_string($struct->headers['content-description']); |
| | | $struct->filename = rcube_imap::decode_mime_string($struct->headers['content-description'], $this->default_charset); |
| | | |
| | | return $struct; |
| | | } |
| | |
| | | // convert charset (if text or message part) |
| | | if ($o_part->ctype_primary=='text' || $o_part->ctype_primary=='message') |
| | | { |
| | | // assume ISO-8859-1 if no charset specified |
| | | // assume default if no charset specified |
| | | if (empty($o_part->charset)) |
| | | $o_part->charset = 'ISO-8859-1'; |
| | | $o_part->charset = $this->default_charset; |
| | | |
| | | $body = rcube_charset_convert($body, $o_part->charset); |
| | | } |
| | |
| | | /** |
| | | * Subscribe to a specific mailbox(es) |
| | | * |
| | | * @param string Mailbox name(s) |
| | | * @param array Mailbox name(s) |
| | | * @return boolean True on success |
| | | */ |
| | | function subscribe($mbox_name) |
| | | function subscribe($a_mboxes) |
| | | { |
| | | if (is_array($mbox_name)) |
| | | $a_mboxes = $mbox_name; |
| | | else if (is_string($mbox_name) && strlen($mbox_name)) |
| | | $a_mboxes = explode(',', $mbox_name); |
| | | |
| | | if (!is_array($a_mboxes)) |
| | | $a_mboxes = array($a_mboxes); |
| | | |
| | | // let this common function do the main work |
| | | return $this->_change_subscription($a_mboxes, 'subscribe'); |
| | | } |
| | |
| | | /** |
| | | * Unsubscribe mailboxes |
| | | * |
| | | * @param string Mailbox name(s) |
| | | * @param array Mailbox name(s) |
| | | * @return boolean True on success |
| | | */ |
| | | function unsubscribe($mbox_name) |
| | | function unsubscribe($a_mboxes) |
| | | { |
| | | if (is_array($mbox_name)) |
| | | $a_mboxes = $mbox_name; |
| | | else if (is_string($mbox_name) && strlen($mbox_name)) |
| | | $a_mboxes = explode(',', $mbox_name); |
| | | if (!is_array($a_mboxes)) |
| | | $a_mboxes = array($a_mboxes); |
| | | |
| | | // let this common function do the main work |
| | | return $this->_change_subscription($a_mboxes, 'unsubscribe'); |
| | |
| | | */ |
| | | function remove_message_cache($key, $index) |
| | | { |
| | | if (!$this->caching_enabled) |
| | | return; |
| | | |
| | | $this->db->query( |
| | | "DELETE FROM ".get_table_name('messages')." |
| | | WHERE user_id=? |
| | |
| | | */ |
| | | function clear_message_cache($key, $start_index=1) |
| | | { |
| | | if (!$this->caching_enabled) |
| | | return; |
| | | |
| | | $this->db->query( |
| | | "DELETE FROM ".get_table_name('messages')." |
| | | WHERE user_id=? |
| | |
| | | { |
| | | $a = $this->_parse_address_list($input, $decode); |
| | | $out = array(); |
| | | // Special chars as defined by RFC 822 need to in quoted string (or escaped). |
| | | $special_chars = '[\(\)\<\>\\\.\[\]@,;:"]'; |
| | | |
| | | if (!is_array($a)) |
| | | return $out; |
| | |
| | | $address = $val['address']; |
| | | $name = preg_replace(array('/^[\'"]/', '/[\'"]$/'), '', trim($val['name'])); |
| | | if ($name && $address && $name != $address) |
| | | $string = sprintf('%s <%s>', strpos($name, ',')!==FALSE ? '"'.$name.'"' : $name, $address); |
| | | $string = sprintf('%s <%s>', preg_match("/$special_chars/", $name) ? '"'.addcslashes($name, '"').'"' : $name, $address); |
| | | else if ($address) |
| | | $string = $address; |
| | | else if ($name) |
| | |
| | | */ |
| | | function decode_header($input, $remove_quotes=FALSE) |
| | | { |
| | | $str = $this->decode_mime_string((string)$input); |
| | | $str = rcube_imap::decode_mime_string((string)$input, $this->default_charset); |
| | | if ($str{0}=='"' && $remove_quotes) |
| | | $str = str_replace('"', '', $str); |
| | | |
| | |
| | | $pos = strpos($input, '=?'); |
| | | if ($pos !== false) |
| | | { |
| | | // rfc: all line breaks or other characters not found in the Base64 Alphabet must be ignored by decoding software |
| | | // delete all blanks between MIME-lines, differently we can receive unnecessary blanks and broken utf-8 symbols |
| | | $input = preg_replace("/\?=\s+=\?/", '?==?', $input); |
| | | |
| | | $out = substr($input, 0, $pos); |
| | | |
| | | $end_cs_pos = strpos($input, "?", $pos+2); |
| | |
| | | return rcube_charset_convert($body, $ctype_param['charset']); |
| | | |
| | | // defaults to what is specified in the class header |
| | | return rcube_charset_convert($body, 'ISO-8859-1'); |
| | | return rcube_charset_convert($body, $this->default_charset); |
| | | } |
| | | |
| | | |
| | |
| | | */ |
| | | function bind($dn, $pass) |
| | | { |
| | | if (!$this->conn) |
| | | if (!$this->conn) { |
| | | return false; |
| | | } |
| | | |
| | | if (@ldap_bind($this->conn, $dn, $pass)) |
| | | if (ldap_bind($this->conn, $dn, $pass)) { |
| | | return true; |
| | | else |
| | | { |
| | | raise_error(array( |
| | | } |
| | | |
| | | raise_error(array( |
| | | 'code' => ldap_errno($this->conn), |
| | | 'type' => 'ldap', |
| | | 'message' => "Bind failed for dn=$dn: ".ldap_error($this->conn)), |
| | | true); |
| | | } |
| | | |
| | | true); |
| | | |
| | | return false; |
| | | } |
| | | |
| | |
| | | var $db_handle = 0; // Connection handle |
| | | var $db_error = false; |
| | | var $db_error_msg = ''; |
| | | var $debug_mode = false; |
| | | |
| | | var $a_query_results = array('dummy'); |
| | | var $last_res_id = 0; |
| | |
| | | function dsn_connect($dsn) |
| | | { |
| | | // Use persistent connections if available |
| | | $dbh = MDB2::connect($dsn, |
| | | array('persistent' => $this->db_pconn, |
| | | $dbh = MDB2::connect($dsn, array( |
| | | 'persistent' => $this->db_pconn, |
| | | 'emulate_prepared' => $this->debug_mode, |
| | | 'debug' => $this->debug_mode, |
| | | 'debug_handler' => 'mdb2_debug_handler', |
| | | 'portability' => MDB2_PORTABILITY_ALL ^ MDB2_PORTABILITY_EMPTY_TO_NULL)); |
| | | |
| | | if (MDB2::isError($dbh)) |
| | |
| | | $this->db_connected = true; |
| | | } |
| | | |
| | | |
| | | /** |
| | | * Activate/deactivate debug mode |
| | | * |
| | | * @param boolean True if SQL queries should be logged |
| | | */ |
| | | function set_debug($dbg = true) |
| | | { |
| | | $this->debug_mode = $dbg; |
| | | if ($this->db_connected) |
| | | { |
| | | $this->db_handle->setOption('debug', $dbg); |
| | | $this->db_handle->setOption('emulate_prepared', $dbg); |
| | | } |
| | | } |
| | | |
| | | |
| | | /** |
| | |
| | | return $this->db_handle->quoteIdentifier($str); |
| | | } |
| | | |
| | | /** |
| | | * Escapes a string |
| | | * |
| | | * @param string The string to be escaped |
| | | * @return string The escaped string |
| | | * @access public |
| | | * @since 0.1.1 |
| | | */ |
| | | function escapeSimple($str) |
| | | { |
| | | if (!$this->db_handle) |
| | | $this->db_connect('r'); |
| | | |
| | | return $this->db_handle->escape($str); |
| | | } |
| | | |
| | | |
| | | /** |
| | | * Return SQL function for current time and date |
| | |
| | | |
| | | } // end class rcube_db |
| | | |
| | | |
| | | /* this is our own debug handler for the MDB2 connection */ |
| | | function mdb2_debug_handler(&$db, $scope, $message, $context = array()) |
| | | { |
| | | if ($scope != 'prepare') |
| | | { |
| | | $debug_output = $scope . '('.$db->db_index.'): '; |
| | | $debug_output .= $message . $db->getOption('log_line_break'); |
| | | write_log('sqllog', $debug_output); |
| | | } |
| | | } |
| | | |
| | | |
| | | ?> |
| | |
| | | header("Etag: $etag"); |
| | | |
| | | if ($iscached) |
| | | { |
| | | ob_end_clean(); |
| | | exit; |
| | | } |
| | | } |
| | | |
| | | |
| | |
| | | |
| | | // try to resolve user in virtusertable |
| | | if (!empty($CONFIG['virtuser_file']) && !strpos($user, '@')) |
| | | $user_email = self::user2email($user); |
| | | $user_email = rcube_user::user2email($user); |
| | | |
| | | $DB->query( |
| | | "INSERT INTO ".get_table_name('users')." |
| | |
| | | $arr = preg_split('/\s+/', $data); |
| | | if (count($arr) > 0) |
| | | { |
| | | $email = trim($arr[0]); |
| | | $email = trim(str_replace('\\@', '@', $arr[0])); |
| | | break; |
| | | } |
| | | } |
| | |
| | | this.message_list.addEventListener('dblclick', function(o){ p.msglist_dbl_click(o); }); |
| | | this.message_list.addEventListener('keypress', function(o){ p.msglist_keypress(o); }); |
| | | this.message_list.addEventListener('select', function(o){ p.msglist_select(o); }); |
| | | this.message_list.addEventListener('dragstart', function(o){ p.drag_active = true; }); |
| | | this.message_list.addEventListener('dragstart', function(o){ p.drag_active = true; if (p.preview_timer) clearTimeout(p.preview_timer); }); |
| | | this.message_list.addEventListener('dragend', function(o){ p.drag_active = false; }); |
| | | |
| | | this.message_list.init(); |
| | |
| | | } |
| | | |
| | | if (this.env.messagecount) |
| | | this.enable_command('select-all', 'select-none', 'sort', 'expunge', true); |
| | | this.enable_command('select-all', 'select-none', 'expunge', true); |
| | | |
| | | if (this.env.messagecount && (this.env.mailbox==this.env.trash_mailbox || this.env.mailbox==this.env.junk_mailbox)) |
| | | this.enable_command('purge', true); |
| | |
| | | var input_user = rcube_find_object('rcmloginuser'); |
| | | var input_pass = rcube_find_object('rcmloginpwd'); |
| | | if (input_user) |
| | | input_user.onkeypress = function(e){ return rcmail.login_user_keypress(e); }; |
| | | input_user.onkeyup = function(e){ return rcmail.login_user_keyup(e); }; |
| | | if (input_user && input_user.value=='') |
| | | input_user.focus(); |
| | | else if (input_pass) |
| | |
| | | break; |
| | | |
| | | case 'load-attachment': |
| | | var qstring = '_mbox='+this.env.mailbox+'&_uid='+this.env.uid+'&_part='+props.part; |
| | | var qstring = '_mbox='+urlencode(this.env.mailbox)+'&_uid='+this.env.uid+'&_part='+props.part; |
| | | |
| | | // open attachment in frame if it's of a supported mimetype |
| | | if (this.env.uid && props.mimetype && find_in_array(props.mimetype, this.mimetypes)>=0) |
| | |
| | | { |
| | | setTimeout(function(){ ref.printwin.focus(); }, 20); |
| | | if (this.env.action != 'show') |
| | | this.toggle_read_status('read', [uid]); |
| | | this.mark_message('read', uid); |
| | | } |
| | | } |
| | | break; |
| | |
| | | } |
| | | |
| | | // start timer for message preview (wait for double click) |
| | | if (selected && this.env.contentframe) |
| | | if (selected && this.env.contentframe && !list.multi_selecting) |
| | | this.preview_timer = setTimeout(function(){ ref.msglist_get_preview(); }, this.dblclick_time + 10); |
| | | else if (this.env.contentframe) |
| | | this.show_contentframe(false); |
| | |
| | | this.mark_message = function(flag, uid) |
| | | { |
| | | var a_uids = new Array(); |
| | | var r_uids = new Array(); |
| | | var selection = this.message_list ? this.message_list.get_selection() : new Array(); |
| | | |
| | | if (uid) |
| | |
| | | { |
| | | for (var id, n=0; n<selection.length; n++) |
| | | { |
| | | id = selection[n]; |
| | | if ((flag=='read' && this.message_list.rows[id].unread) || (flag=='unread' && !this.message_list.rows[id].unread) |
| | | || (flag=='delete' && !this.message_list.rows[id].deleted) || (flag=='undelete' && this.message_list.rows[id].deleted)) |
| | | a_uids[a_uids.length] = id; |
| | | a_uids[a_uids.length] = selection[n]; |
| | | } |
| | | } |
| | | |
| | | for (var id, n=0; n<a_uids.length; n++) |
| | | { |
| | | id = a_uids[n]; |
| | | if ((flag=='read' && this.message_list.rows[id].unread) |
| | | || (flag=='unread' && !this.message_list.rows[id].unread) |
| | | || (flag=='delete' && !this.message_list.rows[id].deleted) |
| | | || (flag=='undelete' && this.message_list.rows[id].deleted)) |
| | | { |
| | | r_uids[r_uids.length] = id; |
| | | } |
| | | } |
| | | |
| | | // nothing to do |
| | | if (!a_uids.length) |
| | | if (!r_uids.length) |
| | | return; |
| | | |
| | | switch (flag) |
| | | { |
| | | case 'read': |
| | | case 'unread': |
| | | this.toggle_read_status(flag, a_uids); |
| | | this.toggle_read_status(flag, r_uids); |
| | | break; |
| | | case 'delete': |
| | | case 'undelete': |
| | | this.toggle_delete_status(a_uids); |
| | | this.toggle_delete_status(r_uids); |
| | | break; |
| | | } |
| | | }; |
| | |
| | | rows[uid].icon.src = icn_src; |
| | | } |
| | | } |
| | | |
| | | |
| | | this.http_post('mark', '_uid='+a_uids.join(',')+'&_flag='+flag); |
| | | }; |
| | | |
| | |
| | | this.toggle_delete_status = function(a_uids) |
| | | { |
| | | if (this.env.read_when_deleted) |
| | | this.toggle_read_status('read',a_uids); |
| | | this.mark_message('read',a_uids); |
| | | |
| | | // if deleting message from "view message" don't bother with delete icon |
| | | if (this.env.action == "show") |
| | |
| | | /*********************************************************/ |
| | | |
| | | // handler for keyboard events on the _user field |
| | | this.login_user_keypress = function(e) |
| | | this.login_user_keyup = function(e) |
| | | { |
| | | var key = rcube_event.get_keycode(e); |
| | | var elm; |
| | |
| | | // reset vars |
| | | this.env.current_page = 1; |
| | | this.set_busy(true, 'searching'); |
| | | this.http_request('search', '_q='+urlencode(value)+(this.env.mailbox ? '&_mbox='+this.env.mailbox : '')+(this.env.source ? '&_source='+urlencode(this.env.source) : ''), true); |
| | | this.http_request('search', '_q='+urlencode(value)+(this.env.mailbox ? '&_mbox='+urlencode(this.env.mailbox) : '')+(this.env.source ? '&_source='+urlencode(this.env.source) : ''), true); |
| | | } |
| | | return true; |
| | | }; |
| | |
| | | { |
| | | this.http_post('delete-folder', '_mboxes='+urlencode(folder)); |
| | | this.set_env('folder', null); |
| | | |
| | | if (this.gui_objects.createfolderhint) |
| | | this.gui_objects.createfolderhint.innerHTML = ''; |
| | | |
| | | } |
| | | }; |
| | | |
| | |
| | | |
| | | this.subscribe_folder = function(folder) |
| | | { |
| | | var form; |
| | | if ((form = this.gui_objects.editform) && form.elements['_unsubscribed']) |
| | | this.change_subscription('_unsubscribed', '_subscribed', 'subscribe'); |
| | | else if (folder) |
| | | this.http_post('subscribe', '_mboxes='+urlencode(folder)); |
| | | if (folder) |
| | | this.http_post('subscribe', '_mbox='+urlencode(folder)); |
| | | }; |
| | | |
| | | |
| | | this.unsubscribe_folder = function(folder) |
| | | { |
| | | var form; |
| | | if ((form = this.gui_objects.editform) && form.elements['_subscribed']) |
| | | this.change_subscription('_subscribed', '_unsubscribed', 'unsubscribe'); |
| | | else if (folder) |
| | | this.http_post('unsubscribe', '_mboxes='+urlencode(folder)); |
| | | if (folder) |
| | | this.http_post('unsubscribe', '_mbox='+urlencode(folder)); |
| | | }; |
| | | |
| | | |
| | | this.change_subscription = function(from, to, action) |
| | | { |
| | | var form; |
| | | if (form = this.gui_objects.editform) |
| | | { |
| | | var a_folders = new Array(); |
| | | var list_from = form.elements[from]; |
| | | |
| | | for (var i=0; list_from && i<list_from.options.length; i++) |
| | | { |
| | | if (list_from.options[i] && list_from.options[i].selected) |
| | | { |
| | | a_folders[a_folders.length] = list_from.options[i].value; |
| | | list_from[i] = null; |
| | | i--; |
| | | } |
| | | } |
| | | |
| | | // yes, we have some folders selected |
| | | if (a_folders.length) |
| | | { |
| | | var list_to = form.elements[to]; |
| | | var index; |
| | | |
| | | for (var n=0; n<a_folders.length; n++) |
| | | { |
| | | index = list_to.options.length; |
| | | list_to[index] = new Option(a_folders[n]); |
| | | } |
| | | |
| | | this.http_post(action, '_mboxes='+urlencode(a_folders.join(','))); |
| | | } |
| | | } |
| | | |
| | | }; |
| | | |
| | | // helper method to find a specific mailbox row ID |
| | | this.get_folder_row_id = function(folder) |
| | |
| | | |
| | | case 'list': |
| | | if (this.env.messagecount) |
| | | this.enable_command('purge', (this.env.mailbox==this.env.trash_mailbox || this.env.mailbox==this.env.junk_mailbox)); |
| | | this.msglist_select(this.message_list); |
| | | this.enable_command('purge', (this.env.mailbox==this.env.trash_mailbox || this.env.mailbox==this.env.junk_mailbox)); |
| | | |
| | | this.msglist_select(this.message_list); |
| | | |
| | | case 'getunread': |
| | | this.enable_command('sort', (this.env.messagecount > 0)); |
| | | |
| | | case 'expunge': |
| | | this.enable_command('select-all', 'select-none', 'expunge', this.env.messagecount ? true : false); |
| | | break; |
| | | |
| | | } |
| | | |
| | | request_obj.reset(); |
| | |
| | | this.subject_col = -1; |
| | | this.shiftkey = false; |
| | | this.multiselect = false; |
| | | this.multi_selecting = false; |
| | | this.draggable = false; |
| | | this.keyboard = false; |
| | | this.toggleselect = false; |
| | |
| | | { |
| | | this.shift_start = id; |
| | | this.highlight_row(id, false); |
| | | this.multi_selecting = false; |
| | | } |
| | | else |
| | | { |
| | |
| | | this.highlight_row(id, false); |
| | | break; |
| | | } |
| | | this.multi_selecting = true; |
| | | } |
| | | |
| | | // trigger event if selection changed |
| | |
| | | if (this.selection.join(',') != select_before) |
| | | this.trigger_event('select'); |
| | | |
| | | this.focus(); |
| | | |
| | | return true; |
| | | }, |
| | | |
| | |
| | | { |
| | | if (this.rows[id] && !multiple) |
| | | { |
| | | if (!this.in_selection(id)) |
| | | if (this.selection.length > 1 || !this.in_selection(id)) |
| | | { |
| | | this.clear_selection(); |
| | | this.selection[0] = id; |
New file |
| | |
| | | /* This file contains the CSS data for the editable area(iframe) of TinyMCE */
|
| | | /* You can extend this CSS by adding your own CSS file with the the content_css option */
|
| | |
|
| | | body, td, pre {
|
| | | font-family: Verdana, Arial, Helvetica, sans-serif;
|
| | | font-size: 10px;
|
| | | }
|
| | |
|
| | | body {
|
| | | background-color: #FFFFFF;
|
| | | }
|
| | |
|
| | | .mceVisualAid {
|
| | | border: 1px dashed #BBBBBB !important;
|
| | | }
|
| | |
|
| | | div.mceVisualAid {
|
| | | background-image:url('../images/spacer.gif');
|
| | | visibility: visible !important;
|
| | | }
|
| | |
|
| | | .mceItemAnchor {
|
| | | width: 12px;
|
| | | line-height: 6px;
|
| | | overflow: hidden;
|
| | | padding-left: 12px;
|
| | | background-image: url('../images/anchor_symbol.gif');
|
| | | background-position: bottom;
|
| | | background-repeat: no-repeat;
|
| | | }
|
| | |
|
| | | /* Important is needed in Gecko browsers inorder to style links */
|
| | | /*
|
| | | a {
|
| | | color: green !important;
|
| | | }
|
| | | */
|
| | |
|
| | | /* Style selection range colors in Gecko browsers */
|
| | | /*
|
| | | ::-moz-selection {
|
| | | background-color: red;
|
| | | color: green;
|
| | | }
|
| | | */
|
| | |
|
| | | /* MSIE specific */
|
| | |
|
| | | * html body {
|
| | | scrollbar-3dlight-color: #F0F0EE;
|
| | | scrollbar-arrow-color: #676662;
|
| | | scrollbar-base-color: #F0F0EE;
|
| | | scrollbar-darkshadow-color: #DDDDDD;
|
| | | scrollbar-face-color: #E0E0DD;
|
| | | scrollbar-highlight-color: #F0F0EE;
|
| | | scrollbar-shadow-color: #F0F0EE;
|
| | | scrollbar-track-color: #F5F5F5;
|
| | | }
|
| | |
| | | } |
| | | |
| | | function iil_ReadLine($fp, $size) { |
| | | $line = ''; |
| | | if ($fp) { |
| | | do { |
| | | // FIXME: hardcode size? |
| | | $buffer = fgets($fp, 2048); |
| | | if ($buffer === false) { |
| | | break; |
| | | } |
| | | $line .= $buffer; |
| | | } while ($buffer[strlen($buffer)-1]!="\n"); |
| | | } |
| | | return $line; |
| | | $line = ''; |
| | | if (!$fp) { |
| | | return $line; |
| | | } |
| | | do { |
| | | // FIXME: hardcode size? |
| | | $buffer = fgets($fp, 2048); |
| | | if ($buffer === false) { |
| | | break; |
| | | } |
| | | $line .= $buffer; |
| | | } while ($buffer[strlen($buffer)-1] != "\n"); |
| | | return $line; |
| | | } |
| | | |
| | | function iil_MultLine($fp, $line) { |
| | |
| | | } |
| | | |
| | | function iil_ReadBytes($fp, $bytes) { |
| | | $data = ''; |
| | | $len = 0; |
| | | do { |
| | | $data.=fread($fp, $bytes-$len); |
| | | $len = strlen($data); |
| | | } while ($len<$bytes); |
| | | return $data; |
| | | $data = ''; |
| | | $len = 0; |
| | | do { |
| | | $data .= fread($fp, $bytes-$len); |
| | | if ($len == strlen($data)) { |
| | | break; //nothing was read -> exit to avoid apache lockups |
| | | } |
| | | $len = strlen($data); |
| | | } while ($len < $bytes); |
| | | return $data; |
| | | } |
| | | |
| | | function iil_ReadReply($fp) { |
| | |
| | | while ( list($lines_key, $str) = each($lines) ) { |
| | | list($field, $string) = iil_SplitHeaderLine($str); |
| | | |
| | | $field = strtolower($field); |
| | | $field = strtolower($field); |
| | | $string = ereg_replace("\n[[:space:]]*"," ",$string); |
| | | |
| | | switch ($field) { |
| | | case 'date'; |
| | |
| | | $result[$id]->from = $string; |
| | | break; |
| | | case 'to': |
| | | $result[$id]->to = str_replace("\n", " ", $string); |
| | | $result[$id]->to = $string; |
| | | break; |
| | | case 'subject': |
| | | $result[$id]->subject = str_replace("\n", '', $string); |
| | | $result[$id]->subject = $string; |
| | | break; |
| | | case 'reply-to': |
| | | $result[$id]->replyto = str_replace("\n", " ", $string); |
| | | $result[$id]->replyto = $string; |
| | | break; |
| | | case 'cc': |
| | | $result[$id]->cc = str_replace("\n", " ", $string); |
| | | $result[$id]->cc = $string; |
| | | break; |
| | | case 'bcc': |
| | | $result[$id]->bcc = str_replace("\n", " ", $string); |
| | | $result[$id]->bcc = $string; |
| | | break; |
| | | case 'content-transfer-encoding': |
| | | $result[$id]->encoding = str_replace("\n", " ", $string); |
| | | $result[$id]->encoding = $string; |
| | | break; |
| | | case 'content-type': |
| | | $ctype_parts = explode(";", $string); |
| | |
| | | case 'return-receipt-to': |
| | | case 'disposition-notification-to': |
| | | case 'x-confirm-reading-to': |
| | | $result[$id]->mdn_to = str_replace("\n", " ", $string); |
| | | $result[$id]->mdn_to = $string; |
| | | break; |
| | | case 'message-id': |
| | | $result[$id]->messageID = $string; |
| | |
| | | if (fputs($fp, $request)) { |
| | | $line=iil_ReadLine($fp, 100); |
| | | $sent = fwrite($fp, $message."\r\n"); |
| | | flush(); |
| | | do { |
| | | $line=iil_ReadLine($fp, 1000); |
| | | } while ($line[0] != 'A'); |
| | |
| | | $labels['timezone'] = 'Time zone'; |
| | | $labels['pagesize'] = 'Rows per page'; |
| | | $labels['signature'] = 'Signature'; |
| | | $labels['dstactive'] = 'Daylight savings'; |
| | | $labels['dstactive'] = 'Summer time'; |
| | | $labels['htmleditor'] = 'Compose HTML messages'; |
| | | $labels['htmlsignature'] = 'HTML signature'; |
| | | $labels['previewpane'] = 'Show preview pane'; |
| | |
| | | $labels['sortasc'] = 'Sort ascending'; |
| | | $labels['sortdesc'] = 'Sort descending'; |
| | | |
| | | ?> |
| | | ?> |
| | |
| | | $labels['timezone'] = 'Time zone'; |
| | | $labels['pagesize'] = 'Rows per page'; |
| | | $labels['signature'] = 'Signature'; |
| | | $labels['dstactive'] = 'Daylight savings'; |
| | | $labels['dstactive'] = 'Daylight saving time'; |
| | | $labels['htmleditor'] = 'Compose HTML messages'; |
| | | $labels['htmlsignature'] = 'HTML signature'; |
| | | $labels['previewpane'] = 'Show preview pane'; |
| | |
| | | $labels['sortasc'] = 'Sort ascending'; |
| | | $labels['sortdesc'] = 'Sort descending'; |
| | | |
| | | ?> |
| | | ?> |
| | |
| | | $labels['mailboxlist'] = 'Kansiot'; |
| | | $labels['messagesfromto'] = 'Viestit $from-$to/$count'; |
| | | $labels['messagenrof'] = 'Viesti $nr/$count'; |
| | | $labels['moveto'] = 'siirrä...'; |
| | | $labels['moveto'] = 'siirrä kansioon...'; |
| | | $labels['download'] = 'lataa'; |
| | | $labels['filename'] = 'Tiedoston nimi'; |
| | | $labels['filesize'] = 'Tiedoston koko'; |
| | |
| | | $labels['none'] = 'Ei mitään'; |
| | | $labels['unread'] = 'Lukemattomat'; |
| | | $labels['compact'] = 'Tiivistä'; |
| | | $labels['empty'] = 'Empty'; |
| | | $labels['empty'] = 'Tyhjennä'; |
| | | $labels['purge'] = 'Puhdista'; |
| | | $labels['quota'] = 'Levytila'; |
| | | $labels['unknown'] = 'tuntematon'; |
| | |
| | | $labels['deletefolder'] = 'Poista kansio'; |
| | | $labels['managefolders'] = 'Kansioiden ylläpito'; |
| | | $labels['sortby'] = 'Järjestä'; |
| | | $labels['sortasc'] = 'Järjestä nousevasti'; |
| | | $labels['sortdesc'] = 'Järjestä laskevasti'; |
| | | $labels['sortasc'] = 'Järjestä nousevasti (a-ö)'; |
| | | $labels['sortdesc'] = 'Järjestä laskevasti (ö-a)'; |
| | | |
| | | ?> |
| | |
| | | | Licensed under the GNU GPL | |
| | | | | |
| | | +-----------------------------------------------------------------------+ |
| | | | Author: aldweb <info@aldweb.com> | |
| | | | Pierre HAEGELI <pierre@haegeli.net> | |
| | | | Mickaël Wolff <rcw@lupusmic.org> | |
| | | | Author: Joel S. <joel.s@spijoprod.net> | |
| | | | Jerome Lipowicz <jerome@yayel.com> | |
| | | +-----------------------------------------------------------------------+ |
| | | |
| | | @version $Id$ |
| | |
| | | $labels['backtolist'] = 'Retourner à la liste des messages'; |
| | | $labels['viewsource'] = 'Voir le source'; |
| | | $labels['markmessages'] = 'Marquer les messages'; |
| | | $labels['markread'] = 'comme lus'; |
| | | $labels['markunread'] = 'comme non lus'; |
| | | $labels['markread'] = 'Comme lus'; |
| | | $labels['markunread'] = 'Comme non lus'; |
| | | $labels['select'] = 'Sélectionner'; |
| | | $labels['all'] = 'Tous'; |
| | | $labels['none'] = 'Aucun'; |
| | |
| | | $labels['sortasc'] = 'Tri ascendant'; |
| | | $labels['sortdesc'] = 'Tri descendant'; |
| | | |
| | | ?> |
| | | ?> |
| | |
| | | | Licensed under the GNU GPL | |
| | | | | |
| | | +-----------------------------------------------------------------------+ |
| | | | Author: aldweb <info@aldweb.com> | |
| | | | Pierre HAEGELI <pierre@haegeli.net> | |
| | | | Mickaël Wolff <rcw@lupusmic.org> | |
| | | | Author: Joel S. <joel.s@spijoprod.net> | |
| | | | Jerome Lipowicz <jerome@yayel.com> | |
| | | +-----------------------------------------------------------------------+ |
| | | |
| | | @version $Id$ |
| | |
| | | */ |
| | | |
| | | $labels = array(); |
| | | |
| | | // login page |
| | | $labels['welcome'] = 'მოგესალმებათ $product'; |
| | | $labels['username'] = 'მომხმარებელი'; |
| | | $labels['password'] = 'პაროლი'; |
| | | $labels['server'] = 'სერვერი'; |
| | | $labels['login'] = 'შესვლა'; |
| | | |
| | | // taskbar |
| | | $labels['logout'] = 'გამოსვლა'; |
| | | $labels['mail'] = 'ელ–ფოსტა'; |
| | | $labels['welcome'] = 'მოგესალმებათ $product'; |
| | | $labels['username'] = 'მომხმარებელი'; |
| | | $labels['password'] = 'პაროლი'; |
| | | $labels['server'] = 'სერვერი'; |
| | | $labels['login'] = 'შესვლა'; |
| | | $labels['logout'] = 'გამოსვლა'; |
| | | $labels['mail'] = 'ელ–ფოსტა'; |
| | | $labels['settings'] = 'პარამეტრები'; |
| | | $labels['addressbook'] = 'მისამართები'; |
| | | |
| | | // mailbox names |
| | | $labels['inbox'] = 'მიღებული'; |
| | | $labels['inbox'] = 'მიღებული'; |
| | | $labels['drafts'] = 'დროებითი'; |
| | | $labels['sent'] = 'გაგზავნილები'; |
| | | $labels['trash'] = 'წაშლილები'; |
| | | $labels['junk'] = 'სპამი'; |
| | | |
| | | // message listing |
| | | $labels['sent'] = 'გაგზავნილები'; |
| | | $labels['trash'] = 'წაშლილები'; |
| | | $labels['junk'] = 'სპამი'; |
| | | $labels['subject'] = 'სათაური'; |
| | | $labels['from'] = 'გამგზავნი'; |
| | | $labels['to'] = 'მიმღები'; |
| | | $labels['cc'] = 'კოპია'; |
| | | $labels['bcc'] = 'ფარული'; |
| | | $labels['from'] = 'გამგზავნი'; |
| | | $labels['to'] = 'მიმღები'; |
| | | $labels['cc'] = 'კოპია'; |
| | | $labels['bcc'] = 'ფარული'; |
| | | $labels['replyto'] = 'დაბრუნება'; |
| | | $labels['date'] = 'თარიღი'; |
| | | $labels['size'] = 'ზომა'; |
| | | $labels['date'] = 'თარიღი'; |
| | | $labels['size'] = 'ზომა'; |
| | | $labels['priority'] = 'პრიორიტეტი'; |
| | | $labels['organization'] = 'ორგანიზაცია'; |
| | | |
| | | // aliases |
| | | $labels['reply-to'] = $labels['replyto']; |
| | | |
| | | $labels['reply-to'] = 'დაბრუნება'; |
| | | $labels['mailboxlist'] = 'საქაღალდეები'; |
| | | $labels['messagesfromto'] = 'შეტყობინება $from $to დან $count'; |
| | | $labels['messagenrof'] = 'შეტყობინება $nr დან $count'; |
| | | |
| | | $labels['moveto'] = 'გადატანა...'; |
| | | $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['thu'] = 'ხუთ'; |
| | | $labels['fri'] = 'პარ'; |
| | | $labels['sat'] = 'შაბ'; |
| | | |
| | | // weekdays long |
| | | $labels['sunday'] = 'კვირა'; |
| | | $labels['monday'] = 'ორშაბათი'; |
| | | $labels['tuesday'] = 'სამშაბათი'; |
| | | $labels['sunday'] = 'კვირა'; |
| | | $labels['monday'] = 'ორშაბათი'; |
| | | $labels['tuesday'] = 'სამშაბათი'; |
| | | $labels['wednesday'] = 'ოთხშაბათი'; |
| | | $labels['thursday'] = 'ხუთშაბათი'; |
| | | $labels['friday'] = 'პარასკევი'; |
| | | $labels['saturday'] = 'შაბათი'; |
| | | |
| | | $labels['thursday'] = 'ხუთშაბათი'; |
| | | $labels['friday'] = 'პარასკევი'; |
| | | $labels['saturday'] = 'შაბათი'; |
| | | $labels['today'] = 'დღეს'; |
| | | |
| | | // toolbar buttons |
| | | $labels['checkmail'] = 'შემოწმება ახალ შეტყობინებაზე'; |
| | | $labels['writenewmessage'] = 'ახალი შეტყობინება'; |
| | | $labels['replytomessage'] = 'პასუხი'; |
| | | $labels['checkmail'] = 'შემოწმება ახალ შეტყობინებაზე'; |
| | | $labels['writenewmessage'] = 'ახალი შეტყობინება'; |
| | | $labels['replytomessage'] = 'პასუხი'; |
| | | $labels['replytoallmessage'] = 'პასუხი ყველას'; |
| | | $labels['forwardmessage'] = 'გადაგზავნა'; |
| | | $labels['deletemessage'] = 'წაშლა'; |
| | | $labels['forwardmessage'] = 'გადაგზავნა'; |
| | | $labels['deletemessage'] = 'წაშლა'; |
| | | $labels['movemessagetotrash'] = 'შეტყობინების წაშლილებში გადატანა'; |
| | | $labels['printmessage'] = 'შეტყობინების ამობეჭვდა'; |
| | | $labels['previousmessage'] = 'წინა შეტყობინების ნახვა'; |
| | | $labels['printmessage'] = 'შეტყობინების ამობეჭვდა'; |
| | | $labels['previousmessage'] = 'წინა შეტყობინების ნახვა'; |
| | | $labels['previousmessages'] = 'წინა შეტყობინებების ნახვა'; |
| | | $labels['firstmessage'] = 'პირველი შეტყობინების ნახვა'; |
| | | $labels['firstmessages'] = 'პრველი შეტყობინებები'; |
| | | $labels['nextmessage'] = 'შემდეგი შეტყობინების ნახვა'; |
| | | $labels['nextmessages'] = 'შემდეგი შეტყობინებების ნახვა'; |
| | | $labels['lastmessage'] = 'ბოლო შეტყობინების ნახვა'; |
| | | $labels['lastmessages'] = 'ბოლო შეტყობინებების ნახვა'; |
| | | $labels['backtolist'] = 'უკან ჩამონათვალში'; |
| | | $labels['viewsource'] = 'შიგთავსი'; |
| | | |
| | | $labels['firstmessage'] = 'პირველი შეტყობინების ნახვა'; |
| | | $labels['firstmessages'] = 'პრველი შეტყობინებები'; |
| | | $labels['nextmessage'] = 'შემდეგი შეტყობინების ნახვა'; |
| | | $labels['nextmessages'] = 'შემდეგი შეტყობინებების ნახვა'; |
| | | $labels['lastmessage'] = 'ბოლო შეტყობინების ნახვა'; |
| | | $labels['lastmessages'] = 'ბოლო შეტყობინებების ნახვა'; |
| | | $labels['backtolist'] = 'უკან ჩამონათვალში'; |
| | | $labels['viewsource'] = 'შიგთავსი'; |
| | | $labels['markmessages'] = 'მონიშნეთ შეტყობინებები'; |
| | | $labels['markread'] = 'როგორც წაკითხული'; |
| | | $labels['markunread'] = 'როგორც წაუკითხავი'; |
| | | $labels['select'] = 'მონიშვნა'; |
| | | $labels['all'] = 'ყველა'; |
| | | $labels['none'] = 'არცერთი'; |
| | | $labels['unread'] = 'წაუკითხავი'; |
| | | |
| | | $labels['compact'] = 'შეკუმშვა'; |
| | | $labels['empty'] = 'გაცარიელება'; |
| | | $labels['purge'] = 'გასუფთავება'; |
| | | |
| | | $labels['quota'] = 'შეზღუდვა'; |
| | | $labels['unknown'] = 'უცნობი'; |
| | | $labels['unlimited'] = 'შეუზღუდავი'; |
| | | |
| | | $labels['quicksearch'] = 'სწრაფი ძიება'; |
| | | $labels['resetsearch'] = 'ძიების გასუფთავება'; |
| | | |
| | | |
| | | // message compose |
| | | $labels['compose'] = 'შეტყობინების დაწერა'; |
| | | $labels['sendmessage'] = 'შეტყობინების გაგზავნა'; |
| | | $labels['savemessage'] = 'დროებით შენახვა'; |
| | | $labels['addattachment'] = 'ფაილის ატვირთვა'; |
| | | $labels['charset'] = 'კოდირება'; |
| | | $labels['editortype'] = 'რედაქტორი'; |
| | | $labels['returnreceipt'] = 'პასუხის მოთხოვნა'; |
| | | |
| | | $labels['unknown'] = 'უცნობი'; |
| | | $labels['unlimited'] = 'შეუზღუდავი'; |
| | | $labels['quicksearch'] = 'სწრაფი ძიება'; |
| | | $labels['resetsearch'] = 'ძიების გასუფთავება'; |
| | | $labels['compose'] = 'შეტყობინების დაწერა'; |
| | | $labels['savemessage'] = 'დროებით შენახვა'; |
| | | $labels['sendmessage'] = 'შეტყობინების გაგზავნა'; |
| | | $labels['addattachment'] = 'ფაილის ატვირთვა'; |
| | | $labels['charset'] = 'კოდირება'; |
| | | $labels['editortype'] = 'რედაქტორი'; |
| | | $labels['returnreceipt'] = 'პასუხის მოთხოვნა'; |
| | | $labels['checkspelling'] = 'ორთოგრაფიული შემოწმება'; |
| | | $labels['resumeediting'] = 'რედაქტირების გაგრძელება'; |
| | | $labels['revertto'] = 'გაუქმება'; |
| | | |
| | | $labels['revertto'] = 'გაუქმება'; |
| | | $labels['attachments'] = 'გზავნილები'; |
| | | $labels['upload'] = 'ატვირთვა'; |
| | | $labels['close'] = 'დახურვა'; |
| | | |
| | | $labels['low'] = 'დაბალი'; |
| | | $labels['lowest'] = 'უდაბლესი'; |
| | | $labels['normal'] = 'საშუალო'; |
| | | $labels['high'] = 'მაღალი'; |
| | | $labels['close'] = 'დახურვა'; |
| | | $labels['low'] = 'დაბალი'; |
| | | $labels['lowest'] = 'უდაბლესი'; |
| | | $labels['normal'] = 'საშუალო'; |
| | | $labels['high'] = 'მაღალი'; |
| | | $labels['highest'] = 'უმაღლესი'; |
| | | |
| | | $labels['nosubject'] = '(უსათაურო)'; |
| | | $labels['nosubject'] = '(უსათაურო)'; |
| | | $labels['showimages'] = 'გამოსახულების ჩვენება'; |
| | | |
| | | $labels['htmltoggle'] = 'HTML'; |
| | | $labels['plaintoggle'] = 'ტექსტური'; |
| | | |
| | | $labels['addcc'] = 'დაამატე კოპიო'; |
| | | $labels['addbcc'] = 'დაამატე ფარული კოპიო'; |
| | | $labels['addreplyto'] = 'დაამატე გამომგზავნი'; |
| | | |
| | | |
| | | // address boook |
| | | $labels['name'] = 'სრული სახელი'; |
| | | $labels['mdnrequest'] = 'გამომგზავნს სურს შეიტყოს წერილის მიღება. გსურთ შეატყობინოთ გამომგზავნს?'; |
| | | $labels['receiptread'] = 'გზავნილის დაბრუნება'; |
| | | $labels['yourmessage'] = 'ეს არის მიღების დასტური თქვენს შეტყობინებაზე'; |
| | | $labels['receiptnote'] = 'განმარტება: ეს ნიშნავს რომ ადრესატმა მიიღო შეტყობინება. მაგრამ, არ ნიშნავს რომ წაიკითხა ან გაიგო ტექსტი'; |
| | | $labels['name'] = 'სრული სახელი'; |
| | | $labels['firstname'] = 'სახელი'; |
| | | $labels['surname'] = 'გვარი'; |
| | | $labels['email'] = 'ელ–ფოსტა'; |
| | | |
| | | $labels['surname'] = 'გვარი'; |
| | | $labels['email'] = 'ელ–ფოსტა'; |
| | | $labels['addcontact'] = 'კონტაქტებში დამატება'; |
| | | $labels['editcontact'] = 'კონტაქტის რედაქტირება'; |
| | | |
| | | $labels['edit'] = 'რედაქტირება'; |
| | | $labels['edit'] = 'რედაქტირება'; |
| | | $labels['cancel'] = 'გაუქმება'; |
| | | $labels['save'] = 'შენახვა'; |
| | | $labels['save'] = 'შენახვა'; |
| | | $labels['delete'] = 'წაშლა'; |
| | | |
| | | $labels['newcontact'] = 'კონტაქტის შექმნა'; |
| | | $labels['deletecontact'] = 'მონიშნელი კონტაქტის წაშლა'; |
| | | $labels['composeto'] = 'ფოსტის გაგზავნა შერჩეულ ადრესატებთან'; |
| | | $labels['newcontact'] = 'კონტაქტის შექმნა'; |
| | | $labels['deletecontact'] = 'მონიშნელი კონტაქტის წაშლა'; |
| | | $labels['composeto'] = 'ფოსტის გაგზავნა შერჩეულ ადრესატებთან'; |
| | | $labels['contactsfromto'] = 'კონტაქტები $from დან $to ში $count'; |
| | | $labels['print'] = 'დაბეჭვდა'; |
| | | $labels['export'] = 'ექსპორტი'; |
| | | |
| | | $labels['previouspage'] = 'წინას ჩვენება'; |
| | | $labels['firstpage'] = 'პირველის ჩვენება'; |
| | | $labels['nextpage'] = 'შემდეგის ჩვენება'; |
| | | $labels['lastpage'] = 'ბოლოს ჩვენება'; |
| | | |
| | | $labels['print'] = 'დაბეჭვდა'; |
| | | $labels['export'] = 'ექსპორტი'; |
| | | $labels['previouspage'] = 'წინას ჩვენება'; |
| | | $labels['firstpage'] = 'პირველის ჩვენება'; |
| | | $labels['nextpage'] = 'შემდეგის ჩვენება'; |
| | | $labels['lastpage'] = 'ბოლოს ჩვენება'; |
| | | $labels['groups'] = 'ჯგუფები'; |
| | | $labels['personaladrbook'] = 'პერსონალური მისამართები'; |
| | | |
| | | |
| | | // 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['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['signature'] = 'ხელმოწერა'; |
| | | $labels['dstactive'] = 'დროის გადაყვანა'; |
| | | $labels['dstactive'] = 'დროის გადაყვანა'; |
| | | $labels['htmleditor'] = 'შეტყობინების შექმნა HTML –ში'; |
| | | $labels['htmlsignature'] = 'HTML ხელმოწერა'; |
| | | $labels['previewpane'] = 'ჩვენება'; |
| | | |
| | | $labels['autosavedraft'] = 'ავტომატური შენახვა'; |
| | | $labels['everynminutes'] = 'ყოველ $n წუთში'; |
| | | $labels['never'] = 'არასდროს'; |
| | | |
| | | $labels['folder'] = 'საქაღალდე'; |
| | | $labels['folders'] = 'საქაღალდეები'; |
| | | $labels['foldername'] = 'საქაღალდის დასახელება'; |
| | | $labels['subscribed'] = 'გამოცერილია'; |
| | | $labels['create'] = 'შექმნა'; |
| | | $labels['createfolder'] = 'საქაღალდის შექმნა'; |
| | | $labels['autosavedraft'] = 'ავტომატური შენახვა'; |
| | | $labels['everynminutes'] = 'ყოველ $n წუთში'; |
| | | $labels['never'] = 'არასდროს'; |
| | | $labels['folder'] = 'საქაღალდე'; |
| | | $labels['folders'] = 'საქაღალდეები'; |
| | | $labels['foldername'] = 'საქაღალდის დასახელება'; |
| | | $labels['subscribed'] = 'გამოცერილია'; |
| | | $labels['messagecount'] = 'შეტყობინებები'; |
| | | $labels['create'] = 'შექმნა'; |
| | | $labels['createfolder'] = 'საქაღალდის შექმნა'; |
| | | $labels['rename'] = 'სახელის გადარქმევა'; |
| | | $labels['renamefolder'] = 'სახელის გადარქმევა საქაღალდისთვის'; |
| | | $labels['deletefolder'] = 'საქაღალდის წაშლა'; |
| | | $labels['managefolders'] = 'საქაღალდეების მართვა'; |
| | | |
| | | $labels['deletefolder'] = 'საქაღალდის წაშლა'; |
| | | $labels['managefolders'] = 'საქაღალდეების მართვა'; |
| | | $labels['sortby'] = 'დალაგება'; |
| | | $labels['sortasc'] = 'დალაგება ზრდადობით'; |
| | | $labels['sortasc'] = 'დალაგება ზრდადობით'; |
| | | $labels['sortdesc'] = 'დალაგება კლებადობით'; |
| | | |
| | | ?> |
| | |
| | | */ |
| | | |
| | | $messages = array(); |
| | | $messages['loginfailed'] = 'შესვლა შეუძლებელია'; |
| | | $messages['loginfailed'] = 'შესვლა შეუძლებელია'; |
| | | $messages['cookiesdisabled'] = 'თქვენი ბროუზერი კუკიებს არ პასუხობს'; |
| | | $messages['sessionerror'] = 'თქვენი სესია არის მცდარი ან ვადაგასული'; |
| | | $messages['imaperror'] = 'IMAP სერვერთან დაკავშირება შეუძლებელია'; |
| | |
| | | $messages['errorsaving'] = 'შენახვის დროს მოხდა შეცდომა'; |
| | | $messages['errormoving'] = 'შეტყობინების გადატანა შეუძლებელია'; |
| | | $messages['errordeleting'] = 'შეტყობინების წაშლა შეუძლებელია'; |
| | | $messages['deletecontactconfirm'] = 'ნამდვილად გსურთ მონიშნული კონტაქტების წაშლა?'; |
| | | $messages['deletecontactconfirm'] = 'ნამდვილად გსურთ მონიშნული კონტაქტების წაშლა?'; |
| | | $messages['deletemessagesconfirm'] = 'ნამდვილად გსურთ მონიშნული შეტყობინებების წაშლა?'; |
| | | $messages['deletefolderconfirm'] = 'ნამდვილად გსურთ ამ საქაღალდის წაშლა?'; |
| | | $messages['purgefolderconfirm'] = 'ნამდვილად გსურთ ყველა შეტყობინების წაშლა აღნიშნულ საქაღალდეში?'; |
| | | $messages['deletefolderconfirm'] = 'ნამდვილად გსურთ ამ საქაღალდის წაშლა?'; |
| | | $messages['purgefolderconfirm'] = 'ნამდვილად გსურთ ყველა შეტყობინების წაშლა აღნიშნულ საქაღალდეში?'; |
| | | $messages['formincomplete'] = 'ყველა ველი არ არის შევსებული'; |
| | | $messages['noemailwarning'] = 'მიუთითეთ სწორი ელ–ფოსტის მისამართი'; |
| | | $messages['nonamewarning'] = 'მიუთითეთ სახელი'; |
| | | $messages['nonamewarning'] = 'მიუთითეთ სახელი'; |
| | | $messages['nopagesizewarning'] = 'მიუთითეთ ფურცლის ზომა'; |
| | | $messages['norecipientwarning'] = 'მიუთითეთ მიმღები'; |
| | | $messages['nosubjectwarning'] = 'გსურთ თუ არა შეტყობინების გაგზავნა უსათაუროდ?'; |
| | | $messages['nosubjectwarning'] = 'გსურთ თუ არა შეტყობინების გაგზავნა უსათაუროდ?'; |
| | | $messages['nobodywarning'] = 'გსურთ თუ არა შეტყობინების გაგზავნა უტექსტოდ?'; |
| | | $messages['notsentwarning'] = 'შეტყობინება ვერ იქნა გაგზავნილი. გსურთ თუ არა გზავნილის გაუქმება?'; |
| | | $messages['noldapserver'] = 'მიუთითეთ LDAP სერვერი ძიებისთვის'; |
| | |
| | | $messages['sourceisreadonly'] = 'აღნიშნული მისამართის მხოლოდ წაკითხვაა შესაძლებელი'; |
| | | $messages['errorsavingcontact'] = 'საკონტაქტო მისამართის შენახვა შეუძლებელია'; |
| | | $messages['movingmessage'] = 'შეტყობინების გადატანა...'; |
| | | $messages['receiptsent'] = 'წარმატებით გაიგზავნა'; |
| | | $messages['errorsendingreceipt'] = 'არ გაიგზავნა'; |
| | | $messages['nodeletelastidentity'] = 'წაშლა შეუძლებელია, ის თქვენთვის ერთადერთია'; |
| | | $messages['addsubfolderhint'] = 'საქაღალდე შეიქმნება როგორც ქვესაქაღალდე მონიშნულ საქაღალდეში'; |
| | | |
| | | ?> |
| | |
| | | | | |
| | | +-----------------------------------------------------------------------+ |
| | | | Author: Levente Farkas <lfarkas at lfarkas dot org> | |
| | | | Ervin Hegedüs <airween@damson.hu> | |
| | | | Ervin Hegedüs <airween@damson.hu> | |
| | | +-----------------------------------------------------------------------+ |
| | | |
| | | @version $Id$ |
| | |
| | | */ |
| | | |
| | | $messages = array(); |
| | | $messages['loginfailed'] = 'Sikertelen belépés'; |
| | | $messages['cookiesdisabled'] = 'A böngészõ nem támogatja a sütik használatát'; |
| | | $messages['sessionerror'] = 'Érvénytelen vagy lejárt munkamenet'; |
| | | $messages['imaperror'] = 'Nem sikerült a kapcsolódás az IMAP szerverhez'; |
| | | $messages['nomessagesfound'] = 'A fiók nem tartalmaz leveleket'; |
| | | $messages['loggedout'] = 'Sikeres kijelentkezés. Viszont látásra!'; |
| | | $messages['mailboxempty'] = 'A fiók üres'; |
| | | $messages['loading'] = 'Betöltés...'; |
| | | $messages['loadingdata'] = 'Az adatok betöltése...'; |
| | | $messages['checkingmail'] = 'Új üzenetek keresése...'; |
| | | $messages['sendingmessage'] = 'Az üzenet küldése...'; |
| | | $messages['messagesent'] = 'Az üzenet elküldve'; |
| | | $messages['savingmessage'] = 'Az üzenet mentése...'; |
| | | $messages['messagesaved'] = 'Az üzenet elmentve a Sablonokhoz'; |
| | | $messages['successfullysaved'] = 'A mentés sikerült'; |
| | | $messages['addedsuccessfully'] = 'A cím hozzáadása a címjegyzékhez megtörtént'; |
| | | $messages['contactexists'] = 'A kapcsolat már létezik ezzel az e-mail címmel'; |
| | | $messages['blockedimages'] = 'Biztonsági okokból a távoli képek letöltése tiltott.'; |
| | | $messages['encryptedmessage'] = 'Az üzenet titkosított, emiatt nem tudom megjeleníteni.'; |
| | | $messages['loginfailed'] = 'Sikertelen belépés'; |
| | | $messages['cookiesdisabled'] = 'A böngésző nem támogatja a sütik használatát'; |
| | | $messages['sessionerror'] = 'Érvénytelen vagy lejárt munkamenet'; |
| | | $messages['imaperror'] = 'Nem sikerült a kapcsolódás az IMAP szerverhez'; |
| | | $messages['nomessagesfound'] = 'A fiók nem tartalmaz leveleket'; |
| | | $messages['loggedout'] = 'Sikeres kijelentkezés. Viszont látásra!'; |
| | | $messages['mailboxempty'] = 'A fiók üres'; |
| | | $messages['loading'] = 'Betöltés...'; |
| | | $messages['loadingdata'] = 'Az adatok betöltése...'; |
| | | $messages['checkingmail'] = 'Új üzenetek keresése...'; |
| | | $messages['sendingmessage'] = 'Az üzenet küldése...'; |
| | | $messages['messagesent'] = 'Az üzenet elküldve'; |
| | | $messages['savingmessage'] = 'Az üzenet mentése...'; |
| | | $messages['messagesaved'] = 'Az üzenet elmentve a Sablonokhoz'; |
| | | $messages['successfullysaved'] = 'A mentés sikerült'; |
| | | $messages['addedsuccessfully'] = 'A cím hozzáadása a címjegyzékhez megtörtént'; |
| | | $messages['contactexists'] = 'A kapcsolat már létezik ezzel az e-mail címmel'; |
| | | $messages['blockedimages'] = 'Biztonsági okokból a távoli képek letöltése tiltott.'; |
| | | $messages['encryptedmessage'] = 'Az üzenet titkosított, emiatt nem tudom megjeleníteni.'; |
| | | $messages['nocontactsfound'] = 'Nincs kapcsolat'; |
| | | $messages['contactnotfound'] = 'A kiválasztott kapcsolat nem található'; |
| | | $messages['sendingfailed'] = 'Az üzenet elküldése nem sikerült'; |
| | | $messages['errorsaving'] = 'A mentés során hiba lépett fel'; |
| | | $messages['errormoving'] = 'Az üzenetet nem sikerült áthelyezni'; |
| | | $messages['errordeleting'] = 'Az üzenetet nem sikerült törölni'; |
| | | $messages['deletecontactconfirm'] = 'Biztos, hogy törölni szeretnéd a kijelölt címe(ke)t?'; |
| | | $messages['deletemessagesconfirm'] = 'Biztos, hogy törölni szeretnéd a kijelölt üzenete(ke)t?'; |
| | | $messages['deletefolderconfirm'] = 'Biztos, hogy törölni szeretnéd ezt a mappát?'; |
| | | $messages['purgefolderconfirm'] = 'Biztos vagy benne, hogy az összes üzenet törölhetõ?'; |
| | | $messages['formincomplete'] = 'Az ûrlap hiányosan lett kitöltve'; |
| | | $messages['noemailwarning'] = 'Adj meg egy valós e-mail címet'; |
| | | $messages['contactnotfound'] = 'A kiválasztott kapcsolat nem található'; |
| | | $messages['sendingfailed'] = 'Az üzenet elküldése nem sikerült'; |
| | | $messages['errorsaving'] = 'A mentés során hiba lépett fel'; |
| | | $messages['errormoving'] = 'Az üzenetet nem sikerült áthelyezni'; |
| | | $messages['errordeleting'] = 'Az üzenetet nem sikerült törölni'; |
| | | $messages['deletecontactconfirm'] = 'Biztos, hogy törölni szeretnéd a kijelölt címe(ke)t?'; |
| | | $messages['deletemessagesconfirm'] = 'Biztos, hogy törölni szeretnéd a kijelölt üzenete(ke)t?'; |
| | | $messages['deletefolderconfirm'] = 'Biztos, hogy törölni szeretnéd ezt a mappát?'; |
| | | $messages['purgefolderconfirm'] = 'Biztos vagy benne, hogy az összes üzenet törölhető?'; |
| | | $messages['formincomplete'] = 'Az űrlap hiányosan lett kitöltve'; |
| | | $messages['noemailwarning'] = 'Adj meg egy valós e-mail címet'; |
| | | $messages['nonamewarning'] = 'Adj meg egy nevet'; |
| | | $messages['nopagesizewarning'] = 'Add meg a papír méretét'; |
| | | $messages['norecipientwarning'] = 'Legalább egy címzettet adj meg'; |
| | | $messages['nosubjectwarning'] = 'A "Tárgy" mezõ üres. Szeretnéd most kitölteni?'; |
| | | $messages['nobodywarning'] = 'Elküldöd az üzenetet tárgy nélkül?'; |
| | | $messages['notsentwarning'] = 'Az üzenet még nem küldtem el. Eldobod az üzenetet?'; |
| | | $messages['noldapserver'] = 'Adj meg egy LDAP szervert a kereséshez'; |
| | | $messages['nocontactsreturned'] = 'Nem találtam kapcsolatot'; |
| | | $messages['nosearchname'] = 'Add meg a kapcsolat nevét vagy e-mail címét'; |
| | | $messages['searchsuccessful'] = '$nr üzenetet találtam'; |
| | | $messages['searchnomatch'] = 'Nincs találat'; |
| | | $messages['searching'] = 'Keresés...'; |
| | | $messages['checking'] = 'Ellenõrzés...'; |
| | | $messages['nospellerrors'] = 'Nem találtam helyesírási hibát'; |
| | | $messages['folderdeleted'] = 'A mappa sikeresen törölve'; |
| | | $messages['deletedsuccessfully'] = 'Törölve'; |
| | | $messages['converting'] = 'Formázás eltávolítása az üzenetbõl...'; |
| | | $messages['messageopenerror'] = 'Nem tudom letölteni a leveleket a szerverrõl'; |
| | | $messages['fileuploaderror'] = 'Feltöltés sikertelen'; |
| | | $messages['filesizeerror'] = 'A feltöltött file mérete meghaladja a maximális méretet $size'; |
| | | $messages['copysuccess'] = 'Sikeresen másoltunk $nr címet'; |
| | | $messages['copyerror'] = 'Nem tudtunk másolni egyetlen címet sem'; |
| | | $messages['sourceisreadonly'] = 'Ez a címforrás csak olvasható'; |
| | | $messages['errorsavingcontact'] = 'Nem tudtuk menteni a kapcsolat címét'; |
| | | $messages['movingmessage'] = 'Üzenet mozgatása...'; |
| | | $messages['receiptsent'] = 'Az Olvasási Értesítést elküldtük'; |
| | | $messages['errorsendingreceipt'] = 'Az Olvasási Értesítést nem sikerült elküldeni'; |
| | | $messages['nodeletelastidentity'] = 'Nem törölheti ezt a profilt, ez az egyetlen'; |
| | | $messages['addsubfolderhint'] = 'Az új könyvtárat az aktuálisan kiválasztott alkönyvtáraként fogjuk létrehozni'; |
| | | $messages['nopagesizewarning'] = 'Add meg a papír méretét'; |
| | | $messages['norecipientwarning'] = 'Legalább egy címzettet adj meg'; |
| | | $messages['nosubjectwarning'] = 'A "Tárgy" mező üres. Szeretnéd most kitölteni?'; |
| | | $messages['nobodywarning'] = 'Elküldöd az üzenetet tárgy nélkül?'; |
| | | $messages['notsentwarning'] = 'Az üzenet még nem küldtem el. Eldobod az üzenetet?'; |
| | | $messages['noldapserver'] = 'Adj meg egy LDAP szervert a kereséshez'; |
| | | $messages['nocontactsreturned'] = 'Nem találtam kapcsolatot'; |
| | | $messages['nosearchname'] = 'Add meg a kapcsolat nevét vagy e-mail címét'; |
| | | $messages['searchsuccessful'] = '$nr üzenetet találtam'; |
| | | $messages['searchnomatch'] = 'Nincs találat'; |
| | | $messages['searching'] = 'Keresés...'; |
| | | $messages['checking'] = 'Ellenőrzés...'; |
| | | $messages['nospellerrors'] = 'Nem találtam helyesírási hibát'; |
| | | $messages['folderdeleted'] = 'A mappa sikeresen törölve'; |
| | | $messages['deletedsuccessfully'] = 'Törölve'; |
| | | $messages['converting'] = 'Formázás eltávolítása az üzenetből...'; |
| | | $messages['messageopenerror'] = 'Nem tudom letölteni a leveleket a szerverről'; |
| | | $messages['fileuploaderror'] = 'Feltöltés sikertelen'; |
| | | $messages['filesizeerror'] = 'A feltöltött file mérete meghaladja a maximális méretet $size'; |
| | | $messages['copysuccess'] = 'Sikeresen másoltunk $nr címet'; |
| | | $messages['copyerror'] = 'Nem tudtunk másolni egyetlen címet sem'; |
| | | $messages['sourceisreadonly'] = 'Ez a címforrás csak olvasható'; |
| | | $messages['errorsavingcontact'] = 'Nem tudtuk menteni a kapcsolat címét'; |
| | | $messages['movingmessage'] = 'Üzenet mozgatása...'; |
| | | $messages['receiptsent'] = 'Az Olvasási Értesítést elküldtük'; |
| | | $messages['errorsendingreceipt'] = 'Az Olvasási Értesítést nem sikerült elküldeni'; |
| | | $messages['nodeletelastidentity'] = 'Nem törölheti ezt a profilt, ez az egyetlen'; |
| | | $messages['addsubfolderhint'] = 'Az új könyvtárat az aktuálisan kiválasztott alkönyvtáraként fogjuk létrehozni'; |
| | | |
| | | ?> |
| | |
| | | 'it' => 'Italiano', |
| | | 'ja' => 'Japanese (日本語)', |
| | | 'kr' => 'Korean', |
| | | 'ku' => 'Kurdish (Kurmancî)', |
| | | 'lv' => 'Latvian', |
| | | 'lt' => 'Lithuanian', |
| | | 'mk' => 'Macedonian', |
New file |
| | |
| | | <?php |
| | | |
| | | /* |
| | | +-----------------------------------------------------------------------+ |
| | | | language/ku/labels.inc | |
| | | | | |
| | | | Language file of the RoundCube Webmail client | |
| | | | Copyright (C) 2006, RoundQube Dev. - Switzerland | |
| | | | Licensed under the GNU GPL | |
| | | | | |
| | | +-----------------------------------------------------------------------+ |
| | | | Author: Amed Çeko Jiyan <amedcj@kurdistan.name> | |
| | | +-----------------------------------------------------------------------+ |
| | | |
| | | */ |
| | | |
| | | $labels = array(); |
| | | $labels['welcome'] = 'Bixêr hatî $product \\\'ê'; |
| | | $labels['username'] = 'Bikarhêner'; |
| | | $labels['password'] = 'Nasnav'; |
| | | $labels['server'] = 'Pêşkêşkar'; |
| | | $labels['login'] = 'Têkevê'; |
| | | $labels['logout'] = 'Derkeve'; |
| | | $labels['mail'] = 'E-Peyam'; |
| | | $labels['settings'] = 'Mîhengên Takekesî'; |
| | | $labels['addressbook'] = 'Lênûska Navnîşanan'; |
| | | $labels['inbox'] = 'Hatî'; |
| | | $labels['drafts'] = 'Hilanînî'; |
| | | $labels['sent'] = 'Şandî'; |
| | | $labels['trash'] = 'Çop'; |
| | | $labels['junk'] = 'Biikêrnehatî'; |
| | | $labels['subject'] = 'Mijar'; |
| | | $labels['from'] = 'Şandyar'; |
| | | $labels['to'] = 'Standyar'; |
| | | $labels['cc'] = 'Kopiya Karbon'; |
| | | $labels['bcc'] = 'Kopiya karbon a Veşartî'; |
| | | $labels['replyto'] = 'Navnîşanên Standyar'; |
| | | $labels['date'] = 'Dîrok'; |
| | | $labels['size'] = 'Mezinahî'; |
| | | $labels['priority'] = 'Girîngî'; |
| | | $labels['organization'] = 'Sazî'; |
| | | $labels['reply-to'] = 'Navnîşanên Standyar'; |
| | | $labels['mailboxlist'] = 'Peldank'; |
| | | $labels['messagesfromto'] = 'Peyam $count ên di navbera $from - $to'; |
| | | $labels['messagenrof'] = '$nr a peyama $count'; |
| | | $labels['moveto'] = 'bibe...'; |
| | | $labels['download'] = 'daxe'; |
| | | $labels['filename'] = 'Navê pelê'; |
| | | $labels['filesize'] = 'Mezinahiya pelê'; |
| | | $labels['preferhtml'] = 'Wekî HTML nîşan bide'; |
| | | $labels['htmlmessage'] = 'Peyama HTML'; |
| | | $labels['prettydate'] = 'Kurtenivîsa Dîrokê'; |
| | | $labels['addtoaddressbook'] = 'Têxe lênûska navnîşanan'; |
| | | $labels['sun'] = 'Yş'; |
| | | $labels['mon'] = 'Dş'; |
| | | $labels['tue'] = 'Sş'; |
| | | $labels['wed'] = 'Çş'; |
| | | $labels['thu'] = 'Pş'; |
| | | $labels['fri'] = 'În'; |
| | | $labels['sat'] = 'Şe'; |
| | | $labels['sunday'] = 'Yekşem'; |
| | | $labels['monday'] = 'Duşem'; |
| | | $labels['tuesday'] = 'Sêşem'; |
| | | $labels['wednesday'] = 'Çarşem'; |
| | | $labels['thursday'] = 'Pêncşem'; |
| | | $labels['friday'] = 'În'; |
| | | $labels['saturday'] = 'Şemî'; |
| | | $labels['today'] = 'Îro'; |
| | | $labels['checkmail'] = 'Li peyamên nû venihêre'; |
| | | $labels['writenewmessage'] = 'Peyameke nû biafirîne'; |
| | | $labels['replytomessage'] = 'Bersivê bide peyamê'; |
| | | $labels['replytoallmessage'] = 'Bersivê ji bo hemû kesên ku ev peyan standine bişîne'; |
| | | $labels['forwardmessage'] = 'Bersivê bide peyamê'; |
| | | $labels['deletemessage'] = 'Peyamê jê bibe'; |
| | | $labels['movemessagetotrash'] = 'Peyamê dake çopê'; |
| | | $labels['printmessage'] = 'Vê peyamê çap bike'; |
| | | $labels['previousmessage'] = 'Peyama berê nîşan bide'; |
| | | $labels['previousmessages'] = 'Peyamên berê nîşan bide'; |
| | | $labels['firstmessage'] = 'Peyama yekemîn nîşan bide'; |
| | | $labels['firstmessages'] = 'Peyamên yekemîn nîşan bide'; |
| | | $labels['nextmessage'] = 'Peyama di rêzê de nîşan bide'; |
| | | $labels['nextmessages'] = 'Peyamên di rêzê de nîşan bide'; |
| | | $labels['lastmessage'] = 'Peyama dawî nîşan bide'; |
| | | $labels['lastmessages'] = 'Peyamên dawî nîşan bide'; |
| | | $labels['backtolist'] = 'Vegere lîsteya peyaman'; |
| | | $labels['viewsource'] = 'Çavkaniyê nîşan bide'; |
| | | $labels['markmessages'] = 'Peyamê nîşan bike'; |
| | | $labels['markread'] = 'Wekî xwendî'; |
| | | $labels['markunread'] = 'Wekî nexwendî'; |
| | | $labels['select'] = 'Hilbijêre'; |
| | | $labels['all'] = 'Hemû'; |
| | | $labels['none'] = 'Ne yek jî'; |
| | | $labels['unread'] = 'Nexwendî'; |
| | | $labels['compact'] = 'Kompakt'; |
| | | $labels['empty'] = 'Vala Bike'; |
| | | $labels['purge'] = 'Jê bibe'; |
| | | $labels['quota'] = 'Bikaranîna dîskê'; |
| | | $labels['unknown'] = 'nayê zanîn'; |
| | | $labels['unlimited'] = 'bêsînor'; |
| | | $labels['quicksearch'] = 'Lêgerîna bilez'; |
| | | $labels['resetsearch'] = 'Lêgerînê reset bike'; |
| | | $labels['compose'] = 'Peyamekê biafirîne'; |
| | | $labels['savemessage'] = 'Hilîne'; |
| | | $labels['sendmessage'] = 'Peyamê niha bişîne'; |
| | | $labels['addattachment'] = 'Pelekê lê zêde bike'; |
| | | $labels['charset'] = 'Curetîp'; |
| | | $labels['editortype'] = 'Cureyê serastkat'; |
| | | $labels['returnreceipt'] = 'Rapora Vegerînê'; |
| | | $labels['checkspelling'] = 'Kontrola rastnivîsê'; |
| | | $labels['resumeediting'] = 'Serastkirinê bidomîne'; |
| | | $labels['revertto'] = 'Şûnde bîne'; |
| | | $labels['attachments'] = 'Pêvek'; |
| | | $labels['upload'] = 'Bar bike'; |
| | | $labels['close'] = 'Bigire'; |
| | | $labels['low'] = 'Nizm'; |
| | | $labels['lowest'] = 'Nizmtirîn'; |
| | | $labels['normal'] = 'Asayî'; |
| | | $labels['high'] = 'Bilind'; |
| | | $labels['highest'] = 'Bilintirîn'; |
| | | $labels['nosubject'] = '(bê mijar)'; |
| | | $labels['showimages'] = 'Xuyakirina wêneyan'; |
| | | $labels['htmltoggle'] = 'HTML'; |
| | | $labels['plaintoggle'] = 'Deqa tazî'; |
| | | $labels['addcc'] = 'Cc Têxê'; |
| | | $labels['addbcc'] = 'Bcc Têxê'; |
| | | $labels['addreplyto'] = 'Bibersivîne têxê'; |
| | | $labels['mdnrequest'] = 'Şandyara/ê vê peyamê xwest dema ku te peyam vekir, jê re hişyarî here. Dixwazî jê re hişyarî here?'; |
| | | $labels['receiptread'] = 'Rapora Vegerînê (xwendî)'; |
| | | $labels['yourmessage'] = 'Ev rapora vegerîna peyama te ye'; |
| | | $labels['receiptnote'] = 'Nîşe: Ev dide zanîn ka peyama te şand hat xwendin an na. Naveroka peyamê bi mîgogerî nayê zanîn.'; |
| | | $labels['name'] = 'Navê xuya dibe'; |
| | | $labels['firstname'] = 'Nav'; |
| | | $labels['surname'] = 'Paşnav'; |
| | | $labels['email'] = 'E-Peyam'; |
| | | $labels['addcontact'] = 'Têkiliyeke nû têxê'; |
| | | $labels['editcontact'] = 'Têkiliyê serast bike'; |
| | | $labels['edit'] = 'Serast bike'; |
| | | $labels['cancel'] = 'Betal'; |
| | | $labels['save'] = 'Tomar bike'; |
| | | $labels['delete'] = 'Jê Bibe'; |
| | | $labels['newcontact'] = 'kardeke nû a têkiliyê biafirîne'; |
| | | $labels['deletecontact'] = 'Têkiliyên hilbijartî jê bibe'; |
| | | $labels['composeto'] = 'Ji têkiliya hilbijartî re peyam bişîne'; |
| | | $labels['contactsfromto'] = 'Têkiliyên $count ên di navbera $from - $to de'; |
| | | $labels['print'] = 'çap bike'; |
| | | $labels['export'] = 'Derxe'; |
| | | $labels['previouspage'] = 'Seta berê nîşan bide'; |
| | | $labels['firstpage'] = 'Seta yekemîn nîşan bide'; |
| | | $labels['nextpage'] = 'Seta di rêzê de nîşan bide'; |
| | | $labels['lastpage'] = 'Seta dawî nîşan bide'; |
| | | $labels['groups'] = 'Kom'; |
| | | $labels['personaladrbook'] = 'Navnîşanên Takekesî'; |
| | | $labels['settingsfor'] = 'Mîheng ji bo'; |
| | | $labels['preferences'] = 'Vebijêrk'; |
| | | $labels['userpreferences'] = 'Vebijêrkên bikarhêner'; |
| | | $labels['editpreferences'] = 'Vebijêrkên bikarhêner serast bike'; |
| | | $labels['identities'] = 'Nasname'; |
| | | $labels['manageidentities'] = 'Nasnameyên vê hesabê serast bike'; |
| | | $labels['newidentity'] = 'Nasnameya nû'; |
| | | $labels['newitem'] = 'Parçeya nû'; |
| | | $labels['edititem'] = 'Parçeyê serast bike'; |
| | | $labels['setdefault'] = 'Wekî standard tomar bike'; |
| | | $labels['language'] = 'Ziman'; |
| | | $labels['timezone'] = 'Herêma demê'; |
| | | $labels['pagesize'] = 'Hejmara peyamên her rûpelekê'; |
| | | $labels['signature'] = 'Şanenav'; |
| | | $labels['dstactive'] = 'Demjimêra havînî'; |
| | | $labels['htmleditor'] = 'Peyameke HTML biafirîne'; |
| | | $labels['htmlsignature'] = 'Şanenava HTML'; |
| | | $labels['previewpane'] = 'Panela berê nîşan bide'; |
| | | $labels['autosavedraft'] = 'Xweber hilîne'; |
| | | $labels['everynminutes'] = 'her $n çirke'; |
| | | $labels['never'] = 'qet'; |
| | | $labels['folder'] = 'Peldank'; |
| | | $labels['folders'] = 'Peldank'; |
| | | $labels['foldername'] = 'Navê peldankê'; |
| | | $labels['subscribed'] = 'Ni şanenav'; |
| | | $labels['messagecount'] = 'Peyam'; |
| | | $labels['create'] = 'Biafirîne'; |
| | | $labels['createfolder'] = 'Peldankeke nû biafirîne'; |
| | | $labels['rename'] = 'Nav biguherîne'; |
| | | $labels['renamefolder'] = 'Navê peldankê biguherîne'; |
| | | $labels['deletefolder'] = 'Peldankê jê bibe'; |
| | | $labels['managefolders'] = 'Rêveberiya peldankan'; |
| | | $labels['sortby'] = 'Şêweyê rêzkirinê'; |
| | | $labels['sortasc'] = 'Wekî zêde dibe'; |
| | | $labels['sortdesc'] = 'Wekî kêm dibe'; |
| | | |
| | | ?> |
New file |
| | |
| | | <?php |
| | | |
| | | /* |
| | | +-----------------------------------------------------------------------+ |
| | | | language/ku/messages.inc | |
| | | | | |
| | | | Language file of the RoundCube Webmail client | |
| | | | Copyright (C) 2006, RoundQube Dev. - Switzerland | |
| | | | Licensed under the GNU GPL | |
| | | | | |
| | | +-----------------------------------------------------------------------+ |
| | | | Author: Amed çeko Jiyan <amedcj@kurdistan.name> | |
| | | +-----------------------------------------------------------------------+ |
| | | |
| | | */ |
| | | |
| | | $messages = array(); |
| | | $messages['loginfailed'] = 'Têketin têk çû'; |
| | | $messages['cookiesdisabled'] = 'Geroka te destûrê nade çerezan'; |
| | | $messages['sessionerror'] = 'Danişîna te çewt e an jî bi dawî bûye'; |
| | | $messages['imaperror'] = 'Girêdana pêşkêşkara IMAP têk çû'; |
| | | $messages['nomessagesfound'] = 'Di vê peyamdankê de tu peyam nehat dîtin'; |
| | | $messages['loggedout'] = 'Te danişînî bi dawî anî. Oxir be!'; |
| | | $messages['mailboxempty'] = 'Peyamdank vala ye'; |
| | | $messages['loading'] = 'Tê barkirin...'; |
| | | $messages['loadingdata'] = 'Dane tên barkirin...'; |
| | | $messages['checkingmail'] = 'Li peyamên nû vedinihêre...'; |
| | | $messages['sendingmessage'] = 'Peyamê dişîne...'; |
| | | $messages['messagesent'] = 'Peyam hate şandin'; |
| | | $messages['savingmessage'] = 'Peyam tê hilanîn...'; |
| | | $messages['messagesaved'] = 'Peyam di Hilanînî de hat hilanîn'; |
| | | $messages['successfullysaved'] = 'Hat hilanîn'; |
| | | $messages['addedsuccessfully'] = 'Têkilî li navnîşanan hat zêdekirin'; |
| | | $messages['contactexists'] = 'Têkiliyeke bi vê navnîşanê jixwe heye'; |
| | | $messages['blockedimages'] = 'Ji bo ewlekariya te wêneyên cuda yên vê peyamê hatin astenkirin.'; |
| | | $messages['encryptedmessage'] = 'Ev peyamenek şîfrekirî ye, bibore, nayê vekirin!'; |
| | | $messages['nocontactsfound'] = 'Tu têkiliyek nehat dîtin'; |
| | | $messages['contactnotfound'] = 'Têkiliya dihat xwestin nehat dîtin'; |
| | | $messages['sendingfailed'] = 'Peyam nehat şandin'; |
| | | $messages['errorsaving'] = 'Di tomarkirinê de çewtiyek derket'; |
| | | $messages['errormoving'] = 'Ciyê peyamê nehat guherandin'; |
| | | $messages['errordeleting'] = 'Peyam nehat jêbirin'; |
| | | $messages['deletecontactconfirm'] = 'Ji dil dixwazî têkiliya/ên nîşankirî jê bibî?'; |
| | | $messages['deletemessagesconfirm'] = 'Ji dil dixwazî peya/ên nîşankirî jê bibî?'; |
| | | $messages['deletefolderconfirm'] = 'Ji dil dixwazî vê peldankê jê bibî?'; |
| | | $messages['purgefolderconfirm'] = 'Ji dil dixwazî hemû peyamên di vê peldankê de jê bibî?'; |
| | | $messages['formincomplete'] = 'Form bi temamî nehat tijekirin'; |
| | | $messages['noemailwarning'] = 'Tika ye, navnîşaneke rast têkevê'; |
| | | $messages['nonamewarning'] = 'Tika ye, navekî têkevê'; |
| | | $messages['nopagesizewarning'] = 'Tika ye, mezinahiyeke pelê têkevê'; |
| | | $messages['norecipientwarning'] = 'Tika ye, herî kêm standyarekê têkevê'; |
| | | $messages['nosubjectwarning'] = 'Qada "Mijar"ê vala ye. Dixwazî niha tiştekî lê binivîsî?'; |
| | | $messages['nobodywarning'] = 'Peyamê bê nivîs bişeyînî?'; |
| | | $messages['notsentwarning'] = 'Peyam nehat şandin. Dixwazî peyamê pişTgo bikî?'; |
| | | $messages['noldapserver'] = 'Tika ye, ji bo lêgerînê pêşkêşkareke Idap têkevê'; |
| | | $messages['nocontactsreturned'] = 'Tu têkilî nehat dîtin'; |
| | | $messages['nosearchname'] = 'Tika ye, nav an jî navnîşaneke têkiliyê têkevê'; |
| | | $messages['searchsuccessful'] = '$nr peyam hat(in) dîtin'; |
| | | $messages['searchnomatch'] = 'Di lêgerînê de tu tişt nehat dîtin'; |
| | | $messages['searching'] = 'Digere...'; |
| | | $messages['checking'] = 'Vedinihêre...'; |
| | | $messages['nospellerrors'] = 'Tu şaşiyeke rastnivîsê nehat dîtin'; |
| | | $messages['folderdeleted'] = 'Peldank hat jêbirin'; |
| | | $messages['deletedsuccessfully'] = 'Hat jêbirin'; |
| | | $messages['converting'] = 'Formatkirin ji peyamê tê birin...'; |
| | | $messages['messageopenerror'] = 'Peyam ji pêşkêşkar nehat barkirin'; |
| | | $messages['fileuploaderror'] = 'Barkirina pelê têk çû'; |
| | | $messages['filesizeerror'] = 'Pel pir mezin e. Herî zêde divê $size be'; |
| | | $messages['copysuccess'] = '$nr navnîşan hat(in) jibergirtin'; |
| | | $messages['copyerror'] = 'Tu navnîşan nehat jibergirtin'; |
| | | $messages['sourceisreadonly'] = 'Çavkaniya vê navnîşanê tenê-xwendin e'; |
| | | $messages['errorsavingcontact'] = 'Navnîşana têkiliyê nehat barkirin'; |
| | | $messages['movingmessage'] = 'Ciyê peyamê tê guhertin...'; |
| | | $messages['receiptsent'] = 'Rapora şandina serkeftî'; |
| | | $messages['errorsendingreceipt'] = 'Rapor nehat şandin'; |
| | | $messages['nodeletelastidentity'] = 'Nikarî vê nasnameyê jê bibî. Ew ya dawî ye.'; |
| | | $messages['addsubfolderhint'] = 'Ev peldank wê wekî binepeldanka ya heyî bê afirandin'; |
| | | |
| | | ?> |
| | |
| | | $labels['username'] = 'Gebruikersnaam'; |
| | | $labels['password'] = 'Wachtwoord'; |
| | | $labels['server'] = 'Server'; |
| | | $labels['login'] = 'Login'; |
| | | $labels['login'] = 'Inloggen'; |
| | | $labels['logout'] = 'Uitloggen'; |
| | | $labels['mail'] = 'E-Mail'; |
| | | $labels['settings'] = 'Persoonlijke Instellingen'; |
| | |
| | | $labels['subject'] = 'Onderwerp'; |
| | | $labels['from'] = 'Afzender'; |
| | | $labels['to'] = 'Ontvanger'; |
| | | $labels['cc'] = 'kopie'; |
| | | $labels['cc'] = 'Kopie'; |
| | | $labels['bcc'] = 'Bcc'; |
| | | $labels['replyto'] = 'Antwoord-aan'; |
| | | $labels['date'] = 'Datum'; |
| | |
| | | $labels['savemessage'] = 'Bewaar als concept'; |
| | | $labels['sendmessage'] = 'Verstuur het bericht nu'; |
| | | $labels['addattachment'] = 'Voeg een bijlage toe'; |
| | | $labels['charset'] = 'karakterset'; |
| | | $labels['charset'] = 'Karakterset'; |
| | | $labels['editortype'] = 'Opmaak'; |
| | | $labels['returnreceipt'] = 'Ontvangstbevestiging'; |
| | | $labels['checkspelling'] = 'Controleer spelling'; |
| | |
| | | $labels['addcc'] = 'Dodaj Cc'; |
| | | $labels['addbcc'] = 'Dodaj Bcc'; |
| | | $labels['addreplyto'] = 'Dodaj Reply-To'; |
| | | $labels['mdnrequest'] = 'Nadawca poprosił o potwierdzenie przeczytania tej wiadomości. Czy chcesz go powiadomić?'; |
| | | $labels['receiptread'] = 'Potwierdzenie odbioru'; |
| | | $labels['mdnrequest'] = 'Nadawca zażądał potwierdzenia przeczytania tej wiadomości. Czy chcesz go powiadomić?'; |
| | | $labels['receiptread'] = 'Potwierdzenie otrzymania'; |
| | | $labels['yourmessage'] = 'To jest potwierdzenie dostarczenia Twojej wiadomości'; |
| | | $labels['receiptnote'] = 'Uwaga: To potwierdzenie dostarczenia wiadomości oznacza tylko, że wiadomość została wyświetlona na komputerze adresata. Nie ma żadnej gwarancji, że odbiorca przeczytał czy też zrozumiał treść wiadomości.'; |
| | | $labels['name'] = 'Nazwa'; |
| | |
| | | $messages['deletefolderconfirm'] = 'Czy na pewno chcesz usunąć wybrany folder?'; |
| | | $messages['purgefolderconfirm'] = 'Czy na pewno chcesz usunąć wszystkie wiadomości w tym folderze?'; |
| | | $messages['formincomplete'] = 'Uzupełnij formularz!'; |
| | | $messages['noemailwarning'] = 'Wpisz poprawny adres e-mail!'; |
| | | $messages['nonamewarning'] = 'Podaj imię!'; |
| | | $messages['noemailwarning'] = 'Podaj poprawny adres e-mail!'; |
| | | $messages['nonamewarning'] = 'Podaj nazwę!'; |
| | | $messages['nopagesizewarning'] = 'Podaj poprawną wartość!'; |
| | | $messages['norecipientwarning'] = 'Podaj co najmniej jednego odbiorcę!'; |
| | | $messages['nosubjectwarning'] = 'Nie podano tematu wiadomości. Czy chcesz go teraz uzupełnić?'; |
| | |
| | | $labels['name'] = 'Visa namn'; |
| | | $labels['firstname'] = 'Förnamn'; |
| | | $labels['surname'] = 'Efternamn'; |
| | | $labels['email'] = 'Meddelande'; |
| | | $labels['email'] = 'E-post'; |
| | | $labels['addcontact'] = 'Lägg till ny kontakt'; |
| | | $labels['editcontact'] = 'Redigera kontakt'; |
| | | $labels['edit'] = 'Redigera'; |
| | |
| | | $labels['sortasc'] = 'Sortera stigande'; |
| | | $labels['sortdesc'] = 'Sortera fallande'; |
| | | |
| | | ?> |
| | | ?> |
| | |
| | | $labels['inbox'] = '收件箱'; |
| | | $labels['drafts'] = '草稿箱'; |
| | | $labels['sent'] = '已发送邮件'; |
| | | $labels['trash'] = '垃圾邮件'; |
| | | $labels['junk'] = '回收箱'; |
| | | $labels['trash'] = '回收站'; |
| | | $labels['junk'] = '垃圾邮件'; |
| | | $labels['subject'] = '主题'; |
| | | $labels['from'] = '发件人'; |
| | | $labels['to'] = '收件人'; |
| | |
| | | $labels['quicksearch'] = '快速查找'; |
| | | $labels['resetsearch'] = '重新查找'; |
| | | $labels['compose'] = '写新邮件'; |
| | | $labels['sendmessage'] = '立即发送'; |
| | | $labels['savemessage'] = '暂存至草稿箱'; |
| | | $labels['sendmessage'] = '立即发送'; |
| | | $labels['addattachment'] = '添加附件'; |
| | | $labels['charset'] = '字符集'; |
| | | $labels['editortype'] = '编辑器类型'; |
| | |
| | | $labels['setdefault'] = '默认值'; |
| | | $labels['language'] = '语言'; |
| | | $labels['timezone'] = '时区'; |
| | | $labels['pagesize'] = '第页邮件数量'; |
| | | $labels['pagesize'] = '每页邮件数量'; |
| | | $labels['signature'] = '签名'; |
| | | $labels['dstactive'] = '夏令时'; |
| | | $labels['htmleditor'] = '使用HTML编辑器'; |
| | |
| | | $messages['copyerror'] = '无法复制地址'; |
| | | $messages['sourceisreadonly'] = '源地址为只读'; |
| | | $messages['errorsavingcontact'] = '无法保存联系人的地址'; |
| | | $messages['movingmessage'] = '移动邮件到...'; |
| | | $messages['receiptsent'] = '成功发送了一个已读回执'; |
| | | $messages['errorsendingreceipt'] = '无法发送回执'; |
| | | $messages['nodeletelastidentity'] = '无法删除这个身份,这是最后一个。'; |
| | | $messages['addsubfolderhint'] = '文件夹将被作为所选中文件夹的子目录'; |
| | | |
| | | ?> |
| | |
| | | // similar as in program/steps/mail/show.inc |
| | | $MESSAGE = array('UID' => $msg_uid); |
| | | $MESSAGE['headers'] = &$IMAP->get_headers($msg_uid); |
| | | $MESSAGE['structure'] = &$IMAP->get_structure($msg_uid); |
| | | $MESSAGE['structure'] = &$IMAP->get_structure($msg_uid); |
| | | |
| | | if (!empty($MESSAGE['headers']->charset)) |
| | | $IMAP->set_charset($MESSAGE['headers']->charset); |
| | | |
| | | $MESSAGE['subject'] = $IMAP->decode_header($MESSAGE['headers']->subject); |
| | | $MESSAGE['parts'] = $IMAP->get_mime_numbers($MESSAGE['structure']); |
| | | |
| | |
| | | { |
| | | while ($sql_arr = $result->iterate()) |
| | | if ($sql_arr['email']) |
| | | $a_contacts[] = format_email_recipient($sql_arr['email'], JQ($sql_arr['name'])); |
| | | $a_contacts[] = format_email_recipient($sql_arr['email'], $sql_arr['name']); |
| | | } |
| | | if (isset($CONFIG['ldap_public'])) |
| | | { |
| | |
| | | $email = $results->records[$i]['email']; |
| | | $name = $results->records[$i]['name']; |
| | | |
| | | $a_contacts[] = format_email_recipient($email, JQ($name)); |
| | | $a_contacts[] = format_email_recipient($email, $name); |
| | | } |
| | | } |
| | | $LDAP->close(); |
| | |
| | | $quotation = ''; |
| | | $q = 0; |
| | | |
| | | if (preg_match('/^(>+\s*)/', $line, $regs)) |
| | | if (preg_match('/^(>+\s*)+/', $line, $regs)) |
| | | { |
| | | $q = strlen(preg_replace('/\s/', '', $regs[1])); |
| | | $line = substr($line, strlen($regs[1])); |
| | | $q = strlen(preg_replace('/\s/', '', $regs[0])); |
| | | $line = substr($line, strlen($regs[0])); |
| | | |
| | | if ($q > $quote_level) |
| | | $quotation = str_repeat('<blockquote>', $q - $quote_level); |
| | |
| | | // additional headers |
| | | $headers['Message-ID'] = $message_id; |
| | | $headers['X-Sender'] = $from; |
| | | $headers['Received'] = wordwrap('from ' . |
| | | (isset($_SERVER['HTTP_X_FORWARDED_FOR']) ? |
| | | gethostbyaddr($_SERVER['HTTP_X_FORWARDED_FOR']).' ['.$_SERVER['HTTP_X_FORWARDED_FOR'].'] via ' : '') . |
| | | gethostbyaddr($_SERVER['REMOTE_ADDR']).' ['.$_SERVER['REMOTE_ADDR'].'] with ' . |
| | | $_SERVER['SERVER_PROTOCOL'].' ('.$_SERVER['REQUEST_METHOD'].'); ' . date('r'), |
| | | 69, rcmail_header_delm() . "\t"); |
| | | |
| | | if ($CONFIG['http_received_header']) |
| | | { |
| | | $nldlm = rcmail_header_delm() . "\t"; |
| | | $headers['Received'] = wordwrap('from ' . (isset($_SERVER['HTTP_X_FORWARDED_FOR']) ? |
| | | gethostbyaddr($_SERVER['HTTP_X_FORWARDED_FOR']).' ['.$_SERVER['HTTP_X_FORWARDED_FOR'].']'.$nldlm.' via ' : '') . |
| | | gethostbyaddr($_SERVER['REMOTE_ADDR']).' ['.$_SERVER['REMOTE_ADDR'].']'.$nldlm.'with ' . |
| | | $_SERVER['SERVER_PROTOCOL'].' ('.$_SERVER['REQUEST_METHOD'].'); ' . date('r'), |
| | | 69, $nldlm); |
| | | } |
| | | |
| | | if (!empty($CONFIG['useragent'])) |
| | | $headers['User-Agent'] = $CONFIG['useragent']; |
| | |
| | | // add a plain text version of the e-mail as an alternative part. |
| | | $h2t = new html2text($message_body); |
| | | $plainTextPart = wordwrap($h2t->get_text(), 998, "\r\n", true); |
| | | if (!strlen($plainTextPart)) |
| | | { |
| | | // empty message body breaks attachment handling in drafts |
| | | $plainTextPart = "\r\n"; |
| | | } |
| | | $MAIL_MIME->setTXTBody(html_entity_decode($plainTextPart, ENT_COMPAT, 'utf-8')); |
| | | |
| | | // look for "emoticon" images from TinyMCE and copy into message as attachments |
| | |
| | | { |
| | | $message_body = wordwrap($message_body, 75, "\r\n"); |
| | | $message_body = wordwrap($message_body, 998, "\r\n", true); |
| | | if (!strlen($message_body)) |
| | | { |
| | | // empty message body breaks attachment handling in drafts |
| | | $message_body = "\r\n"; |
| | | } |
| | | $MAIL_MIME->setTXTBody($message_body, FALSE, TRUE); |
| | | } |
| | | |
| | |
| | | $MESSAGE = array('UID' => get_input_value('_uid', RCUBE_INPUT_GET)); |
| | | $MESSAGE['headers'] = $IMAP->get_headers($MESSAGE['UID']); |
| | | |
| | | // set message charset as default |
| | | if (!empty($MESSAGE['headers']->charset)) |
| | | $IMAP->set_charset($MESSAGE['headers']->charset); |
| | | |
| | | // go back to list if message not found (wrong UID) |
| | | if (!$MESSAGE['headers']) |
| | | { |
| | |
| | | | program/steps/mail/viewsource.inc | |
| | | | | |
| | | | This file is part of the RoundCube Webmail client | |
| | | | Copyright (C) 2005-2007, RoundCube Dev. - Switzerland | |
| | | | Copyright (C) 2005-2008, RoundCube Dev. - Switzerland | |
| | | | Licensed under the GNU GPL | |
| | | | | |
| | | | PURPOSE: | |
| | |
| | | |
| | | // similar code as in program/steps/mail/get.inc |
| | | if ($uid = get_input_value('_uid', RCUBE_INPUT_GET)) |
| | | { |
| | | header('Content-Type: text/plain'); |
| | | //@ob_end_clean(); |
| | | { |
| | | $headers = $IMAP->get_headers($uid); |
| | | $charset = $headers->charset ? $headers->charset : $IMAP->default_charset; |
| | | header("Content-Type: text/plain; charset={$charset}"); |
| | | $IMAP->print_raw_body($uid); |
| | | } |
| | | } |
| | | else |
| | | { |
| | | raise_error(array('code' => 500, |
| | | 'type' => 'php', |
| | | 'message' => 'Message UID '.$uid.' not found'), |
| | | TRUE, |
| | | TRUE); |
| | | } |
| | | { |
| | | raise_error(array( |
| | | 'code' => 500, |
| | | 'type' => 'php', |
| | | 'message' => 'Message UID '.$uid.' not found'), |
| | | true, |
| | | true); |
| | | } |
| | | |
| | | exit; |
| | | ?> |
| | |
| | | $select_timezone = new select(array('name' => '_timezone', 'id' => $field_id)); |
| | | $select_timezone->add('(GMT -11:00) Midway Island, Samoa', '-11'); |
| | | $select_timezone->add('(GMT -10:00) Hawaii', '-10'); |
| | | $select_timezone->add('(GMT -9:30) Marquesas Islands', '-9.5'); |
| | | $select_timezone->add('(GMT -9:00) Alaska', '-9'); |
| | | $select_timezone->add('(GMT -8:00) Pacific Time (US/Canada)', '-8'); |
| | | $select_timezone->add('(GMT -7:00) Mountain Time (US/Canada)', '-7'); |
| | | $select_timezone->add('(GMT -6:00) Central Time (US/Canada), Mexico City', '-6'); |
| | | $select_timezone->add('(GMT -5:00) Eastern Time (US/Canada), Bogota, Lima', '-5'); |
| | | $select_timezone->add('(GMT -4:00) Atlantic Time (Canada), Caracas, La Paz', '-4'); |
| | | $select_timezone->add('(GMT -3:00) Brazil, Buenos Aires, Georgetown', '-3'); |
| | | $select_timezone->add('(GMT -4:30) Caracas', '-4.5'); |
| | | $select_timezone->add('(GMT -4:00) Atlantic Time (Canada), La Paz', '-4'); |
| | | $select_timezone->add('(GMT -3:30) Nfld Time (Canada), Nfld, S. Labador', '-3.5'); |
| | | $select_timezone->add('(GMT -3:00) Brazil, Buenos Aires, Georgetown', '-3'); |
| | | $select_timezone->add('(GMT -2:00) Mid-Atlantic', '-2'); |
| | | $select_timezone->add('(GMT -1:00) Azores, Cape Verde Islands', '-1'); |
| | | $select_timezone->add('(GMT) Western Europe, London, Lisbon, Casablanca', '0'); |
| | |
| | | $select_timezone->add('(GMT +5:30) Chennai, Kolkata, Mumbai, New Delhi', '5.5'); |
| | | $select_timezone->add('(GMT +5:45) Kathmandu', '5.75'); |
| | | $select_timezone->add('(GMT +6:00) Almaty, Dhaka, Colombo', '6'); |
| | | $select_timezone->add('(GMT +6:30) Cocos Islands, Myanmar', '6.5'); |
| | | $select_timezone->add('(GMT +7:00) Bangkok, Hanoi, Jakarta', '7'); |
| | | $select_timezone->add('(GMT +8:00) Beijing, Perth, Singapore, Taipei', '8'); |
| | | $select_timezone->add('(GMT +8:45) Caiguna, Eucla, Border Village', '8.75'); |
| | | $select_timezone->add('(GMT +9:00) Tokyo, Seoul, Yakutsk', '9'); |
| | | $select_timezone->add('(GMT +9:30) Adelaide, Darwin', '9.5'); |
| | | $select_timezone->add('(GMT +10:00) EAST/AEST: Sydney, Guam, Vladivostok', '10'); |
| | | $select_timezone->add('(GMT +10:30) New South Wales', '10.5'); |
| | | $select_timezone->add('(GMT +11:00) Magadan, Solomon Islands', '11'); |
| | | $select_timezone->add('(GMT +11:30) Norfolk Island', '11.5'); |
| | | $select_timezone->add('(GMT +12:00) Auckland, Wellington, Kamchatka', '12'); |
| | | $select_timezone->add('(GMT +12:45) Chatham Islands', '12.75'); |
| | | $select_timezone->add('(GMT +13:00) Tonga, Pheonix Islands', '13'); |
| | | $select_timezone->add('(GMT +14:00) Kiribati', '14'); |
| | | |
| | |
| | | // subscribe to one or more mailboxes |
| | | if ($_action=='subscribe') |
| | | { |
| | | if ($mboxes = get_input_value('_mboxes', RCUBE_INPUT_POST)) |
| | | $IMAP->subscribe($mboxes); |
| | | if ($mbox = get_input_value('_mbox', RCUBE_INPUT_POST)) |
| | | $IMAP->subscribe(array($mbox)); |
| | | |
| | | if ($OUTPUT->ajax_call) |
| | | $OUTPUT->remote_response('// subscribed'); |
| | |
| | | // unsubscribe one or more mailboxes |
| | | else if ($_action=='unsubscribe') |
| | | { |
| | | if ($mboxes = get_input_value('_mboxes', RCUBE_INPUT_POST)) |
| | | $IMAP->unsubscribe($mboxes); |
| | | if ($mbox = get_input_value('_mbox', RCUBE_INPUT_POST)) |
| | | $IMAP->unsubscribe(array($mbox)); |
| | | |
| | | if ($OUTPUT->ajax_call) |
| | | $OUTPUT->remote_response('// unsubscribed'); |
New file |
| | |
| | | User-agent: * |
| | | Disallow: / |
| | |
| | | padding: 1px; |
| | | padding-left: 3px; |
| | | padding-right: 3px; |
| | | color: #333333; |
| | | background-color: #ffffff; |
| | | border: 1px solid #666666; |
| | | } |
| | |
| | | /* This file contains the CSS data for the editable area(iframe) of TinyMCE */
|
| | | /* You can extend this CSS by adding your own CSS file with the the content_css option */
|
| | |
|
| | | body, td, pre {
|
| | | font-family: Verdana, Arial, Helvetica, sans-serif;
|
| | | font-size: 12px;
|
| | | }
|
| | |
|
| | | body {
|
| | | /* This file contains the CSS data for the editable area(iframe) of TinyMCE */ |
| | | /* You can extend this CSS by adding your own CSS file with the the content_css option */ |
| | | |
| | | body, td, pre { |
| | | font-family: Verdana, Arial, Helvetica, sans-serif; |
| | | font-size: 12px; |
| | | } |
| | | |
| | | body { |
| | | background-color: #FFFFFF; |
| | | margin-left: 4px; |
| | | margin-right: 4px; |
| | | margin-top: 2px; |
| | | }
|
| | |
|
| | | .mceVisualAid {
|
| | | border: 1px dashed #BBBBBB !important;
|
| | | }
|
| | |
|
| | | div.mceVisualAid {
|
| | | background-image:url('../images/spacer.gif');
|
| | | visibility: visible !important;
|
| | | }
|
| | |
|
| | | .mceItemAnchor {
|
| | | width: 12px;
|
| | | line-height: 6px;
|
| | | overflow: hidden;
|
| | | padding-left: 12px;
|
| | | background-image: url('../images/anchor_symbol.gif');
|
| | | background-position: bottom;
|
| | | background-repeat: no-repeat;
|
| | | }
|
| | |
|
| | | /* Important is needed in Gecko browsers inorder to style links */
|
| | | /*
|
| | | a {
|
| | | color: green !important;
|
| | | }
|
| | | */
|
| | |
|
| | | /* Style selection range colors in Gecko browsers */
|
| | | /*
|
| | | ::-moz-selection {
|
| | | background-color: red;
|
| | | color: green;
|
| | | }
|
| | | */
|
| | |
|
| | | /* MSIE specific */
|
| | |
|
| | | * html body {
|
| | | scrollbar-3dlight-color: #F0F0EE;
|
| | | scrollbar-arrow-color: #676662;
|
| | | scrollbar-base-color: #F0F0EE;
|
| | | scrollbar-darkshadow-color: #DDDDDD;
|
| | | scrollbar-face-color: #E0E0DD;
|
| | | scrollbar-highlight-color: #F0F0EE;
|
| | | scrollbar-shadow-color: #F0F0EE;
|
| | | scrollbar-track-color: #F5F5F5;
|
| | | }
|
| | | } |
| | | |
| | |
| | | <div id="header"><roundcube:button command="mail" image="/images/roundcube_logo.png" alt="RoundCube Webmail" width="165" height="55" /></div> |
| | | <div id="header"><roundcube:button command="mail" image="/images/roundcube_logo.png" alt="RoundCube Webmail" /></div> |
| | | |
| | | <roundcube:object name="message" id="message" /> |
| | |
| | | left: 20px; |
| | | right: 20px; |
| | | bottom: 20px; |
| | | /* css hack for IE */ |
| | | width: expression((parseInt(document.documentElement.clientWidth)-40)+'px'); |
| | | height: expression((parseInt(document.documentElement.clientHeight)-100)+'px'); |
| | | } |
| | | |
| | | #mailcontframe |
| | |
| | | height: 100%; |
| | | border: 1px solid #999999; |
| | | background-color: #F9F9F9; |
| | | /* css hack for IE */ |
| | | height: expression(parseInt(document.getElementById('messagepartcontainer').offsetHeight)+'px'); |
| | | } |
| | | |
| | | |
| | |
| | | |
| | | #folder-manager |
| | | { |
| | | width: 540px; |
| | | width: 600px; |
| | | bottom: 140px; |
| | | overflow: auto; |
| | | border: 1px solid #999999; |
| | |
| | | #bottomboxes |
| | | { |
| | | position: absolute; |
| | | width: 540px; |
| | | width: 600px; |
| | | height: 120px; |
| | | left: 20px; |
| | | bottom: 20px; |
| | |
| | | |
| | | div.settingsbox |
| | | { |
| | | width: 540px; |
| | | width: 600px; |
| | | margin-top: 20px; |
| | | margin-bottom: 20px; |
| | | border: 1px solid #999999; |
| | |
| | | |
| | | #subscription-table thead td.name |
| | | { |
| | | width: 240px; |
| | | width: 250px; |
| | | } |
| | | |
| | | #subscription-table thead td.msgcount |
| | | { |
| | | width: 70px; |
| | | width: 90px; |
| | | } |
| | | |
| | | #subscription-table thead td.subscribed |
| | | { |
| | | width: 60px; |
| | | } |
| | | |
| | | #subscription-table tbody td.msgcount, |
| | | #subscription-table tbody td.subscribed |
| | | { |
| | | padding-left: 18px; |
| | | } |
| | | |
| | | #subscription-table thead td.rename, |
| | | #subscription-table thead td.delete |
| | | { |
| | | width: 20px; |
| | | text-align: center; |
| | | width: 90px; |
| | | } |
| | |
| | | </head> |
| | | <body> |
| | | |
| | | <img src="/images/roundcube_logo.png" width="165" height="55" border="0" alt="<roundcube:object name='productname' />" hspace="12" vspace="2"/> |
| | | <img src="/images/roundcube_logo.png" border="0" alt="<roundcube:object name='productname' />" style="margin:2px 12px" /> |
| | | |
| | | <roundcube:object name="message" id="message" /> |
| | | |
| | |
| | | </head> |
| | | <body> |
| | | |
| | | <div id="header"><img src="/images/roundcube_logo_print.gif" width="182" height="50" alt="RoundCube Webmail" /></div> |
| | | <div id="header"><img src="/images/roundcube_logo_print.gif" alt="<roundcube:object name="productname" />" /></div> |
| | | |
| | | <div id="messageframe"> |
| | | <roundcube:object name="messageHeaders" class="headers-table" cellspacing="0" cellpadding="2" /> |