mirror of
https://github.com/haiwen/seahub.git
synced 2025-08-28 19:51:34 +00:00
enable show contact email when search user (#4641)
* enable show contact email when search user * [user-select] added new user option with email shown Co-authored-by: lian <lian@seafile.com> Co-authored-by: llj <lingjun.li1@gmail.com>
This commit is contained in:
parent
ef95810d4e
commit
12b200f3e1
@ -2,10 +2,12 @@ import React from 'react';
|
|||||||
import PropTypes from 'prop-types';
|
import PropTypes from 'prop-types';
|
||||||
import AsyncSelect from 'react-select/lib/Async';
|
import AsyncSelect from 'react-select/lib/Async';
|
||||||
import { seafileAPI } from '../utils/seafile-api.js';
|
import { seafileAPI } from '../utils/seafile-api.js';
|
||||||
import { gettext } from '../utils/constants';
|
import { gettext, enableShowContactEmailWhenSearchUser } from '../utils/constants';
|
||||||
import { Utils } from '../utils/utils.js';
|
import { Utils } from '../utils/utils.js';
|
||||||
import toaster from './toast';
|
import toaster from './toast';
|
||||||
|
|
||||||
|
import '../css/user-select.css';
|
||||||
|
|
||||||
const propTypes = {
|
const propTypes = {
|
||||||
placeholder: PropTypes.string.isRequired,
|
placeholder: PropTypes.string.isRequired,
|
||||||
onSelectChange: PropTypes.func.isRequired,
|
onSelectChange: PropTypes.func.isRequired,
|
||||||
@ -42,10 +44,19 @@ class UserSelect extends React.Component {
|
|||||||
obj.value = item.name;
|
obj.value = item.name;
|
||||||
obj.email = item.email;
|
obj.email = item.email;
|
||||||
obj.label =
|
obj.label =
|
||||||
<React.Fragment>
|
enableShowContactEmailWhenSearchUser ? (
|
||||||
<img src={item.avatar_url} className="select-module select-module-icon avatar" alt=""/>
|
<div className="d-flex">
|
||||||
<span className='select-module select-module-name'>{item.name}</span>
|
<img src={item.avatar_url} className="avatar" width="24" alt="" />
|
||||||
</React.Fragment>;
|
<div className="ml-2">
|
||||||
|
<span className="user-option-name">{item.name}</span><br />
|
||||||
|
<span className="user-option-email">{item.contact_email}</span>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
) : (
|
||||||
|
<React.Fragment>
|
||||||
|
<img src={item.avatar_url} className="select-module select-module-icon avatar" alt=""/>
|
||||||
|
<span className='select-module select-module-name'>{item.name}</span>
|
||||||
|
</React.Fragment>);
|
||||||
this.options.push(obj);
|
this.options.push(obj);
|
||||||
}
|
}
|
||||||
callback(this.options);
|
callback(this.options);
|
||||||
|
7
frontend/src/css/user-select.css
Normal file
7
frontend/src/css/user-select.css
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
.user-option-name {
|
||||||
|
font-size: 14px;
|
||||||
|
font-weight: 500;
|
||||||
|
}
|
||||||
|
.user-option-email {
|
||||||
|
font-size: 12px;
|
||||||
|
}
|
@ -62,6 +62,7 @@ export const canAddPublicRepo = window.app.pageOptions.canAddPublicRepo;
|
|||||||
export const canInvitePeople = window.app.pageOptions.canInvitePeople;
|
export const canInvitePeople = window.app.pageOptions.canInvitePeople;
|
||||||
export const canLockUnlockFile = window.app.pageOptions.canLockUnlockFile;
|
export const canLockUnlockFile = window.app.pageOptions.canLockUnlockFile;
|
||||||
export const customNavItems = window.app.pageOptions.customNavItems;
|
export const customNavItems = window.app.pageOptions.customNavItems;
|
||||||
|
export const enableShowContactEmailWhenSearchUser = window.app.pageOptions.enableShowContactEmailWhenSearchUser;
|
||||||
export const maxUploadFileSize = window.app.pageOptions.maxUploadFileSize;
|
export const maxUploadFileSize = window.app.pageOptions.maxUploadFileSize;
|
||||||
export const maxNumberOfFilesForFileupload = window.app.pageOptions.maxNumberOfFilesForFileupload;
|
export const maxNumberOfFilesForFileupload = window.app.pageOptions.maxNumberOfFilesForFileupload;
|
||||||
|
|
||||||
|
@ -276,6 +276,8 @@ AUTHENTICATION_BACKENDS = (
|
|||||||
ENABLE_OAUTH = False
|
ENABLE_OAUTH = False
|
||||||
ENABLE_WATERMARK = False
|
ENABLE_WATERMARK = False
|
||||||
|
|
||||||
|
ENABLE_SHOW_CONTACT_EMAIL_WHEN_SEARCH_USER = False
|
||||||
|
|
||||||
# enable work weixin
|
# enable work weixin
|
||||||
ENABLE_WORK_WEIXIN = False
|
ENABLE_WORK_WEIXIN = False
|
||||||
|
|
||||||
|
@ -94,6 +94,7 @@
|
|||||||
canAddPublicRepo: {% if can_add_public_repo %} true {% else %} false {% endif %},
|
canAddPublicRepo: {% if can_add_public_repo %} true {% else %} false {% endif %},
|
||||||
canInvitePeople: {% if enable_guest_invitation and user.permissions.can_invite_guest %} true {% else %} false {% endif %},
|
canInvitePeople: {% if enable_guest_invitation and user.permissions.can_invite_guest %} true {% else %} false {% endif %},
|
||||||
customNavItems: {% if custom_nav_items %} JSON.parse('{{ custom_nav_items | escapejs }}') {% else %} {{'[]'}} {% endif %},
|
customNavItems: {% if custom_nav_items %} JSON.parse('{{ custom_nav_items | escapejs }}') {% else %} {{'[]'}} {% endif %},
|
||||||
|
enableShowContactEmailWhenSearchUser: {% if enable_show_contact_email_when_search_user %} true {% else %} false {% endif %},
|
||||||
{% if max_upload_file_size > 0 %}
|
{% if max_upload_file_size > 0 %}
|
||||||
maxUploadFileSize: {{ max_upload_file_size }},
|
maxUploadFileSize: {{ max_upload_file_size }},
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
@ -1166,6 +1166,7 @@ def react_fake_view(request, **kwargs):
|
|||||||
'folder_perm_enabled': folder_perm_enabled,
|
'folder_perm_enabled': folder_perm_enabled,
|
||||||
'file_audit_enabled' : FILE_AUDIT_ENABLED,
|
'file_audit_enabled' : FILE_AUDIT_ENABLED,
|
||||||
'custom_nav_items' : json.dumps(CUSTOM_NAV_ITEMS),
|
'custom_nav_items' : json.dumps(CUSTOM_NAV_ITEMS),
|
||||||
|
'enable_show_contact_email_when_search_user' : settings.ENABLE_SHOW_CONTACT_EMAIL_WHEN_SEARCH_USER,
|
||||||
'additional_share_dialog_note': ADDITIONAL_SHARE_DIALOG_NOTE,
|
'additional_share_dialog_note': ADDITIONAL_SHARE_DIALOG_NOTE,
|
||||||
'additional_app_bottom_links': ADDITIONAL_APP_BOTTOM_LINKS,
|
'additional_app_bottom_links': ADDITIONAL_APP_BOTTOM_LINKS,
|
||||||
'additional_about_dialog_links': ADDITIONAL_ABOUT_DIALOG_LINKS
|
'additional_about_dialog_links': ADDITIONAL_ABOUT_DIALOG_LINKS
|
||||||
|
Loading…
Reference in New Issue
Block a user