diff --git a/HISTORY.rst b/HISTORY.rst index f338b11ba1f..e87bbdd84a1 100644 --- a/HISTORY.rst +++ b/HISTORY.rst @@ -2,7 +2,8 @@ ================== - Fix HTML mark up in window title. GitLab #397. - Add support for emailing documents to a recipient list. GitLab #396. -- Backport metadata widget changes from @Macrobb. GitLab #378. +- Backport metadata widget changes from @Macrobb. GitLab #377. +- Make users and group searchable. 2.5.2 (2017-07-08) ================== diff --git a/mayan/apps/user_management/apps.py b/mayan/apps/user_management/apps.py index ddc721a6554..a58a8bc22a7 100644 --- a/mayan/apps/user_management/apps.py +++ b/mayan/apps/user_management/apps.py @@ -19,6 +19,7 @@ link_user_multiple_delete, link_user_multiple_set_password, link_user_set_password, link_user_setup ) +from .search import * # NOQA def get_groups(): diff --git a/mayan/apps/user_management/search.py b/mayan/apps/user_management/search.py new file mode 100644 index 00000000000..af11a2fb90c --- /dev/null +++ b/mayan/apps/user_management/search.py @@ -0,0 +1,43 @@ +from __future__ import absolute_import, unicode_literals + +from django.conf import settings +from django.utils.translation import ugettext_lazy as _ + +from dynamic_search.classes import SearchModel + +from .permissions import permission_group_view, permission_user_view + +print settings.AUTH_USER_MODEL +user_app, user_model = settings.AUTH_USER_MODEL.split('.') + +user_search = SearchModel( + app_label=user_app, model_name=user_model, + permission=permission_user_view, + serializer_string='user_management.serializers.UserSerializer' +) + +user_search.add_model_field( + field='first_name', label=_('First name') +) +user_search.add_model_field( + field='email', label=_('Email') +) +user_search.add_model_field( + field='groups__name', label=_('Groups') +) +user_search.add_model_field( + field='last_name', label=_('Last name') +) +user_search.add_model_field( + field='username', label=_('username') +) + +group_search = SearchModel( + app_label='auth', model_name='Group', + permission=permission_group_view, + serializer_string='user_management.serializers.GroupSerializer' +) + +group_search.add_model_field( + field='name', label=_('Name') +)