You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
roundcubemail/program/lib/Roundcube
Aleksander Machniak f7832a1a26 Removed 'delete_always' option (#6782) 5 years ago
..
cache PHPRedis 5 compat. fix in session handler 5 years ago
db Added flag to disable server certificate validation via Mysql DSN argument (#6848) 5 years ago
session PHPRedis 5 compat. fix in session handler 5 years ago
spellchecker Remove year(s) from copyright headers + some cleanup 6 years ago
README.md Mention Kolab/Net_LDAP3 as a dependency 6 years ago
bootstrap.php Switch to IDNA2008 variant (#6806) 6 years ago
html.php Remove year(s) from copyright headers + some cleanup 6 years ago
rcube.php Support PECL memcached extension as a session and cache storage driver (experimental) 6 years ago
rcube_addressbook.php Remove year(s) from copyright headers + some cleanup 6 years ago
rcube_base_replacer.php Remove year(s) from copyright headers + some cleanup 6 years ago
rcube_browser.php Remove year(s) from copyright headers + some cleanup 6 years ago
rcube_cache.php Remove year(s) from copyright headers + some cleanup 6 years ago
rcube_charset.php Remove language code from charset name as per the RFC2231.5 6 years ago
rcube_config.php Added 'keyservers' option to define list of HKP servers for Enigma/Mailvelope (#6326) 6 years ago
rcube_contacts.php Fix implode() wrong parameter order (#6866) 5 years ago
rcube_content_filter.php Remove year(s) from copyright headers + some cleanup 6 years ago
rcube_csv2vcard.php Remove year(s) from copyright headers + some cleanup 6 years ago
rcube_db.php Fix implode() wrong parameter order (#6866) 5 years ago
rcube_enriched.php Remove year(s) from copyright headers + some cleanup 6 years ago
rcube_html2text.php Fix bug where bold/strong text was converted to upper-case on html-to-text conversion (6758) 6 years ago
rcube_image.php Fix bug in converting multi-page Tiff images into Jpeg (#6824) 5 years ago
rcube_imap.php Removed 'delete_always' option (#6782) 5 years ago
rcube_imap_cache.php Support $HasAttachment/$HasNoAttachment keywords (#6201) 6 years ago
rcube_imap_generic.php Enigma: Fix bug where signature verification could have been skipped for some message structures (#6838) 5 years ago
rcube_imap_search.php Remove year(s) from copyright headers + some cleanup 6 years ago
rcube_ldap.php CS fixes 6 years ago
rcube_ldap_generic.php Remove year(s) from copyright headers + some cleanup 6 years ago
rcube_message.php Remove year(s) from copyright headers + some cleanup 6 years ago
rcube_message_header.php Remove year(s) from copyright headers + some cleanup 6 years ago
rcube_message_part.php Remove year(s) from copyright headers + some cleanup 6 years ago
rcube_mime.php Small code improvement 5 years ago
rcube_mime_decode.php Remove year(s) from copyright headers + some cleanup 6 years ago
rcube_output.php Remove year(s) from copyright headers + some cleanup 6 years ago
rcube_plugin.php Remove a unused variable in rcube_plugin::include_stylesheet() (#6832) 5 years ago
rcube_plugin_api.php Fix so an error is logged when more than one attachment plugin has been enabled, initialize the first one (#6735) 6 years ago
rcube_result_index.php Remove year(s) from copyright headers + some cleanup 6 years ago
rcube_result_multifolder.php Remove year(s) from copyright headers + some cleanup 6 years ago
rcube_result_set.php Remove year(s) from copyright headers + some cleanup 6 years ago
rcube_result_thread.php Remove year(s) from copyright headers + some cleanup 6 years ago
rcube_session.php Update some code documentation 6 years ago
rcube_smtp.php Skip RSET after authentication failure and QUIT 6 years ago
rcube_spellchecker.php Remove year(s) from copyright headers + some cleanup 6 years ago
rcube_storage.php Remove year(s) from copyright headers + some cleanup 6 years ago
rcube_string_replacer.php Remove year(s) from copyright headers + some cleanup 6 years ago
rcube_text2html.php Remove year(s) from copyright headers + some cleanup 6 years ago
rcube_tnef_decoder.php Fix PHP 7.4 deprecation: array/string curly braces access (#6884) 5 years ago
rcube_user.php Remove year(s) from copyright headers + some cleanup 6 years ago
rcube_utils.php Replace function alias: getallheaders() -> apache_request_headers() 5 years ago
rcube_vcard.php Fix bug in parsing vCard data using PHP 7.3 due to an invalid regexp (#6744) 6 years ago
rcube_washtml.php Workaround more invalid HTML cases parsed incorrectly by Mastermind/HTML5 (#6713) 6 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 5.4 or greater including:

  • PCRE, DOM, JSON, Session, Sockets, OpenSSL, Mbstring (required)
  • PHP PDO with driver for either MySQL, PostgreSQL, SQL Server, Oracle or SQLite (required)
  • Libiconv, Zip, Fileinfo, Intl, 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 following PEAR libraries:

  • Mail_Mime 1.8.1 or newer
  • Net_SMTP 1.8.1 or newer
  • Net_Socket 1.0.12 or newer
  • Net_IDNA2 0.1.1 or newer
  • Auth_SASL 1.0.6 or newer
  • Kolab/Net_LDAP3 1.0.6 or newer (for LDAP addressbook)

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