RoundCube Webmail
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
Aleksander Machniak e69cd1b5a6 Fix extra leading newlines in plain text converted from HTML (#8973) 2 years ago
..
cache Pass port 0 as integer to Redis::connect() with unix socket (#8749) 3 years ago
db Removed support for MS SQL Server and Oracle (#7854) 3 years ago
session Fix PHP8.1 warnings (#8667) 3 years ago
spellchecker Fix various PHP 8.2 warnings 3 years ago
README.md Removed support for MS SQL Server and Oracle (#7854) 3 years ago
bootstrap.php Master is 1.7-git 3 years ago
html.php Fix PHP8 warning (#8891) 3 years ago
rcube.php Use precise session lifetime for garbage collector (#8671) 3 years ago
rcube_addressbook.php Fix possible error in compare_search_value() (#8823) 3 years ago
rcube_addresses.php Improve preciseness of some PHPdoc annotations (#7809) 5 years ago
rcube_base_replacer.php Short array syntax, CS fixes 5 years ago
rcube_browser.php PHP8: Fix various issues 5 years ago
rcube_cache.php Short array syntax, CS fixes 5 years ago
rcube_charset.php Fix support for Windows-31J charset (#8869) 3 years ago
rcube_config.php add imap and smtp host in legacy config options (#8467) 3 years ago
rcube_contacts.php Fix importing contacts with no email address (#8227) 4 years ago
rcube_content_filter.php Fix PHP 8.1 deprecation warnings 4 years ago
rcube_csv2vcard.php Remove use of unreliable charset detection (#8344) 3 years ago
rcube_db.php Fix possible PHP warning (#8793) 3 years ago
rcube_enriched.php CS fixes, short array syntax, PHP8 fixes, tests 5 years ago
rcube_html2text.php Fix extra leading newlines in plain text converted from HTML (#8973) 2 years ago
rcube_image.php Fix so PHP warnings are ignored when resizing a malformed image attachment (#8387) 4 years ago
rcube_imap.php Fix PHP 8.1 warnings, make BODYSTRUCTURE parser less fragile (#8803) 3 years ago
rcube_imap_cache.php Removed support for MS SQL Server and Oracle (#7854) 3 years ago
rcube_imap_generic.php Fix PHP 8.1 warning (#8804) 3 years ago
rcube_imap_search.php Spelling (#8001) 4 years ago
rcube_ldap.php Fix bug where LDAP (fulltext) search didn't work without 'search_fields' in config (#8874) 2 years ago
rcube_ldap_generic.php PHP8 fixes, CS fixes, short array syntax, tests 5 years ago
rcube_message.php Enigma: WOAT Support (#8626) 3 years ago
rcube_message_header.php Fix PHP Deprecated: Creation of dynamic property rcube_message_header::$bcc is deprecated 2 years ago
rcube_message_part.php Fix various "Creation of dynamic property is deprecated" warnings 3 years ago
rcube_mime.php Fix various PHP8 warnings (#8392) 4 years ago
rcube_mime_decode.php Use ?? operator where applicable 4 years ago
rcube_output.php Use ?? operator where applicable 4 years ago
rcube_plugin.php Store uploads metadata in a separate sql database table instead of a session (#8415) 3 years ago
rcube_plugin_api.php Fix a couple of PHP8 warnings (#8420) 4 years ago
rcube_result_index.php Fix a PHP warning (#8743) 3 years ago
rcube_result_multifolder.php Fix PHPDoc 3 years ago
rcube_result_set.php Use ?? operator where applicable 4 years ago
rcube_result_thread.php Use ?? operator where applicable 4 years ago
rcube_session.php Fix bug where session could time out if DB and PHP timezone were different (#8303) 3 years ago
rcube_smtp.php Unify SMTP errors handling 3 years ago
rcube_spellchecker.php Improve handling of available spellchecker languages/dialects 3 years ago
rcube_spoofchecker.php Fix so "Found unconstructed Spoofchecker" error is not fatal (#8537) 3 years ago
rcube_storage.php Purge also subfolders of Trash (and/or messages in them) on logout (#1037) 4 years ago
rcube_string_replacer.php Fix various PHP 8.1 warnings (#8584) 3 years ago
rcube_text2html.php Improve/Fix wrapping of plain text messages on preview and reply (#6974, #8391, #8378, #8289) 4 years ago
rcube_tnef_decoder.php Support displaying RTF content (including encapsulated HTML) from a TNEF attachment 4 years ago
rcube_uploads.php Store uploads metadata in a separate sql database table instead of a session (#8415) 3 years ago
rcube_user.php Store uploads metadata in a separate sql database table instead of a session (#8415) 3 years ago
rcube_utils.php Add config option for request uri field (#8738) (#8770) 3 years ago
rcube_vcard.php Fix undefined variable (#8831) 3 years ago
rcube_washtml.php Fix bug where multiline data:image URI's in emails were stripped from the message on display (#8613) 3 years ago

README.md

Roundcube Framework

INTRODUCTION

The Roundcube Framework is the basic library used for the Roundcube Webmail application. It is an extract of classes providing the core functionality for an email system. They can be used individually or as package for the following tasks:

  • IMAP mailbox access with optional caching
  • MIME message handling
  • Email message creation and sending through SMTP
  • General caching utilities using the local database
  • Database abstraction using PDO
  • VCard parsing and writing

REQUIREMENTS

PHP Version 7.3 or greater including:

  • PCRE, DOM, JSON, Session, Sockets, OpenSSL, Mbstring, Filter, Ctype, Intl (required)
  • PHP PDO with driver for either MySQL, PostgreSQL, or SQLite (required)
  • Iconv, Zip, Fileinfo, Exif (recommended)
  • LDAP for LDAP addressbook support (optional)

INSTALLATION

Copy all files of this directory to your project or install it in the default include_path directory of your webserver. Some classes of the framework require external libraries. See composer.json-dist for the list of required packages.

USAGE

The Roundcube Framework provides a bootstrapping file which registers an autoloader and sets up the environment necessary for the Roundcube classes. In order to make use of the framework, simply include the bootstrap.php file from this directory in your application and start using the classes by simply instantiating them.

If you wanna use more complex functionality like IMAP access with database caching or plugins, the rcube singleton helps you loading the necessary files:

<?php

define('RCUBE_CONFIG_DIR',  '<path-to-config-directory>');
define('RCUBE_PLUGINS_DIR', '<path-to-roundcube-plugins-directory');

require_once '<path-to-roundcube-framework/bootstrap.php';

$rcube = rcube::get_instance(rcube::INIT_WITH_DB | rcube::INIT_WITH_PLUGINS);
$imap = $rcube->get_storage();

// do cool stuff here...

?>

LICENSE

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License (with exceptions for plugins) as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program. If not, see www.gnu.org/licenses/.

This file forms part of the Roundcube Webmail Framework for which the following exception is added: Plugins which merely make function calls to the Roundcube Webmail Framework, and for that purpose include it by reference shall not be considered modifications of the software.

If you wish to use this file in another project or create a modified version that will not be part of the Roundcube Webmail Framework, you may remove the exception above and use this source code under the original version of the license.

For more details about licensing and the exceptions for skins and plugins see roundcube.net/license

CONTACT

For bug reports or feature requests please refer to the tracking system at Github or subscribe to our mailing list. See roundcube.net/support for details.

You're always welcome to send a message to the project admins: hello(at)roundcube(dot)net