Commit Graph

1611 Commits (2a5702c2fd37603d83ade3a25192c979d1844797)

Author SHA1 Message Date
alecpl 303ade533f - Fix handling of links with IP address 13 years ago
alecpl b7fd98e338 - Fix compacting folder resets message list filter (#1488076)
- Fix reset-search action so it resets list page number to 1
13 years ago
alecpl 71f72f928b - Fix new caching issue when broken/misleading object data was stored in database.
The object must be cleaned up before storing in DB, because some code
  (out of rcube_message and rcube_imap classes) is changing objects data
  e.g. parts mimetype or body. Now it's become a problem because we're
  saving the object in cache at shutdown (after all modifications).
- Make stored message object smaller by removing some redundant data.
13 years ago
alecpl e730cd248d - Fix displaying multipart/alternative messages with only one part (#1487938) 13 years ago
alecpl 80152b333c - Rewritten messages caching (merged devel-mcache branch):
Indexes are stored in a separate table, so there's no need to store all messages in a folder
  Added threads data caching
  Flags are stored separately, so flag change doesn't cause DELETE+INSERT, just UPDATE
- Partial QRESYNC support
- Improved FETCH response handling
- Improvements in response tokenization method
13 years ago
alecpl d5ae9772c1 - Fix username case-insensitivity issue in MySQL (#1488021) 13 years ago
alecpl f8e48df715 - Merge devel-saved_search branch (Addressbook Saved Searches) 13 years ago
alecpl 66df084203 - Merge devel-spellcheck branch:
- Added spellchecker exceptions dictionary (shared or per-user)
  - Added possibility to ignore words containing caps, numbers, symbols (spellcheck_ignore_* options)
13 years ago
thomascube 21030324d0 Improved memcache connection procedure from release-0.6; use call_user_func to trigger session gc handlers 13 years ago
alecpl 427e3a4023 - Check for "Permission denied" string in IMAP error messages to display more appropriate message to the user 13 years ago
alecpl aecadcf4a2 - Don't disable include() errors, so now broken translation of a plugin will print error to the log 13 years ago
thomascube c170bfc92f Protect from Clickjacking by sending X-Frame-Options headers (#1487037) 13 years ago
thomascube 94a5a24fc2 Fallback to mail_domain in LDAP variable replacements; add 'host' to 'user_create' hook arguments (#1488024) 13 years ago
thomascube 4c4fe693d7 Fix wrong vCard type parameter mobile (#1488067) 13 years ago
thomascube 31e00cb7e9 Fix vCard WORKFAX issue (#1488046) 13 years ago
alecpl 682819f15e - Fix imap_cache setting to values other than 'db' (#1488060) 13 years ago
alecpl 8757f5b57d - Fix handling of attachments inside message/rfc822 parts (#1488026) 13 years ago
alecpl 95192c6d0f - Make 5th argument of rcmail_deliver_message() optional 13 years ago
alecpl 9a835c7f7c - Fix is_a() usage for PHP>5.3.6 13 years ago
thomascube 20ed3794f6 Don't attempt to list (and cache) folders if not connected 13 years ago
alecpl a98ee35134 - Microoptimization: use substr_replace() for injecting a string into string 13 years ago
thomascube da71783bc9 Move timezone computation to rcube_config; don't override SESSION['timezone'] when saving prefs 13 years ago
thomascube 1a716d2d34 Add copyright line on files with significant changes from Kolab Systems 13 years ago
thomascube c63e571f02 Fix group members listing for ldap directories 13 years ago
thomascube 9d5d7a86f8 Log session_id with logins 13 years ago
alecpl 0c7fe2fd97 - Added unique connection identifier to IMAP debug messages 13 years ago
alecpl 7a2bade211 - Added 'priority' column on messages list 13 years ago
alecpl 9e443d1529 - Don't add console to error pages, prevents js error 13 years ago
alecpl 2ce8e5dd94 - Use internal cache for mailbox_info() result 13 years ago
thomascube fbe54043cf Fix folders drop-down list: descend into root folder (e.g. INBOX) even if part of the exception list 13 years ago
alecpl 189a0ae4dc - Unsubscribe from non-existing folders always (on listing), not only in Settings/Folders UI 13 years ago
thomascube 94ce75255d Correctly quote group filter 13 years ago
alecpl 5c9d1ffe8e - Add option to hide selected LDAP addressbook on the list 13 years ago
alecpl fe0cb657f1 - Add client-side checking of uploaded files size 13 years ago
thomascube 782d8593bd More unique error codes 13 years ago
thomascube c878069118 Pass attributes as vars to label 13 years ago
alecpl 59ab0c3bcd - Fix infinite recurrence when saving user preferences stored in session 13 years ago
alecpl f4c3649671 - Revert r5046, the change will be applied to devel-mcache branch, where it belongs for now 13 years ago
alecpl 755189648d - Add debug for operations on groups 13 years ago
alecpl a170304013 - Remove double semicolon 13 years ago
thomascube 0f1faec392 Fix saving and deleting LDAP contacts; skip client-side input validation for contacts, this is done server-side 13 years ago
alecpl 077cfdac2d - Added IMAP ENABLE (RFC5161) support
- Removed deprecated @access comments
13 years ago
alecpl 8dd172a5b0 - Fix XSS vulnerability in UI messages (#1488030) 13 years ago
alecpl 2185899721 - Fix handling of email addresses with quoted local part (#1487939) 13 years ago
alecpl 6d0ada30d7 - Fix handling of email addresses with quoted local part (#1487939) 13 years ago
alecpl 159763861e - Display current user name in page title if devel_mode=true 13 years ago
alecpl 359e19a19d - Fix EOL character in vCard exports (#1487873) 13 years ago
alecpl feaf7b5ec6 - Remove temp debug code 13 years ago
alecpl 4d4a2fa32e - Added possibility to extend rcube_vcard's fieldmap
- Skip empty values in vCard export
13 years ago
alecpl 7f7ed2d9df - Fix get_address_book() to call get_address_sources() internally when looking for default source 13 years ago
alecpl 46285d4b56 - Support department field as X-DEPARTMENT 13 years ago
alecpl f5e5702aa2 - Remove function duplicate (from last commit) 13 years ago
alecpl 363514e30b - Move rcmail_localize_folderpath() to main.inc 13 years ago
alecpl 1cd36267a1 - Improved detection of folder rename possibility and its handling 13 years ago
thomascube fcc7f861b1 Log session validation errors; keep error message when redirecting to login after session error 13 years ago
alecpl 4d784be2b9 - Fix 'exceptions' parameter of rcmail_mailbox_select() to handle directories on any level of the structure 13 years ago
alecpl f03d89e493 - Fix 'sql' identifier for addressbook handling (#1488013) 13 years ago
alecpl f1574a5da2 - Performance fix: don't create addressbook object to close() it if it wasn't created before, skipping unneeded LDAP connection 13 years ago
alecpl 733ed0a20a - Use rcube_imap_generic::tokenizeResponse() for parsing BODYSTRUCTURE, fixes #1488007 13 years ago
alecpl 341d9661c7 - Delay imap cache initialization, fixes problem with cache cleanup on login (where user ID wasn't set on init time) 13 years ago
thomascube d917785e70 Move mail sending functions from mail task to core for general usage 13 years ago
alecpl 5ed119e534 - Don't use default source if source id is specified in get_address_source() 13 years ago
alecpl dcf8112ada - Fix IE9 detection (#1488008) 13 years ago
alecpl 909a3acb83 - Move console object initialization code into one place 13 years ago
alecpl 71e8cc3bce - Fixed display name on contact lists 13 years ago
alecpl 0213f8d4dd - Added optional "multithreading" autocomplete feature 13 years ago
alecpl 1837173634 - Plugin API: Added 'config_get' hook 13 years ago
alecpl f52c4f441f - Simplify undo message, add dots at the end of messages 13 years ago
alecpl d8aff9a651 - Round upload progress percentage value 13 years ago
thomascube 03eb13f11c Small improvements and codestyle 13 years ago
thomascube 4d9f620292 Filter LDAP groups by search query 13 years ago
thomascube ce4e0ece1f Fix ldap group members listing 13 years ago
thomascube 609c5e9da9 Session object can be null if db/memcache is not available 13 years ago
alecpl 580adc8263 - Add add_shutdown_function() method. Make possible to call user function before destoying all objects (e.g. session) 13 years ago
alecpl 63fda8af57 - Make Undo action optional by setting undo_timeout=0 13 years ago
alecpl 7f5a849e78 - Added possibility to undo last contact delete operation 13 years ago
alecpl 632528ff42 - Fix infinite loop in tokenizeResponse() when server returns atoms with forbidden characters 13 years ago
alecpl 9220169bf1 - Fix handling of other users namespace roots 13 years ago
alecpl 9d195d6e82 - Added lost argument in delete_record() method 13 years ago
alecpl b1057a2781 - Remove debug code 13 years ago
alecpl 8bce655246 - Fix lack of Cc and Reply-To headers on messages list, add them to default headers list (#1487989) 13 years ago
alecpl 4171c59bd7 - Add optional textual upload progress indicator (#1486039) 13 years ago
alecpl 77406bb731 - Fix url() so zero-values are not skipped (#1487979) 13 years ago
alecpl 0891b1d2ec - Fix handling of untagged responses in LIST/LSUB response parser 13 years ago
alecpl 96e24fab88 - Fix parsing URLs containing commas (#1487970) 13 years ago
alecpl 68070e448c - Fix PHP warning in mailbox_info(),
- Set namespace/delimiter in constructor (this way some methods could be used before connecting to IMAP server)
13 years ago
alecpl 5bfa4445d5 - Read _unlock from POST too 13 years ago
alecpl 25e6a0f110 - Add rcube_imap::mailbox_info() 13 years ago
alecpl 715a1b143c - Make local_skin_path() to be a public method 13 years ago
thomascube 6af7e0d63d Use numSubOrdindates inconjuction with VLV to count total 13 years ago
alecpl 24201dc1f4 - Fix set_row_attribs() for backward compat. 13 years ago
alecpl 3ddca3b945 - Don't log errors when charset conversion fails 13 years ago
alecpl cc90ed1f84 - Add addressbook name in contact info frame (#1487958) 13 years ago
alecpl 3f3ec14ed0 - Force allowed attributes on table rows 13 years ago
alecpl feac485000 - Added html_table::get_row_attribs(), extended html_table::set_row_attribs() 13 years ago
thomascube fd89754818 Allow to specify multiple sort columns as array (currently only used for VLV) 13 years ago
thomascube 6f3fa964c6 Use dechex() instead of sprintf() for base conversion 13 years ago
thomascube 79569231db Show more debug output 13 years ago
alecpl 64867411b1 - Support array in 2nd argument of search() when searching by primary key, as in rcube_contacts class 13 years ago
thomascube c1db483cd5 Only select dn for count queries 13 years ago
thomascube 69ea3a3429 Implement LDAPv3 Virtual List View (VLV) for paged results listing 13 years ago
alecpl 62e2254e3f - Fix regexp matching field names 13 years ago
alecpl 5148d388ea - Small fix for advanced searching 13 years ago
alecpl 02695eff93 - typo 13 years ago
alecpl b896b18f87 - Call addressbook_get hook only if build-in addressbook doesn't match wanted ID (for better performance), other improvements 13 years ago
alecpl a5be870d6c - Performance improvement, fix case-sensitivness in advanced search 13 years ago
alecpl e9a9f2f6c5 - Added addressbook advanced search 13 years ago
alecpl d654e80084 - Fix identities "reply-to" and "bcc" fields have a bogus value when left empty (#1487943) 13 years ago
alecpl fde361eb58 - Replace preg_match() with faster strpos() 13 years ago
alecpl 4fb6a28be2 - Fix doubled encoding in save-pref request (#1487941), small code improvements 13 years ago
thomascube 4dcd437ade Add collected text labels in one single function call 13 years ago
alecpl 3cacf941fa - Add popup with basic fields selection for addressbook search 13 years ago
thomascube 09c59abf85 Case-insensitive matching in autocompletion (#1487933); replace old string offset syntax 13 years ago
alecpl 644e3ad912 - Fix setting language for spellchecker on spellcheck_before_send 14 years ago
alecpl b4edf78e4b - Provided rcube_spellchecker class, simplified code in utils task (less spell* files) 14 years ago
alecpl 516467080b - Fix handling of "<" character in contact data, search fields and folder names, identity name and organization fields (#1487864) 14 years ago
alecpl f5a55bf173 - Make debug handler to be a method of rcube_mdb2 14 years ago
thomascube e7b6e907c5 Add support for X-AB-EDIT field upon user request 14 years ago
alecpl c9f4e9bc65 - Add read/write methods for immediate operations on cache backend (no affect in-memory cache)
- Add possibility to disable data serialization in cache
14 years ago
alecpl 40a1860174 - Store user preferences in session when write-master is not available and session is stored in memcache, write them later 14 years ago
alecpl 7ad8e2c318 - Add TTL parameter to rcube_cache class (and rcmail::get_cache method) 14 years ago
alecpl bc8c2c5788 - Fix s/pattern/prefix/ in clear_cache() 14 years ago
alecpl b9e42ecb46 - Use index record for memcache/apc engine, don't load the whole cache into memory 14 years ago
thomascube 10ea10a317 Catch write-errors on database (yet untested) 14 years ago
alecpl ccc059fd70 - Re-designed cache, fixes memcache/apc issues 14 years ago
alecpl 3253b296c2 - Clear properly mailboxes cache on folder subscription change 14 years ago
alecpl 7786ba1adb - Fix error when rcube_cache::remove() was used in pattern mode 14 years ago
alecpl d2a64865a7 - Fix func_get_args() usage for PHP<5.3 (#1487928) 14 years ago
thomascube 000fe38c71 Flip field type aliases (#1487910) 14 years ago
alecpl 8edb3d9405 - Add APC support in rcube_cache 14 years ago
alecpl b5f836e4af - Make memcached cache not system-wide 14 years ago
alecpl 5cf5ee66c1 - Added general rcube_cache class with memcache support
- Improved caching performance by skipping writes of unchanged data                                                                       
- Option enable_caching replaced by imap_cache and messages_cache options
14 years ago
thomascube 76d4019a35 Get memcache object from rcmail instance 14 years ago
thomascube 4e3ec4eca8 Fix vcard value decoding; add setter for individual vcard fields 14 years ago
alecpl 392589ef38 - Clear mailboxes.* cache when new mailbox is created 14 years ago
alecpl 1f385b8a3d - Make update_cahce() method to be publicly available 14 years ago
thomascube 0ec7fe4efc Fix sort order when contact name is empty 14 years ago
thomascube 6b19999841 Correctly handle empty contact names when importing 14 years ago
thomascube 445a4ca04d Fix empty name in search results and error when creating a new contact 14 years ago
alecpl 8e99ffbcac - Use less included files in mail and message templates for better performance
- Add access to template name in template expressions
14 years ago
alecpl a208a4fa68 - Add forward-as-attachment feature 14 years ago
alecpl 79275b4df5 - jQuery-1.6.1 (#1487913, #1487144) 14 years ago
thomascube e848180aaa Improve display name composition when saving contacts (#1487143), with plugin-support; allow empty names in sql address book, fall back to e-mail address in listing and vcard export 14 years ago
thomascube ff4ffc6d54 Revert r4746 due to timestsamp issues with mysql; deprecate rcube_mdb2::unixtimestamp() 14 years ago
thomascube fd540bad79 Rely on mysql server timezone not on PHP 14 years ago
alecpl c739c71351 - Extend parse() method so it can be used to parse templates without printing to stdout 14 years ago
alecpl ac3ad69e94 - Fix possible ambiguity in folders caching (when list_mailboxes() was called the same result was returned, no matter what was the 1st and 2nd argument) 14 years ago
alecpl b5fb21e767 - Improved string literals handling 14 years ago
alecpl e22740508c - Fixed ANNOTATEMORE support 14 years ago
alecpl 0deec44e7d - Fixed handling of folder with name "0" in folder selector 14 years ago
alecpl 091b0284c8 - Use dot as a separator in cache key name (for consistency) 14 years ago
alecpl 94bdcce081 - Add possibility (for plugins) to filter folders lists by some additional criteria (e.g. folder type) 14 years ago
alecpl d08333ea57 - Fix problems with subfolders of INBOX folder on some IMAP servers (#1487725)
- Fix handling of folders that doesn't belong to any namespace (#1487637)
14 years ago
alecpl 56651c15c8 - Stop execution when LDAP addressbook is configured but PHP's ldap functions doesn't exists 14 years ago
alecpl 7fc056c3ff - Enable multiselection for attachments uploading in capable browsers (#1485969) 14 years ago
thomascube 125894d35d Fix expression 14 years ago
vbenincasa 2a380018f9 - Now the %s variable (used in default_host) works with IDN and with Master users from dovecot too (like user@domain.com*master)
- rcube_parse_host() now returns false if %s is used and an invalid email is provided (to work better when a prefix is used in default_host like 'mail.%s')
14 years ago
thomascube 638e3459d6 Don't attempt to read session data again if the initial read didn't return a result 14 years ago
alecpl c08b18c4b9 - Fix relative URLs handling according to a <base> in HTML (#1487889) 14 years ago
vbenincasa b04c51fafb - Added the %s variable in 'default_host' and 'smtp_server' option (%s variable is the domain name after the '@' from e-mail address provided at login screen). The %s just returns a value if the provided e-mail is valid to avoid unnecessary lookups and reduce the possibility of connections to undesirable hosts.
- Small fix to the code comment of rcube_parse_host()
14 years ago
thomascube 60a277f1ce Fix callback reference after rename 14 years ago
alecpl e54f4b25e2 - Remove special handling of rcube_ classes in autoloader, it breaks loading of rcube_ classes from plugins 14 years ago
alecpl 5c1dfb0b11 - Fix handling of top-level domains with more than 5 chars or unicode chars (#1487883) 14 years ago
alecpl 68f39efb04 - Fix fatal error from last commit (#1487884), rename rcube_gc() to gc() 14 years ago
thomascube 63e9927d5f Add support for session storage using memcache 14 years ago
alecpl 926948e77f - Use shortest include path for better performance 14 years ago
thomascube 0761e2b1f7 Remove unnecessary code (thanks Alec) 14 years ago
thomascube 73d6b2a6b0 Fix return value of affected_rows() 14 years ago
thomascube 80809d6a9d Don't show saving error if no data changed 14 years ago
alecpl 5c2f064882 - Fix ID command arguments (must be of type nstring) 14 years ago
alecpl 1463a5ac24 - Fix ID command response handling 14 years ago
alecpl 99fc468d40 - Fix quoting special characters, small optimizations 14 years ago
alecpl 8c263ee5e0 - Set proper readonly state of default address book according to real readonly variable value (#1487878) 14 years ago
alecpl 4351f7cd66 - Improve performance by including files with absolute path (#1487849) 14 years ago
thomascube 49dac95d7d Don't add env variable when template is empty (e.g. on error page) 14 years ago
thomascube 7342bb8b7a Check for DB connection state instead of handle (handle could be an error object) 14 years ago
thomascube bbb1427caa Gracefully shrug on database errors 14 years ago
alecpl 462de2d202 - PEAR::Net_SMTP 1.5.2, fixed timeout issue (#1487843) 14 years ago
thomascube d476d3a3a4 Fixed LDAP patch 14 years ago
thomascube ef27a6a723 Add hook for request token creation (upon user request) 14 years ago
thomascube d1e08fc905 Replace LDAP vars in group queries (#1487837) 14 years ago
thomascube 58510fc58f Use CRLF + 1 space for folding 14 years ago
thomascube 569f8306db Fix vcard folding at 75 chars; don't fold vcards for internal storage 14 years ago
alecpl 5c4c06665c - Fixed vcard folding: use one space, use mb_regex_encoding() (#1487868) 14 years ago
alecpl ae1db2239e - mbstring internal encoding is set in iniset.php 14 years ago
thomascube bf80b5a237 Fix vcard folding with uncode characters (#1487868) 14 years ago
alecpl 34d72878db - Use mbstring's strtolower() for Unicode characters in normalize_string() 14 years ago
thomascube e5e1eb0195 Convert normalized latin-1 string back to utf8 14 years ago
thomascube 12dac4911b Handle unicode strings when normalizing for search (#1487866) 14 years ago
alecpl ca18a90b1a - Fix bug where template name without plugin prefix was used in render_page hook (the same fix for deprecated_templates) 14 years ago
alecpl 23b49558cd - Fix handling of debug_level=4 in ajax requests (#1487831) 14 years ago
alecpl 1036f81edf - Fix so 1024 bytes is displayed as 1KB, the same for MB and GB 14 years ago
alecpl ff10f5e50e - Support 'off' as bolean false 14 years ago
alecpl dd0ae6297b - Improve space-stuffing handling in format=flowed messages (#1487861) 14 years ago
alecpl 6491fbdbae - Fixed bug where some dates would produce SQL error in MySQL (#1487856) 14 years ago
alecpl 0ea94769ee - Added workaround for some IMAP server with broken STATUS response (#1487859) 14 years ago
alecpl 8abc17611f - Fix bug where default_charset was not used for text messages (#1487836) 14 years ago
alecpl f66f5f02e3 - Removed dependency on rcube_* functions, small improvements 14 years ago
thomascube c9f2c47027 Fix request token generation if no cookies set 14 years ago
alecpl c09e3287c1 - Remove unused rcube_mail_header class variables 14 years ago