Commit Graph

8955 Commits (0485275a75c98fc7297e89280b9bbd3d724a069b)
 

Author SHA1 Message Date
Aleksander Machniak 8935587a59 Fix bug where contact search menu fields where always unchecked in Larry skin 9 years ago
Aleksander Machniak 5e406f7b7e Disable links list when converting html2text for spellchecking 9 years ago
Aleksander Machniak 78cf9c2e5c Update requirements section 9 years ago
Aleksander Machniak 1da8ffd52b Use "email" over "e-mail" consistently (#5212) 9 years ago
Aleksander Machniak bf3b07aeef Merge branch 'master' of github.com:roundcube/roundcubemail 9 years ago
Aleksander Machniak 7abfe41ab7 Fix bug where getting HTML editor content could steal focus from other form controls (#5223) 9 years ago
Aleksander Machniak 317372f046 Merge pull request #5227 from oGGy990/master
Fix ldap connection use after release in password plugin
9 years ago
Oliver Ney 5f2df36879 Fix ldap connection use after release in password plugin 9 years ago
Aleksander Machniak 7dad859ffa Fix message list multi-select/deselect issue (#5219) 9 years ago
Aleksander Machniak f0fa9324d8 Merge branch 'master' of github.com:roundcube/roundcubemail 9 years ago
Aleksander Machniak 52106ffd39 Fix bug where rcube_contacts::get_record() could return cached result when requested record wasn't found (#5218) 9 years ago
Aleksander Machniak 80eb845253 Make sure width of date selector in search menu is not too big with non-english locales 9 years ago
Aleksander Machniak 5b94c5af08 Fix plugin name in composer.json 9 years ago
Aleksander Machniak 6e4642b12c Enigma: Add enigma_debug option 9 years ago
Bostjan Skufca 12756e2297 Autocomplete: store last searched-for string into separate variable for later consumption
Reason:
Autocompleting person contacts works as expected - ksearch_value is available and passed to triggerEvent.
But with group autocomplete, ksearch_value is reset (to null) and triggerEvent call lacks necessary data.
9 years ago
Bostjan Skufca f919e8ffa6 Autocomplete: change type from 'contact' to 'person' to sync with what is expected from LDAP.
Explanation:
Alternative would be to leave type empty, as it is when contact comes form SQL source.
But this feels overly ambiguous and may cause problems in the future.
9 years ago
Bostjan Skufca 1791c3e3d7 Autocomplete/frontend: provide functions that hook into 'autocomplete_insert' actual search and result data
Reason:
In order to enable development of sophisticated autocomplete algorithms, they will need
to process all the data relevant to autocomplete - what was the search string and which
result was the correct one.

Example to illustrate the need:
Say we are talking about these two people of interest, who are in the address book, among others:
- person 1: Bostjan Skufca <bostjan@a2o.si>
- person 2: Bostjan SkuBIC <bostjan@otherdomain.com>

Our user is used to think about the first person by the first name, "Bostjan", as he is an old friend.
The second one is a colleague at work where people call themselves mostly by surnames, "Skubic" in this case.

Without this data provided to 'autocomplete_insert', there is no way for RC to learn that when our user
enters "bos" in the To: field he thinks about person #1 (Bostjan SkuFCA), and when he starts typing "sku"
he means person #2 (Bostjan SkuBIC).
9 years ago
Bostjan Skufca 05c7d49a37 Autocomplete search: add id and source (addressbook) into resulting contact data array
Two reasons:
- provide it to plugin backend functions that use 'contacts_autocomplete_after' hook
- provide it to frontend

Why to frontend?
If plugin JS adds an 'autocomplete_insert' hook we need to provide it with exact
autocomplete data. Providing it with name and email address only, without pinpointing
exact origin of this autocomplete result, will severely limit learning capabilities of
potential future autocomplete implementations.
9 years ago
Bostjan Skufca a15b2d5998 Autocomplete refactoring: replace variable name '$id' with '$abook_id'
Reason:
Having genericly named variable $id in nested loops makes code unreadable.
Replacing generic name '$id' with '$ENTITIY_id' format removes all ambiguity.
9 years ago
Bostjan Skufca ed55af4aa9 Autocomplete: trigger "contacts_autocomplete_after" hook processing
Provide existing list of contact suggestions as an argument - it might be unclear
now what logic plugin developers decide to implement, but data for that logic
should be provided upfront, and that includes list of suggestions that RC
itself comes up with.

Plugin logic might then replace the list entirely, or just rearrange its entries, or use
part of the list when it runs out of own ideas, or do something entirely different.
9 years ago
Bostjan Skufca 865230e420 Autocomplete: fix undefined variable notice if no addressbook is configured for autocomplete 9 years ago
Aleksander Machniak e2e56261b9 Fix handling of long script/style tags when converting to text 9 years ago
Aleksander Machniak 302aff920c Small code improvement 9 years ago
Aleksander Machniak e2ff7985db Small optimization in sieve script parser 9 years ago
Thomas Bruederli 3b77a54ecd Add version 1.2-rc 9 years ago
Aleksander Machniak a0f38f5fd8 Small code style improvements 9 years ago
Aleksander Machniak e8ab3d96bd Fix converting mail addresses with @www. into mailto links (#5197) 9 years ago
Aleksander Machniak 4bb44c3d90 Enigma: added option to force users to use signing/encryption 9 years ago
Aleksander Machniak d01c06eded CS fixes 9 years ago
Aleksander Machniak 463d07824e Merge pull request #5194 from bostjan/optimization/make-thread-listing-faster
Make rcube_result_thread::revert() faster
9 years ago
Bostjan Skufca 70a8236cd5 mailbox/listing: Make server response for large mailbox listing faster when using threaded view
Symptom
=======
When using roundcube with mailboxes with over 60k messages, list
view was way faster than viewing in threaded view.

Mailbox index view timing:    ~360 ms
Mailbox threaded view timing: ~800 ms

Resolution
==========
Use native PHP array manipulation functions instead of rolling custom
string data reversal implementation using strpos() and substr() in a
'while' loop.

This optimization is already present in index view handler, but was missing
from threaded view.

Results after optimization
==========================
Both average out around ~360 ms response time.
9 years ago
Aleksander Machniak 4fdcd8c9d1 Remove redundant code 9 years ago
Thomas Bruederli 6bebdc5677 Transliterate ticket IDs after migration to Github issues 9 years ago
Thomas Bruederli bd780ce707 Remove localization files from 3rd party plugins 9 years ago
Aleksander Machniak 80cb362b80 Managesieve: Refactored script parser to be 100x faster 9 years ago
Aleksander Machniak 800235f682 Fix compatibility with older PHP versions by not using empty(fn()) 9 years ago
Aleksander Machniak e03c006d0d Merge pull request #5190 from dioubernardo/patch-1
Allow pattern attribute in input
9 years ago
Bernardo Silva c72446a8fc Allow pattern attribute in input
"pattern" included in the list of allowed attributes in the input tag
9 years ago
Aleksander Machniak 215935150e Merge pull request #5189 from seanm/master
Issue #5186: improve comments about ‘password_charset’ setting
9 years ago
Sean McBride 4ca97c3ea4 Issue #5186: improve comments about ‘password_charset’ setting 9 years ago
Kyle Francis 31713805f8 Changed native DOM call to jQuery 9 years ago
Kyle Francis 65225262f6 Merge remote-tracking branch 'origin/master' into compose_focus 9 years ago
Aleksander Machniak 6f2c007d1b CS fixes: Replace use of "bool ? true : false" with just "bool" 9 years ago
Aleksander Machniak 6373fa55be Update changelog 9 years ago
Aleksander Machniak 96c3d84cdd Enigma: Varius fixes and cleanup in code for attaching pubkeys 9 years ago
Aleksander Machniak 4c7ce7bfc9 Merge branch 'guitarmanusa-attach-pgp-key' 9 years ago
Aleksander Machniak ede293946c Merge branch 'attach-pgp-key' of https://github.com/guitarmanusa/roundcubemail-1 into guitarmanusa-attach-pgp-key 9 years ago
Aleksander Machniak 5c253dd59e Fix so SPECIAL-USE assignments are forced only until user sets special folders (#4782)
The old behaviour where SPECIAL-USE has always a prio can be bringed back
by setting lock_special_folders=false and adding it to dont_override.
9 years ago
Kyle Francis 522babb3a3 Implements 'scroll by keyboard #5139' 9 years ago
Kyle Francis 7ce958ecd9 Added attach pubkey checkbox in compose UI, added preferences setting for attach pubkey by default 9 years ago