summaryrefslogtreecommitdiff
path: root/src/mod_shared_roster.erl (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Fix errors and warnings for "rebar3 edoc"Badlop2022-05-171-2/+4
|
* Update copyright year to 2022Badlop2022-02-111-1/+1
|
* Use the same wording in all the identical options db_type and ram_db_typeBadlop2022-02-031-5/+2
|
* mod_shared_roster: Adjust special group cache sizeHolger Weiss2022-01-251-1/+2
| | | | | | | | Let the size of the cache used for 'special' groups (such as @all@ or @online@) depend on the number of virtual hosts, as the cache will contain seperate entries per domain. Thanks to Ingo Jürgensmann for reporting the issue.
* mod_shared_roster: Normalize JID on unset_presenceHolger Weiss2022-01-151-2/+5
| | | | | | | | | Don't forget to normalize the JID handed over from ejabberd_sm on presence-unavailable. Without normalization, mod_shared_roster might fail to look up the storage backend for the given host name, for example. Fixes #3752.
* Use specific syntax so modules and top-level will be linksBadlop2021-08-231-7/+7
| | | | | | If we use _`whatever`_ here in ejabberd man pages, it is converted to *`whatever`* in markdown, and docs.ejabberd.im/Makefile converts to the proper links
* delete cache after performing change to be sure that in cache will be up to ↵Jindrich Sarson2021-04-171-3/+3
| | | | date data
* Fix dialyzer warningsPaweł Chmielowski2021-04-161-4/+9
|
* Fix syntax not recognized by older erlangPaweł Chmielowski2021-04-161-2/+3
|
* Improve database and caching in mod_shared_rosterPaweł Chmielowski2021-04-161-165/+170
| | | | | | This makes us keep cache of groups that use wildcards no matter of cache settings, and tries to not same fetch data multiple times in roster get operations.
* Use proper source for cache options in mod_shared_rosterPaweł Chmielowski2021-04-161-3/+3
|
* Reconfigure cache in mod_shared_roster when options changePaweł Chmielowski2021-04-161-1/+3
|
* Update newest copyright year to 2021 (#3464)Badlop2021-01-271-1/+1
|
* Provide name when pushing new roster item in shared roster group (#3427)Badlop2020-11-191-4/+8
|
* Use include_lib() to include headers from dependencies (#3369)Stu Tomlinson2020-09-031-1/+1
|
* Mark dangerous buttons with CSS (#3363)Badlop2020-08-241-1/+1
|
* When updating group in cache, first delete so insert succeeds (#3296)Badlop2020-06-051-0/+1
|
* Handle ets_cache return value in shared roster get_group_opts (#3296)Badlop2020-06-051-1/+5
|
* Make a few more strings translatable in MUC and Shared Roster WebAdminBadlop2020-04-201-3/+3
|
* Update documentation of mod_shared_roster (#3214)Badlop2020-04-161-15/+16
|
* Rename opts->name to label, to avoid confusion with the group name (#3214)Badlop2020-04-141-55/+86
| | | | | Also updated WebAdmin to show more meaningful explanations Also fixed a bug that break support for group@host in Displayed
* Add cache to mod_shared_rosterPaweł Chmielowski2020-03-171-28/+204
| | | | | This should help with excessive queries that sql backend generates Should fix issue #3158.
* Replace mod_shared_roster:X call with just X inside that modulePaweł Chmielowski2020-03-161-30/+34
|
* Try to limit calls to groups_with_opts in mod_shared_rosterPaweł Chmielowski2020-03-161-18/+4
|
* Update copyright to 2020 (#3149)Badlop2020-01-281-1/+1
|
* Generate ejabberd.yml.5 man page from source code directlyEvgeny Khramtsov2020-01-081-1/+81
| | | | | | | Several documentation callbacks (doc/0 and mod_doc/0) are implemented and `ejabberdctl man` command is added to generate a man page. Note that the command requires a2x to be installed (which is a part of asciidoc package).
* Correctly handle unicode in log messagesEvgeny Khramtsov2019-09-231-1/+1
|
* Fix some links to Guide in WebAdmin and add new ones (#3003)Badlop2019-08-271-2/+2
|
* Fix call to deprecated ejabberd_config:get_myhosts() (#3000)Badlop2019-08-221-1/+1
|
* Provide meaningful error when adding non-local users to shared roster (#3000)Badlop2019-08-221-4/+21
|
* Make logging messages more consistentEvgeny Khramtsov2019-06-241-1/+1
|
* Improve extraction of translated stringsEvgeny Khramtsov2019-06-221-15/+17
| | | | | | | | | | | | | Now every such string MUST be encapsulated into ?T() macro. The macro itself is defined in include/translate.hrl. Example: -module(foo). -export([bar/1]). -include("translate.hrl"). bar(Lang) -> translate:translate(Lang, ?T("baz")).
* Get rid of "well-known" typeEvgeny Khramtsov2019-06-151-1/+1
|
* Use new configuration validatorEvgeny Khramtsov2019-06-141-5/+6
|
* Don't perform roster push for non-local contacts in mod_shared_rosterPaweł Chmielowski2019-02-181-2/+7
| | | | | | If group have member with jid from external server we tried to make mod_roster sent roster push to it, and it sometimes didn't like to get bogus data like that, so let's check if it's local user before doing this.
* Update copyright to 2019 (#2756)Badlop2019-01-081-1/+1
|
* remove some chatty SQL queries by pulling back all groups with opts and ↵colm2018-09-101-11/+17
| | | | filtering in memory. move a call to get_group_name outside of a loop to eliminate redundant repeated queries
* Move move randoms module to p1_utils repoEvgeniy Khramtsov2018-07-051-1/+1
|
* Get rid of ejabberd.hrl headerEvgeniy Khramtsov2018-06-141-1/+0
| | | | | | | | | The header consisted of too many unrelated stuff and macros misuse. Some stuff is moved into scram.hrl and type_compat.hrl. All macros have been replaced with the corresponding function calls. TODO: probably type_compat.hrl is not even needed anymore since we support only Erlang >= OTP 17.5
* Apply some dirty hacks for mod_shared_rosterEvgeniy Khramtsov2018-03-191-73/+7
| | | | Probably this fixes #1846
* Introduce option 'captcha' for mod_block_strangersEvgeniy Khramtsov2018-01-261-49/+41
| | | | | | | | | | When the option is set to `true`, the module will generate CAPTCHA challenges for incoming subscription requests. The option also implies that option `drop` is set to `true`. Note that the module won't generate CAPTCHA challenges for messages: they will still be rejected if `drop` is set to `true`. Fixes #2246
* Introduce new gen_mod callback: mod_options/1Evgeniy Khramtsov2018-01-231-3/+5
| | | | | | | The callback is supposed to provide known options and their default values, as long as the documentation. Passing default values into get_mod functions is now deprecated: all defaults should be provided by the Mod:mod_options/1 callback.
* Update copyright datesEvgeniy Khramtsov2018-01-051-1/+1
|
* Implement cache for rosterEvgeniy Khramtsov2017-05-171-24/+1
|
* Use cache for authentication backendsEvgeniy Khramtsov2017-05-111-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The commit introduces the following API incompatibilities: In ejabberd_auth.erl: * dirty_get_registered_users/0 is renamed to get_users/0 * get_vh_registered_users/1 is renamed to get_users/1 * get_vh_registered_users/2 is renamed to get_users/2 * get_vh_registered_users_number/1 is renamed to count_users/1 * get_vh_registered_users_number/2 is renamed to count_users/2 In ejabberd_auth callbacks * plain_password_required/0 is replaced by plain_password_required/1 where the argument is a virtual host * store_type/0 is replaced by store_type/1 where the argument is a virtual host * set_password/3 is now an optional callback * remove_user/3 callback is no longer needed * remove_user/2 now should return `ok | {error, atom()}` * is_user_exists/2 now must only be implemented for backends with `external` store type * check_password/6 is no longer needed * check_password/4 now must only be implemented for backends with `external` store type * try_register/3 is now an optional callback and should return `ok | {error, atom()}` * dirty_get_registered_users/0 is no longer needed * get_vh_registered_users/1 is no longer needed * get_vh_registered_users/2 is renamed to get_users/2 * get_vh_registered_users_number/1 is no longer needed * get_vh_registered_users_number/2 is renamed to count_users/2 * get_password_s/2 is no longer needed * get_password/2 now must only be implemented for backends with `plain` or `scram` store type Additionally, the commit introduces two new callbacks: * use_cache/1 where the argument is a virtual host * cache_nodes/1 where the argument is a virtual host New options are also introduced: `auth_use_cache`, `auth_cache_missed`, `auth_cache_life_time` and `auth_cache_size`.
* Include shared groups also when contact is is personal roster (#1585)Badlop2017-03-091-1/+3
|
* Get rid of jid:to_string/1 and jid:from_string/1Evgeniy Khramtsov2017-02-261-8/+6
|
* Don't pass empty resource to jid:make()Evgeniy Khramtsov2017-02-251-8/+6
|
* Reload modules when reloading configuration fileEvgeniy Khramtsov2017-02-221-3/+11
|
* Fix some dialyzer warningsEvgeniy Khramtsov2017-02-181-7/+7
|