Commit Graph

951 Commits (3fb36a11fe58cca1a12bd5653d70d484f997807d)

Author SHA1 Message Date
Thomas Bruederli eea11ecdde Move rcube_installer class to include/rcmail_installer in order to remain accessible by the update script even if the installer directory was removed 10 years ago
Aleksander Machniak ed763b2859 Plugin API: Added message_saved hook (#1489752) 10 years ago
Thomas Bruederli 26b5200322 Consider search scope (and changes) for filter searches + disable folder operation commands in multi-folder search mode (#1485234) 10 years ago
Thomas B. 8087b13d20 Merge pull request #176 from marcoliverteschke/master
Limit list_tables() and list_cols() to current schema
10 years ago
Aleksander Machniak b58abd86c5 email:main -> email:pref 10 years ago
Thomas Bruederli f97fe4ee08 Allow to search in multiple folders with rcube_imap::search_once(); always set folder property in message header struct 10 years ago
Marc-Oliver Teschke 78a58162d8 When checking if DB schema is up-to-date, limit the checks to tables in our current schema. Otherwise installer might return false positives when DB user has access to multiple schemas.
Signed-off-by: Marc-Oliver Teschke <teschke@planwerk6.de>
10 years ago
Aleksander Machniak faa9c89236 Make sure mbstring susbtitute character is set to empty string in rcube_charset::clean() 10 years ago
Aleksander Machniak 0ca75d4880 Fix messages index cache update under some conditions (e.g. proxy) (#1489756) 10 years ago
Aleksander Machniak f96fec6b8c Fix "washing" of unicoded style attributes (#1489777) 10 years ago
Aleksander Machniak 8d34b9dce3 Refactored storage properties setting 10 years ago
Thomas Bruederli 39ca69b007 Merge branch 'master' of github.com:roundcube/roundcubemail 10 years ago
Thomas Bruederli a2cf7c41b9 Fix accidental key replacements 10 years ago
Aleksander Machniak bc088fdc90 Hide PHP Warning: substr_compare() The length cannot exceed initial string length 10 years ago
Thomas Bruederli 188247894f Make multi-folder message identifiers work with folders containing commas 10 years ago
Thomas Bruederli 94e797c1fb Consider sort order in UID sort mode of multi-folder search results 10 years ago
Thomas Bruederli 1e9a59ab89 Don't remove messages from list when moving to another folder in multi-folder search mode, just update the list 10 years ago
Thomas Bruederli 1d1fdcbf8c Fix splitting message identifiers into UID and folder values 10 years ago
Thomas Bruederli 1883048720 Optimize header fetching of multi-folder searches with natural (UID) sorting 10 years ago
Thomas Bruederli e8cb51669a More fixes for multi-folder search (#1485234) 10 years ago
Thomas Bruederli 66536974fe Merge branch 'dev-multi-folder-search' 10 years ago
Aleksander Machniak c77a8497e7 Fix again xdebug.max_nesting_level limit handling (#1489110) 10 years ago
Thomas Bruederli 509a6bc368 Allow to force-load plugins which have been loaded but not initialized before 10 years ago
Aleksander Machniak dc0b500e78 Removed redundant default_folders config option (#1489737)
Implemented IMAP SPECIAL-USE extension support [RFC6154] (#1487830)
10 years ago
Thomas Bruederli 0ee6328098 Replace &nbsp; entities when converting to text 10 years ago
Felix Eckhofer 30e6b980a6 Remove usage of $RCMAIL global variable 10 years ago
Felix Eckhofer ef721fc430 Add config variable 'proxy_whitelist'
HTTP headers X_FORWARDED_* and X_REAL_IP are only evaluated when
received from an IP listed in proxy_whitelist. Furthermore, only the
last non-trusted IP from X-Forwarded-For is used in place of the real
ip.

Without this, an attacker can easily spoof the headers and control the
result of the ip or ssl check.

This fixes several problems with [3a4c9f42], [4d480b36] and [a520f331] as
mentioned in #1489729.
10 years ago
Aleksander Machniak bee1e18966 Skip IMAP SORT request if folder is empty 10 years ago
Aleksander Machniak 8cc567c004 Drop support for PHP < 5.3.7 10 years ago
Aleksander Machniak 65f59fa3c6 Bump version number to 1.1-git 10 years ago
Thomas Bruederli 3980579602 Avoid useless connection attempts if host is empty 10 years ago
Thomas Bruederli 143ceff0d8 Implement ArrayAccess interface for conveniently accessing rcube_result_set as array 10 years ago
Thomas Bruederli 532c10669b Support structured data for autocompletion results; map 'type' attribute to CSS class for autocomplete list items 10 years ago
Aleksander Machniak 32c612c112 Fix some PDO::MYSQL_* constants (wrongly described in PHP manual before 5.3.21) 11 years ago
Aleksander Machniak 2b8f033bcb Improvement in handling invalid email address strings 11 years ago
Thomas Bruederli 128fd9861a Declare LOGIN commands to be anonymized in debug logging 11 years ago
Aleksander Machniak 5e8da2b5c9 Added toolbar button to move message in message view 11 years ago
Aleksander Machniak 03de1329ef Fix invalid X-Draft-Info on forwarded message draft (#1489587) 11 years ago
Thomas Bruederli ce20194266 Add setter for user object to rcube class; we already have getters for various user properties there 11 years ago
Aleksander Machniak 517c9f9a8d Fix directories check in Installer on Windows (#1489576)
Added rcube_utils::is_absolute_path() method
11 years ago
Thomas Bruederli eecd9ce0f9 Fix infinite loop when converting invalid html to plaintext (#1489566) 11 years ago
Thomas Bruederli e3857bb6c2 Fix infinite loop when converting invalid html to plaintext (#1489566) 11 years ago
Thomas Bruederli 774deaded1 Don't EVER log passwords 11 years ago
Aleksander Machniak 03f1691d47 Fixed Opera > 15 detection (#1489562) 11 years ago
Aleksander Machniak 3b1d410b4e Fix confusing intersect/filter methods naming/behaviour.
Removed rcube_result_index::intersect() method.
Changed rcube_result_index::filter() to filter in the same way as
rcube_result_thread::filter(), which means it actually does array_intersect().
Added tests scripts for rcube_result_index class.
11 years ago
Aleksander Machniak 5140c31064 Remove quotes around addressee name in case they are encoded.
Some clients encode quotes with name using base64/quoted-printable
encoding. Quotes were removed only for unencoded strings. Now also
encoded names are handled this way.
So, recipient/sender strings are displayed without quotes around
and e.g. saving to addressbook does not save these redundant quotes.
11 years ago
Aleksander Machniak c0dda0556c Allow single quote in style attribute values.
E.g. "font-family: 'Tahoma'" should not be removed.
11 years ago
Thomas Bruederli d93ce5cde2 Fix concurrent connections to IMAP while searching 11 years ago
Aleksander Machniak 357f9c831a Support SMTP socket context options via new config option 'smtp_conn_options' 11 years ago
Thomas Bruederli 1d6082c5e2 Fix thread/list mode update and display 11 years ago
Thomas Bruederli 9202e93b75 Fix slicing of returned search result headers 11 years ago
Thomas Bruederli 1bbf8c4886 - Make search scope selectable in UI
- Disable thread mode when searching over multiple folders
- Encode UID values for HTML message row identifiers
11 years ago
Thomas Bruederli 689a222170 Append per-folder search results to global index but only if it has matches 11 years ago
Thomas Bruederli ff3eb83492 Handle combined UID-folder identifiers in rcube_imap class 11 years ago
Thomas Bruederli 2c33c7e38b Make message pagenav (prev/next) work with sorted multi-folder search results 11 years ago
Thomas Bruederli 2baeac116a Fix sorting and paging in cross-folder searches 11 years ago
Thomas Bruederli d53b60406c Fix typos 11 years ago
Thomas Bruederli b6e24c6946 Minor improvements to threaded searching 11 years ago
Thomas 566747af00 First attempt to search in multiple folders; do it multi-threaded using pthreads if available 11 years ago
Thomas 628706acdc Prepare message list to display IMAP folder 11 years ago
Thomas Bruederli 5740b10bf8 Merge branch 'master' of github.com:roundcube/roundcubemail 11 years ago
Aleksander Machniak 531c4d896c Merge branch 'master' of github.com:roundcube/roundcubemail 11 years ago
Aleksander Machniak d924ebebf7 Fix compatibility with PHP 5.2 in html.php file (#1489514) 11 years ago
Thomas Bruederli 3786a48aeb * New option that write logs to per-user directories. (Debug) logs will only be written if a directory for the current user exists.
* The 'write_log' plugin hook now also supports the return property 'dir' to let plugins specify the log directory.
11 years ago
Aleksander Machniak 1fd6c43e19 Improve parse_thread so it uses much less recursive calls 11 years ago
Thomas Bruederli c5f6352710 Don't log error if no plugin config is found in global directories 11 years ago
Thomas Bruederli 8fc49e51a4 Use the right base_dn for listing records of the selected group 11 years ago
Thomas Bruederli aa581c2912 Fall back to load plugin config from global config directories only if no local config file exists 11 years ago
Takika d073a66db3 Load plugin config file from any configured path
Try to load plugin_name.inc.php config file from any pre-configured config path (rcube_config::path array) so webmail admins can move plugin configurations out of www root.
11 years ago
Thomas Bruederli e59471fcb9 Make sure prefs always is a valid array (otherwise causes fatal errors if language if not set) 11 years ago
Aleksander Machniak 4957530dec Fix an obvious mistake in search_once() casing wrong result when called
with empty 2nd argument (which also is not what should happen, should we return error?)
11 years ago
Aleksander Machniak 7a3c0c96c4 Use '0' instead of 0, to fix possible issue. 11 years ago
Aleksander Machniak 172302e2cf Small perf. improvement 11 years ago
Aleksander Machniak 0301d9347f CS fixes 11 years ago
Aleksander Machniak c7250749ab Fix issue where deprecated syntax for HTML lists was not handled properly (#1488768) 11 years ago
Aleksander Machniak 3e98f8be71 Add some code for S/MIME signatures verification, update Crypt_GPG package 11 years ago
Aleksander Machniak ac0fc383fd Fix so message flags modified by another client are applied on the list on refresh (#1485186) 11 years ago
Aleksander Machniak 6b2b2eca5f Remove deprecated functions (these listed in bc.php file) usage 11 years ago
Aleksander Machniak 54029ea959 Fix broken text/* attachments when forwarding/editing a message (#1489426) 11 years ago
Aleksander Machniak f6d23a8dce Fix PHP warning when 1st argument of parse_host() is not a string (#1489486) 11 years ago
Aleksander Machniak a520f331c1 Fix handling of X-Forwarded-For header with multiple addresses (#1489481) 11 years ago
Aleksander Machniak d19c0f9f30 In normalize_string() replace 4-byte unicode characters with '?' character.
These are not supported in default utf-8 charset on mysql,
the chance we'd need them in searching is very low.
11 years ago
Aleksander Machniak 029f7a157d Clarify update() result description, return boolean when ID didn't change 11 years ago
Aleksander Machniak 18b40c1a32 Fix issue where groups were not deleted when "Replace entire addressbook" option on contacts import was used (#1489420) 11 years ago
Aleksander Machniak 38bf401cf8 Fix performance of listing writeable folders (#1489451) 11 years ago
Thomas Bruederli ce6050cbbb Display version from composer.json even if not intstalled 11 years ago
Aleksander Machniak 5f31429de5 Fix preparation of message object before saving into the cache.
The bug cased e.g. displaying HTML content as plain text for messages
with Content-Type: text/html.
11 years ago
Aleksander Machniak 38f1f56920 Exec config_get hook also in rcube_config::all() (#1485981) 11 years ago
Aleksander Machniak ffec857b69 Fix handling of invalid closing tags in HTML messages (#1489446) 11 years ago
Aleksander Machniak 75a5c3554a Add possibility to overwrite a label/message in Roundcube's language package (#1489433) 11 years ago
Aleksander Machniak f13ae32aec Merge branch 'master' of github.com:roundcube/roundcubemail 11 years ago
Aleksander Machniak 978ff8794f Make sort_folder_list() public 11 years ago
Thomas Bruederli aef6ed4702 Add hook to notify plugins about message sending errors 11 years ago
Aleksander Machniak fdf79703e2 Merge branch 'master' of github.com:roundcube/roundcubemail 11 years ago
Aleksander Machniak 3373e4ae10 Fix browser version detection and failing tests 11 years ago
Aleksander Machniak 8328d0643e Code improvements and some unification with browser detection code in javascript 11 years ago
Aleksander Machniak 51fe045a04 Fix deprecated function usage 11 years ago
Thomas Bruederli fa635d8862 Make $force parameter only override the task check for required plugins (#1489437) 11 years ago
Thomas Bruederli f8101fff1e Accept text/html parts inside multipart/mixed parts as HTML contents 11 years ago
Aleksander Machniak 741ddced5b Fix Internet Explorer 11 detection (#1489434) 11 years ago
Thomas Bruederli 596301c10b Reset $part_orig_mimetype variable in for-loop. This avoids attachments along with message/rfc822 parts being listed twice 11 years ago
Thomas Bruederli cf31954661 Make require_plugin() force loading of the required plugin 11 years ago
Thomas Bruederli 85e60ada15 First version of the local storage compose data saving feature; some behavioral improvements and encrytion are still to be added 11 years ago
Aleksander Machniak 5983ee0f18 Fix categories/groups import from csv 11 years ago
Thomas Bruederli 884e1ecce9 Merge branch 'master' of github.com:roundcube/roundcubemail 11 years ago
Thomas Bruederli 1e7d1240ed Avoid rcube_session::reload() to reset previous changes. This fixes parallel attachment uploads that could get lost when using the database_attachments plugin 11 years ago
Aleksander Machniak 00de8ddf8d Small performance improvements, use str_replace() instead of strtr(),
do not parse query if there are no params to replace,
keep one instance of (potentially long) query less in memory
11 years ago
Aleksander Machniak 64cb702847 Remove duplicate languages on spellchecker langs list (#1489395) 11 years ago
Thomas Bruederli 4c02ef0c5c Fix function calls after refactoring 11 years ago
Aleksander Machniak b1f3c3bee8 Fixed saving contact birthday/anniversary dates before 01-01-1970 11 years ago
Thomas Bruederli fdb30f3279 Fix CSS selector modifications when nested in @media blocks 11 years ago
Thomas Bruederli 3ce7c56826 Applied the (modified) patch to extend configuration possibilities of LDAP address books as suggested in #1488753:
- Add option to specify arbitrary replacements of config options with attributes from the bound user
- Allow mapping of group object class => member attribute used in these objects
- Describe the 'member_filter' property for groups config
11 years ago
Thomas Bruederli 98b7b548a2 Merge branch 'dev-canned-responses'
Conflicts (resolved):
	skins/classic/includes/settingstabs.html
	skins/larry/includes/settingstabs.html
11 years ago
Thomas Bruederli 1ece73dc4e Fix mime.types parsing (#1489391) 11 years ago
Takika 03713dbf5d Add contact_listname hook to handle special name order
I can modify the addressbook_name_listing variable via main config or preferences_list_hook but I have to change the rcube_addressbook class to use the modified value. Some contry use special [name orders](http://en.wikipedia.org/wiki/Personal_name#Name_order) and we can handle them with this hook.
I changed the hook name to contact_listname as proposed by thomascube in the original PR#127.
11 years ago
Aleksander Machniak a649e0488a Fix failing vCard import when email address field contains spaces (#1489386) 11 years ago
Aleksander Machniak 99d59620e1 Join many preg_replace() calls into one 11 years ago
Aleksander Machniak 27a620c012 Fix typo in method name 11 years ago
Thomas Bruederli d29f781080 Let plugins state a validation error message 11 years ago
Thomas Bruederli a693639613 Require name or email for sql address book only 11 years ago
Thomas Bruederli 49b8e5d0bb Add plugin hook 'contact_validate' to let plugins validate contact records 11 years ago
Thomas Bruederli c344b64f13 Get supported spell-check languages from the configured backend; replace suspended google spell service with our new service at spell.roundcube.net 11 years ago
Aleksander Machniak 70c7df8faa Fix vulnerability in handling _session argument of utils/save-prefs (#1489382) 11 years ago
Aleksander Machniak 26830dcc87 Support 'value' and 'label' attributes on <option> tag 11 years ago
corbosman 754779be6d Allow selected as attribute 11 years ago
Thomas Bruederli b608577342 Add support for additional attributes on <option> entries 11 years ago
Aleksander Machniak 64c924ea06 Fix regression where wrong set of message identifiers was used
in sql query that was supposed to fetch list of messages from cache
11 years ago
Aleksander Machniak c1bc8f6c82 Change so abort=true does not break the loop in exec_hook(), provide a new 'break' flag for this purpose 11 years ago
Aleksander Machniak 899e594474 Key duplicate error on postgres uses SQLSTATE=23505 11 years ago
Aleksander Machniak 5a2d2a6f75 Fix HTML part detection when encapsulated inside multipart/signed (#1489372) 11 years ago
Aleksander Machniak ff6de99ae4 Some micro-optimizations 11 years ago
Aleksander Machniak 0f15219a93 Fix text wrapping issue with long unwrappable lines (#1489371) 11 years ago
Aleksander Machniak d1abd8e339 Fix infinite loop in rcube_utils::mod_css_styles() after recent changes in rcube_string_replacer 11 years ago
Thomas Bruederli b5216621ba Add spellchecker backend for the After the Deadline service. See http://www.afterthedeadline.com for server installations 11 years ago
Thomas Bruederli bc0a470157 Refactor spellchecker class into backend subclasses for better extensibility 11 years ago
Thomas Bruederli c856b73c86 Minor improvements to linkref parser 11 years ago
Thomas Bruederli a01f3b959a Merge branch 'master' of github.com:roundcube/roundcubemail 11 years ago
Thomas Bruederli e480ca00ba Replace markdown-style [1] link indexes in plain text email bodies. [1]: http://daringfireball.net/projects/markdown/ 11 years ago
Aleksander Machniak 5251ec3e38 Workaround cyrus-murder bug in SETANNOTATION arguments handling 11 years ago
Thomas Bruederli 6a6992f650 Assign the chosen mode to the table map 11 years ago
Thomas Bruederli a69f9918cd Improve selection of replicated database connection:
- Analyze query and prefer dsnr unless a write operation for a table involved has been carried out before
- New config option and setter method to enforce connection mode on table level
11 years ago
Thomas Bruederli 120db629b0 Execute connection config queries on db handle direclty 11 years ago
Aleksander Machniak aceb0149b8 Add possibility to programmatically set cache mode, so it is possible
to cache only indexes/threads but not messages
11 years ago
Aleksander Machniak 4daaa09438 Move PEAR libs from plugins into main Roundcube lib directory,
list them as dependencies in INSTALL file (#1489182)
11 years ago
Thomas Bruederli 92d18cf32e New option to disable the use of already established dsnw connections for subsequent reads 11 years ago
Aleksander Machniak b3e25974b1 Fix typo: occured -> occurred (#1489366) 11 years ago
Aleksander Machniak e426ae262c Search for user DN only if one of bind_dn, base_dn, groups_base_dn settings
contains %dn variable
11 years ago
Aleksander Machniak af79a7b837 Fixed issues where HTML comments inside style tag would hang Internet Explorer 11 years ago
Aleksander Machniak eafd5b1aa4 Improved mailto: link arguments handling (#1489363) 11 years ago
Aleksander Machniak bfd24fcc04 Use DOMDocument LIBXML_PARSEHUGE and LIBXML_COMPACT options if possible (#1489302) 11 years ago