commit
78b30eea0a
|
@ -5,6 +5,7 @@ import API from 'lib-app/api-call';
|
||||||
import DateTransformer from 'lib-core/date-transformer';
|
import DateTransformer from 'lib-core/date-transformer';
|
||||||
|
|
||||||
import Header from 'core-components/header';
|
import Header from 'core-components/header';
|
||||||
|
import InfoTooltip from 'core-components/info-tooltip';
|
||||||
import Table from 'core-components/table';
|
import Table from 'core-components/table';
|
||||||
import SearchBox from 'core-components/search-box';
|
import SearchBox from 'core-components/search-box';
|
||||||
import Button from 'core-components/button';
|
import Button from 'core-components/button';
|
||||||
|
@ -96,9 +97,12 @@ class AdminPanelListUsers extends React.Component {
|
||||||
getUserRow(user) {
|
getUserRow(user) {
|
||||||
return {
|
return {
|
||||||
name: (
|
name: (
|
||||||
<Button className="admin-panel-list-users__name-link" type="link" route={{to: '/admin/panel/users/view-user/' + user.id}}>
|
<div>
|
||||||
{user.name}
|
<Button className="admin-panel-list-users__name-link" type="link" route={{to: '/admin/panel/users/view-user/' + user.id}}>
|
||||||
</Button>
|
{user.name}
|
||||||
|
</Button>
|
||||||
|
{user.disabled ? this.renderDisabled() : null}
|
||||||
|
</div>
|
||||||
),
|
),
|
||||||
email: user.email,
|
email: user.email,
|
||||||
tickets: (
|
tickets: (
|
||||||
|
@ -110,6 +114,12 @@ class AdminPanelListUsers extends React.Component {
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
renderDisabled() {
|
||||||
|
return (
|
||||||
|
<InfoTooltip className="admin-panel-list-users__name-disabled" type="warning" text={i18n('USER_DISABLED')} />
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
onSearch(query) {
|
onSearch(query) {
|
||||||
this.retrieveUsers({
|
this.retrieveUsers({
|
||||||
page: 1,
|
page: 1,
|
||||||
|
@ -154,7 +164,7 @@ class AdminPanelListUsers extends React.Component {
|
||||||
API.call({
|
API.call({
|
||||||
path: '/user/get-users',
|
path: '/user/get-users',
|
||||||
data: data
|
data: data
|
||||||
}).then(this.onUsersRetrieved.bind(this)).catch(this.onUsersRejected.bind(this));
|
}).catch(this.onUsersRejected.bind(this)).then(this.onUsersRetrieved.bind(this));
|
||||||
}
|
}
|
||||||
|
|
||||||
onCreateUser(user) {
|
onCreateUser(user) {
|
||||||
|
@ -177,7 +187,7 @@ class AdminPanelListUsers extends React.Component {
|
||||||
pages: result.data.pages * 1,
|
pages: result.data.pages * 1,
|
||||||
users: result.data.users,
|
users: result.data.users,
|
||||||
orderBy: result.data.orderBy,
|
orderBy: result.data.orderBy,
|
||||||
desc: (result.data.desc === '1'),
|
desc: (result.data.desc*1),
|
||||||
error: false,
|
error: false,
|
||||||
loading: false
|
loading: false
|
||||||
});
|
});
|
||||||
|
|
|
@ -21,18 +21,12 @@ class AdminPanelViewUser extends React.Component {
|
||||||
verified: true,
|
verified: true,
|
||||||
tickets: [],
|
tickets: [],
|
||||||
invalid: false,
|
invalid: false,
|
||||||
loading: true
|
loading: true,
|
||||||
|
disabled: false
|
||||||
};
|
};
|
||||||
|
|
||||||
componentDidMount() {
|
componentDidMount() {
|
||||||
API.call({
|
this.retrieveUser();
|
||||||
path: '/user/get-user',
|
|
||||||
data: {
|
|
||||||
userId: this.props.params.userId
|
|
||||||
}
|
|
||||||
}).then(this.onUserRetrieved.bind(this)).catch(() => this.setState({
|
|
||||||
invalid: true
|
|
||||||
}));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
render() {
|
render() {
|
||||||
|
@ -60,6 +54,7 @@ class AdminPanelViewUser extends React.Component {
|
||||||
{i18n('NAME')}
|
{i18n('NAME')}
|
||||||
<div className="admin-panel-view-user__info-box">
|
<div className="admin-panel-view-user__info-box">
|
||||||
{this.state.name}
|
{this.state.name}
|
||||||
|
{(this.state.disabled) ? this.renderDisabled() : null}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div className="admin-panel-view-user__info-item">
|
<div className="admin-panel-view-user__info-item">
|
||||||
|
@ -69,8 +64,17 @@ class AdminPanelViewUser extends React.Component {
|
||||||
{(!this.state.verified) ? this.renderNotVerified() : null}
|
{(!this.state.verified) ? this.renderNotVerified() : null}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div className="admin-panel-view-user__delete-button">
|
<div className="admin-panel-view-user__action-buttons">
|
||||||
<Button onClick={this.onDeleteClick.bind(this)} size="medium">{i18n('DELETE_AND_BAN')}</Button>
|
<Button
|
||||||
|
className="admin-panel-view-user__action-button"
|
||||||
|
onClick={this.onDisableClick.bind(this)}
|
||||||
|
size="medium"
|
||||||
|
type={this.state.disabled ? 'tertiary' : 'primary'}>
|
||||||
|
{i18n(this.state.disabled ? 'ENABLE_USER' : 'DISABLE_USER')}
|
||||||
|
</Button>
|
||||||
|
<Button className="admin-panel-view-user__action-button" onClick={this.onDeleteClick.bind(this)} size="medium">
|
||||||
|
{i18n('DELETE_AND_BAN')}
|
||||||
|
</Button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<span className="separator" />
|
<span className="separator" />
|
||||||
|
@ -88,6 +92,12 @@ class AdminPanelViewUser extends React.Component {
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
renderDisabled() {
|
||||||
|
return (
|
||||||
|
<InfoTooltip className="admin-panel-view-user__unverified" type="warning" text={i18n('USER_DISABLED')} />
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
getTicketListProps() {
|
getTicketListProps() {
|
||||||
return {
|
return {
|
||||||
type: 'secondary',
|
type: 'secondary',
|
||||||
|
@ -104,14 +114,31 @@ class AdminPanelViewUser extends React.Component {
|
||||||
email: result.data.email,
|
email: result.data.email,
|
||||||
verified: result.data.verified,
|
verified: result.data.verified,
|
||||||
tickets: result.data.tickets,
|
tickets: result.data.tickets,
|
||||||
|
disabled: result.data.disabled,
|
||||||
loading: false
|
loading: false
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
onDisableClick() {
|
||||||
|
AreYouSure.openModal(
|
||||||
|
i18n(this.state.disabled ? 'ENABLE_USER_DESCRIPTION' : 'DISABLE_USER_DESCRIPTION'),
|
||||||
|
this.disableUser.bind(this)
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
onDeleteClick() {
|
onDeleteClick() {
|
||||||
AreYouSure.openModal(i18n('DELETE_USER_DESCRIPTION'), this.deleteUser.bind(this))
|
AreYouSure.openModal(i18n('DELETE_USER_DESCRIPTION'), this.deleteUser.bind(this))
|
||||||
}
|
}
|
||||||
|
|
||||||
|
disableUser() {
|
||||||
|
API.call({
|
||||||
|
path: this.state.disabled ? '/user/enable' : '/user/disable',
|
||||||
|
data: {
|
||||||
|
userId: this.props.params.userId
|
||||||
|
}
|
||||||
|
}).then(this.retrieveUser.bind(this));
|
||||||
|
}
|
||||||
|
|
||||||
deleteUser() {
|
deleteUser() {
|
||||||
API.call({
|
API.call({
|
||||||
path: '/user/delete',
|
path: '/user/delete',
|
||||||
|
@ -127,6 +154,17 @@ class AdminPanelViewUser extends React.Component {
|
||||||
}).then(() => history.push('/admin/panel/users/list-users'));
|
}).then(() => history.push('/admin/panel/users/list-users'));
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
retrieveUser() {
|
||||||
|
API.call({
|
||||||
|
path: '/user/get-user',
|
||||||
|
data: {
|
||||||
|
userId: this.props.params.userId
|
||||||
|
}
|
||||||
|
}).then(this.onUserRetrieved.bind(this)).catch(() => this.setState({
|
||||||
|
invalid: true
|
||||||
|
}));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
export default connect((store) => {
|
export default connect((store) => {
|
||||||
|
|
|
@ -8,7 +8,7 @@
|
||||||
&-item {
|
&-item {
|
||||||
display: inline-block;
|
display: inline-block;
|
||||||
margin-right: 20px;
|
margin-right: 20px;
|
||||||
width: 200px;
|
min-width: 200px;
|
||||||
}
|
}
|
||||||
|
|
||||||
&-box {
|
&-box {
|
||||||
|
@ -20,10 +20,14 @@
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
&__delete-button {
|
&__action-buttons {
|
||||||
margin-top: 20px;
|
margin-top: 20px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
&__action-button {
|
||||||
|
margin-right: 20px;
|
||||||
|
}
|
||||||
|
|
||||||
&__tickets-title {
|
&__tickets-title {
|
||||||
font-size: $font-size--md;
|
font-size: $font-size--md;
|
||||||
margin-bottom: 20px;
|
margin-bottom: 20px;
|
||||||
|
|
|
@ -114,6 +114,8 @@ class MainHomePageLoginWidget extends React.Component {
|
||||||
errors.password = i18n('ERROR_PASSWORD');
|
errors.password = i18n('ERROR_PASSWORD');
|
||||||
} else if (this.props.session.failMessage === 'UNVERIFIED_USER') {
|
} else if (this.props.session.failMessage === 'UNVERIFIED_USER') {
|
||||||
errors.email = i18n('UNVERIFIED_EMAIL');
|
errors.email = i18n('UNVERIFIED_EMAIL');
|
||||||
|
} else if (this.props.session.failMessage === 'USER_DISABLED') {
|
||||||
|
errors.email = i18n('USER_DISABLED');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -183,6 +183,8 @@ export default {
|
||||||
'HIMSELF': 'ele mesmo',
|
'HIMSELF': 'ele mesmo',
|
||||||
'ADD_USER': 'Adicionar usuário',
|
'ADD_USER': 'Adicionar usuário',
|
||||||
'UPLOAD_FILE': 'Subir arquivo',
|
'UPLOAD_FILE': 'Subir arquivo',
|
||||||
|
'ENABLE_USER': 'Ativar usuário',
|
||||||
|
'DISABLE_USER': 'Desativar usuário',
|
||||||
|
|
||||||
'CHART_CREATE_TICKET': 'Chamados criados',
|
'CHART_CREATE_TICKET': 'Chamados criados',
|
||||||
'CHART_CLOSE': 'Chamados fechados',
|
'CHART_CLOSE': 'Chamados fechados',
|
||||||
|
@ -295,6 +297,8 @@ export default {
|
||||||
'ENABLE_USER_SYSTEM_DESCRIPTION': 'Ativar / desativar o uso de um sistema de usuário. Se você desativá-lo, todos os usuários serão excluídos, mas os chamados serão mantidos. Se você ativá-lo, os chamados de usuários existentes serão criados.',
|
'ENABLE_USER_SYSTEM_DESCRIPTION': 'Ativar / desativar o uso de um sistema de usuário. Se você desativá-lo, todos os usuários serão excluídos, mas os chamados serão mantidos. Se você ativá-lo, os chamados de usuários existentes serão criados.',
|
||||||
'CSV_DESCRIPTION': 'O arquivo CSV deve ter 3 colunas: e-mail, senha, nome. Não há limite na contagem de linhas. Ele será criado um usuário por linha no arquivo.',
|
'CSV_DESCRIPTION': 'O arquivo CSV deve ter 3 colunas: e-mail, senha, nome. Não há limite na contagem de linhas. Ele será criado um usuário por linha no arquivo.',
|
||||||
'SMTP_SERVER_DESCRIPTION': 'A configuração do servidor SMTP permite que o aplicativo envie e-mails. Se você não configurá-lo, nenhum e-mail será enviado pela OpenSupports.',
|
'SMTP_SERVER_DESCRIPTION': 'A configuração do servidor SMTP permite que o aplicativo envie e-mails. Se você não configurá-lo, nenhum e-mail será enviado pela OpenSupports.',
|
||||||
|
'ENABLE_USER_DESCRIPTION': 'Essa ação permite que o usuário faça login e crie tickets.',
|
||||||
|
'DISABLE_USER_DESCRIPTION': 'O usuário será desativado e não poderá fazer login e criar tickets.',
|
||||||
|
|
||||||
//ERRORS
|
//ERRORS
|
||||||
'EMAIL_OR_PASSWORD': 'E-mail ou senha inválidos',
|
'EMAIL_OR_PASSWORD': 'E-mail ou senha inválidos',
|
||||||
|
@ -324,6 +328,7 @@ export default {
|
||||||
'INVALID_FILE': 'arquivo inválido',
|
'INVALID_FILE': 'arquivo inválido',
|
||||||
'ERRORS_FOUND': 'Erros encontrados',
|
'ERRORS_FOUND': 'Erros encontrados',
|
||||||
'ERROR_IMAGE_SIZE': 'Nenhuma imagem pode ter um tamanho maior que {size} MB',
|
'ERROR_IMAGE_SIZE': 'Nenhuma imagem pode ter um tamanho maior que {size} MB',
|
||||||
|
'USER_DISABLED': 'Esta conta está desativada.',
|
||||||
|
|
||||||
//MESSAGES
|
//MESSAGES
|
||||||
'SIGNUP_SUCCESS': 'Você se registrou com sucesso em nosso sistema de suporte.',
|
'SIGNUP_SUCCESS': 'Você se registrou com sucesso em nosso sistema de suporte.',
|
||||||
|
|
|
@ -184,6 +184,8 @@ export default {
|
||||||
'HIMSELF': '他自己',
|
'HIMSELF': '他自己',
|
||||||
'ADD_USER': '添加用户',
|
'ADD_USER': '添加用户',
|
||||||
'UPLOAD_FILE': '上传文件',
|
'UPLOAD_FILE': '上传文件',
|
||||||
|
'ENABLE_USER': '启用用户',
|
||||||
|
'DISABLE_USER': '禁用用户',
|
||||||
|
|
||||||
'CHART_CREATE_TICKET': '已創建門票',
|
'CHART_CREATE_TICKET': '已創建門票',
|
||||||
'CHART_CLOSE': '門票已關閉',
|
'CHART_CLOSE': '門票已關閉',
|
||||||
|
@ -295,6 +297,8 @@ export default {
|
||||||
'ENABLE_USER_SYSTEM_DESCRIPTION': '啟用/禁用用戶系統的使用。如果你禁用它,所有的用戶將被刪除,但票將被保留。如果啟用,將創建現有票證的用戶。',
|
'ENABLE_USER_SYSTEM_DESCRIPTION': '啟用/禁用用戶系統的使用。如果你禁用它,所有的用戶將被刪除,但票將被保留。如果啟用,將創建現有票證的用戶。',
|
||||||
'CSV_DESCRIPTION': 'CSV文件必須有3列:電子郵件,密碼,名稱。行數沒有限制。它將在文件中的每行中創建一個用戶。',
|
'CSV_DESCRIPTION': 'CSV文件必須有3列:電子郵件,密碼,名稱。行數沒有限制。它將在文件中的每行中創建一個用戶。',
|
||||||
'SMTP_SERVER_DESCRIPTION': 'SMTP服务器允许应用程序发送邮件。 如果您没有配置,OpenSupports将不会发送任何电子邮件。',
|
'SMTP_SERVER_DESCRIPTION': 'SMTP服务器允许应用程序发送邮件。 如果您没有配置,OpenSupports将不会发送任何电子邮件。',
|
||||||
|
'ENABLE_USER_DESCRIPTION': '此操作允许用户登录并创建票证。',
|
||||||
|
'DISABLE_USER_DESCRIPTION': '用户将被禁用,无法登录并创建票证。',
|
||||||
|
|
||||||
//ERRORS
|
//ERRORS
|
||||||
'EMAIL_OR_PASSWORD': '電子郵件或密碼無效',
|
'EMAIL_OR_PASSWORD': '電子郵件或密碼無效',
|
||||||
|
@ -324,6 +328,7 @@ export default {
|
||||||
'INVALID_FILE': '無效文件',
|
'INVALID_FILE': '無效文件',
|
||||||
'ERRORS_FOUND': '發現錯誤',
|
'ERRORS_FOUND': '發現錯誤',
|
||||||
'ERROR_IMAGE_SIZE': '没有图像的大小可以超过{size}MB',
|
'ERROR_IMAGE_SIZE': '没有图像的大小可以超过{size}MB',
|
||||||
|
'USER_DISABLED': '此帐户已被停用。',
|
||||||
|
|
||||||
//MESSAGES
|
//MESSAGES
|
||||||
'SIGNUP_SUCCESS': '您已在我們的支持系統中成功註冊',
|
'SIGNUP_SUCCESS': '您已在我們的支持系統中成功註冊',
|
||||||
|
|
|
@ -184,6 +184,8 @@ export default {
|
||||||
'HIMSELF': 'selbst',
|
'HIMSELF': 'selbst',
|
||||||
'ADD_USER': 'Benutzer hinzufügen',
|
'ADD_USER': 'Benutzer hinzufügen',
|
||||||
'UPLOAD_FILE': 'Datei hochladen',
|
'UPLOAD_FILE': 'Datei hochladen',
|
||||||
|
'ENABLE_USER': 'Benutzer aktivieren',
|
||||||
|
'DISABLE_USER': 'Benutzer deaktivieren',
|
||||||
|
|
||||||
'CHART_CREATE_TICKET': 'Tickets erstellt',
|
'CHART_CREATE_TICKET': 'Tickets erstellt',
|
||||||
'CHART_CLOSE': 'Tickets geschlossen',
|
'CHART_CLOSE': 'Tickets geschlossen',
|
||||||
|
@ -295,6 +297,8 @@ export default {
|
||||||
'ENABLE_USER_SYSTEM_DESCRIPTION': 'Aktivieren/deaktivieren Sie die Verwendung eines Benutzersystems. Wenn Sie es deaktivieren, werden alle Benutzer gelöscht, aber die Tickets werden behalten. Wenn Sie es aktivieren, werden die Benutzer der vorhandenen Tickets erstellt.',
|
'ENABLE_USER_SYSTEM_DESCRIPTION': 'Aktivieren/deaktivieren Sie die Verwendung eines Benutzersystems. Wenn Sie es deaktivieren, werden alle Benutzer gelöscht, aber die Tickets werden behalten. Wenn Sie es aktivieren, werden die Benutzer der vorhandenen Tickets erstellt.',
|
||||||
'CSV_DESCRIPTION': 'Die CSV-Datei muss 3 Spalten haben: E-Mail-Adresse, Passwort, Name. Es gibt kein Limit in der Zeilenzahl. Es wird ein Benutzer pro Zeile in der Datei erstellt.',
|
'CSV_DESCRIPTION': 'Die CSV-Datei muss 3 Spalten haben: E-Mail-Adresse, Passwort, Name. Es gibt kein Limit in der Zeilenzahl. Es wird ein Benutzer pro Zeile in der Datei erstellt.',
|
||||||
'SMTP_SERVER_DESCRIPTION': 'Die Konfiguration des SMTP-Servers ermöglicht es der Software, Mails zu senden. Wenn Sie es nicht konfigurieren, werden keine E-Mails von OpenSupports gesendet.',
|
'SMTP_SERVER_DESCRIPTION': 'Die Konfiguration des SMTP-Servers ermöglicht es der Software, Mails zu senden. Wenn Sie es nicht konfigurieren, werden keine E-Mails von OpenSupports gesendet.',
|
||||||
|
'ENABLE_USER_DESCRIPTION': 'Mit dieser Aktion kann der Benutzer sich anmelden und Tickets erstellen.',
|
||||||
|
'DISABLE_USER_DESCRIPTION': 'Der Benutzer wird deaktiviert und kann keine Tickets anmelden und erstellen.',
|
||||||
|
|
||||||
//ERRORS
|
//ERRORS
|
||||||
'EMAIL_OR_PASSWORD': 'E-Mail-Adresse oder Passwort ungültig!',
|
'EMAIL_OR_PASSWORD': 'E-Mail-Adresse oder Passwort ungültig!',
|
||||||
|
@ -324,6 +328,7 @@ export default {
|
||||||
'INVALID_FILE': 'Ungültige Datei!',
|
'INVALID_FILE': 'Ungültige Datei!',
|
||||||
'ERRORS_FOUND': 'Fehler gefunden!',
|
'ERRORS_FOUND': 'Fehler gefunden!',
|
||||||
'ERROR_IMAGE_SIZE': 'Kein Bild darf größer als {size} MB sein',
|
'ERROR_IMAGE_SIZE': 'Kein Bild darf größer als {size} MB sein',
|
||||||
|
'USER_DISABLED': 'Dieser Account ist deaktiviert.',
|
||||||
|
|
||||||
//MESSAGES
|
//MESSAGES
|
||||||
'SIGNUP_SUCCESS': 'Sie haben sich erfolgreich in unserem Support-System registriert.',
|
'SIGNUP_SUCCESS': 'Sie haben sich erfolgreich in unserem Support-System registriert.',
|
||||||
|
|
|
@ -184,6 +184,8 @@ export default {
|
||||||
'HIMSELF': 'himself',
|
'HIMSELF': 'himself',
|
||||||
'ADD_USER': 'Add user',
|
'ADD_USER': 'Add user',
|
||||||
'UPLOAD_FILE': 'Upload file',
|
'UPLOAD_FILE': 'Upload file',
|
||||||
|
'ENABLE_USER': 'Enable User',
|
||||||
|
'DISABLE_USER': 'Disable User',
|
||||||
|
|
||||||
'CHART_CREATE_TICKET': 'Tickets created',
|
'CHART_CREATE_TICKET': 'Tickets created',
|
||||||
'CHART_CLOSE': 'Tickets closed',
|
'CHART_CLOSE': 'Tickets closed',
|
||||||
|
@ -296,6 +298,8 @@ export default {
|
||||||
'ENABLE_USER_SYSTEM_DESCRIPTION': 'Enable/disable the use of an user system. If you disable it, all users will be deleted but the tickets will be kept. If you enable it, the users of existent tickets will be created.',
|
'ENABLE_USER_SYSTEM_DESCRIPTION': 'Enable/disable the use of an user system. If you disable it, all users will be deleted but the tickets will be kept. If you enable it, the users of existent tickets will be created.',
|
||||||
'CSV_DESCRIPTION': 'The CSV file must have 3 columns: email, password, name. There is no limit in row count. It will be created one user per row in the file.',
|
'CSV_DESCRIPTION': 'The CSV file must have 3 columns: email, password, name. There is no limit in row count. It will be created one user per row in the file.',
|
||||||
'SMTP_SERVER_DESCRIPTION': 'The configuration of the SMTP server allows the application to send mails. If you do not configure it, no emails will be sent by OpenSupports.',
|
'SMTP_SERVER_DESCRIPTION': 'The configuration of the SMTP server allows the application to send mails. If you do not configure it, no emails will be sent by OpenSupports.',
|
||||||
|
'ENABLE_USER_DESCRIPTION': 'This action allows the user to sign in and create tickets.',
|
||||||
|
'DISABLE_USER_DESCRIPTION': 'User will be disabled and will not be able to sign in and create tickets.',
|
||||||
|
|
||||||
//ERRORS
|
//ERRORS
|
||||||
'EMAIL_OR_PASSWORD': 'Email or password invalid',
|
'EMAIL_OR_PASSWORD': 'Email or password invalid',
|
||||||
|
@ -325,6 +329,7 @@ export default {
|
||||||
'INVALID_FILE': 'Invalid file',
|
'INVALID_FILE': 'Invalid file',
|
||||||
'ERRORS_FOUND': 'Errors found',
|
'ERRORS_FOUND': 'Errors found',
|
||||||
'ERROR_IMAGE_SIZE': 'No image can have a size greater than {size} MB',
|
'ERROR_IMAGE_SIZE': 'No image can have a size greater than {size} MB',
|
||||||
|
'USER_DISABLED': 'This account is disabled.',
|
||||||
|
|
||||||
//MESSAGES
|
//MESSAGES
|
||||||
'SIGNUP_SUCCESS': 'You have registered successfully in our support system.',
|
'SIGNUP_SUCCESS': 'You have registered successfully in our support system.',
|
||||||
|
|
|
@ -184,6 +184,8 @@ export default {
|
||||||
'HIMSELF': 'si mismo',
|
'HIMSELF': 'si mismo',
|
||||||
'ADD_USER': 'Añadir un usuario',
|
'ADD_USER': 'Añadir un usuario',
|
||||||
'UPLOAD_FILE': 'Subir archivo',
|
'UPLOAD_FILE': 'Subir archivo',
|
||||||
|
'ENABLE_USER': 'Habilitar usuario',
|
||||||
|
'DISABLE_USER': 'Deshabilitar usuario',
|
||||||
|
|
||||||
'CHART_CREATE_TICKET': 'Tickets creados',
|
'CHART_CREATE_TICKET': 'Tickets creados',
|
||||||
'CHART_CLOSE': 'Tickets cerrados',
|
'CHART_CLOSE': 'Tickets cerrados',
|
||||||
|
@ -295,6 +297,8 @@ export default {
|
||||||
'ENABLE_USER_SYSTEM_DESCRIPTION': 'Habilitar/Deshabilitar el uso de un sistema de usuario. Si lo deshabilitas, todos los usuarios serán eliminados pero los tickets serán guardados. Si lo habilitas, se crearán los usuarios de los tickets existentes.',
|
'ENABLE_USER_SYSTEM_DESCRIPTION': 'Habilitar/Deshabilitar el uso de un sistema de usuario. Si lo deshabilitas, todos los usuarios serán eliminados pero los tickets serán guardados. Si lo habilitas, se crearán los usuarios de los tickets existentes.',
|
||||||
'CSV_DESCRIPTION': 'El archivo CSV debe tener 3 columnas: correo electrónico, contraseña, nombre. No hay límite en el recuento de filas. Se creará un usuario por fila en el archivo.',
|
'CSV_DESCRIPTION': 'El archivo CSV debe tener 3 columnas: correo electrónico, contraseña, nombre. No hay límite en el recuento de filas. Se creará un usuario por fila en el archivo.',
|
||||||
'SMTP_SERVER_DESCRIPTION': 'La configuracion de SMTP permite que la applicacion mande emails. Si no es configurado, ningún mail sera enviado OpenSupports.',
|
'SMTP_SERVER_DESCRIPTION': 'La configuracion de SMTP permite que la applicacion mande emails. Si no es configurado, ningún mail sera enviado OpenSupports.',
|
||||||
|
'ENABLE_USER_DESCRIPTION': 'Esta acción permite al usuario iniciar sesión y crear tickets..',
|
||||||
|
'DISABLE_USER_DESCRIPTION': 'El usuario estará deshabilitado y no podrá iniciar sesión y crear tickets.',
|
||||||
|
|
||||||
//ERRORS
|
//ERRORS
|
||||||
'EMAIL_OR_PASSWORD': 'Email o contraseña inválida',
|
'EMAIL_OR_PASSWORD': 'Email o contraseña inválida',
|
||||||
|
@ -349,6 +353,7 @@ export default {
|
||||||
'SUCCESS_IMPORTING_CSV_DESCRIPTION': 'El archivo CSV se ha importado correctamente',
|
'SUCCESS_IMPORTING_CSV_DESCRIPTION': 'El archivo CSV se ha importado correctamente',
|
||||||
'SUCCESS_DELETING_ALL_USERS': 'Los usuarios se han eliminado correctamente',
|
'SUCCESS_DELETING_ALL_USERS': 'Los usuarios se han eliminado correctamente',
|
||||||
'ERROR_IMAGE_SIZE': 'Ninguna imagen puede tener un tamaño superior a {size} MB',
|
'ERROR_IMAGE_SIZE': 'Ninguna imagen puede tener un tamaño superior a {size} MB',
|
||||||
|
'USER_DISABLED': 'Esta cuenta está deshabilitada.',
|
||||||
|
|
||||||
'LAST_7_DAYS': 'Últimos 7 dias',
|
'LAST_7_DAYS': 'Últimos 7 dias',
|
||||||
'LAST_30_DAYS': 'Últimos 30 dias',
|
'LAST_30_DAYS': 'Últimos 30 dias',
|
||||||
|
|
|
@ -184,6 +184,8 @@ export default {
|
||||||
'HIMSELF': 'lui-même',
|
'HIMSELF': 'lui-même',
|
||||||
'ADD_USER': 'Ajouter un utilisateur',
|
'ADD_USER': 'Ajouter un utilisateur',
|
||||||
'UPLOAD_FILE': 'Téléverser un fichier',
|
'UPLOAD_FILE': 'Téléverser un fichier',
|
||||||
|
'ENABLE_USER': 'Activer l\'utilisateur',
|
||||||
|
'DISABLE_USER': 'Désactiver l\'utilisateur',
|
||||||
|
|
||||||
'CHART_CREATE_TICKET': 'Tickets créés',
|
'CHART_CREATE_TICKET': 'Tickets créés',
|
||||||
'CHART_CLOSE': 'Tickets fermés',
|
'CHART_CLOSE': 'Tickets fermés',
|
||||||
|
@ -295,6 +297,8 @@ export default {
|
||||||
'ENABLE_USER_SYSTEM_DESCRIPTION': 'Activer / désactiver l\'utilisation d\'un système utilisateur. Si vous le désactivez, tous les utilisateurs seront supprimés, mais les tickets seront conservés. Si vous l\'activez, les utilisateurs des tickets existants seront créés.',
|
'ENABLE_USER_SYSTEM_DESCRIPTION': 'Activer / désactiver l\'utilisation d\'un système utilisateur. Si vous le désactivez, tous les utilisateurs seront supprimés, mais les tickets seront conservés. Si vous l\'activez, les utilisateurs des tickets existants seront créés.',
|
||||||
'CSV_DESCRIPTION': 'Le fichier CSV doit comporter 3 colonnes: email, mot de passe, nom. Il n\'y a pas de limite dans le nombre de lignes. Il sera créé un utilisateur par ligne dans le fichier.',
|
'CSV_DESCRIPTION': 'Le fichier CSV doit comporter 3 colonnes: email, mot de passe, nom. Il n\'y a pas de limite dans le nombre de lignes. Il sera créé un utilisateur par ligne dans le fichier.',
|
||||||
'SMTP_SERVER_DESCRIPTION': 'La configuration du serveur SMTP permet à l\'application d\'envoyer des mails. Si vous ne le configurez pas, aucun service d\'email ne sera envoyé par OpenSupports.',
|
'SMTP_SERVER_DESCRIPTION': 'La configuration du serveur SMTP permet à l\'application d\'envoyer des mails. Si vous ne le configurez pas, aucun service d\'email ne sera envoyé par OpenSupports.',
|
||||||
|
'ENABLE_USER_DESCRIPTION': 'Cette action permet à l\'utilisateur de se connecter et de créer des tickets.',
|
||||||
|
'DISABLE_USER_DESCRIPTION': 'L\'utilisateur sera désactivé et ne pourra pas se connecter et créer des tickets.',
|
||||||
|
|
||||||
//ERRORS
|
//ERRORS
|
||||||
'EMAIL_OR_PASSWORD': 'E-mail ou mot de passe invalide',
|
'EMAIL_OR_PASSWORD': 'E-mail ou mot de passe invalide',
|
||||||
|
@ -324,6 +328,7 @@ export default {
|
||||||
'INVALID_FILE': 'Fichier invalide',
|
'INVALID_FILE': 'Fichier invalide',
|
||||||
'ERRORS_FOUND': 'Des erreurs sont survenues',
|
'ERRORS_FOUND': 'Des erreurs sont survenues',
|
||||||
'ERROR_IMAGE_SIZE': 'Aucune image ne peut avoir une taille supérieure à {size} MB',
|
'ERROR_IMAGE_SIZE': 'Aucune image ne peut avoir une taille supérieure à {size} MB',
|
||||||
|
'USER_DISABLED': 'Ce compte est désactivé.',
|
||||||
|
|
||||||
//MESSAGES
|
//MESSAGES
|
||||||
'SIGNUP_SUCCESS': 'Vous êtes inscrit avec succès dans notre système de support.',
|
'SIGNUP_SUCCESS': 'Vous êtes inscrit avec succès dans notre système de support.',
|
||||||
|
|
|
@ -184,6 +184,8 @@
|
||||||
'HIMSELF': 'ο ίδιος',
|
'HIMSELF': 'ο ίδιος',
|
||||||
'ADD_USER': 'Πρόσθεσε χρήστη',
|
'ADD_USER': 'Πρόσθεσε χρήστη',
|
||||||
'UPLOAD_FILE': 'Ανέβασμα αρχείου',
|
'UPLOAD_FILE': 'Ανέβασμα αρχείου',
|
||||||
|
'ENABLE_USER': 'Ενεργοποίηση χρήστη',
|
||||||
|
'DISABLE_USER': 'Απενεργοποίηση χρήστη',
|
||||||
|
|
||||||
'CHART_CREATE_TICKET': 'Τα εισιτήρια δημιουργήθηκαν',
|
'CHART_CREATE_TICKET': 'Τα εισιτήρια δημιουργήθηκαν',
|
||||||
'CHART_CLOSE': 'Τα εισιτήρια κλείσανε',
|
'CHART_CLOSE': 'Τα εισιτήρια κλείσανε',
|
||||||
|
@ -296,6 +298,8 @@
|
||||||
'ENABLE_USER_SYSTEM_DESCRIPTION': 'Ενεργοποίηση / απενεργοποίηση της χρήσης ενός συστήματος χρήστη. Εάν την απενεργοποιήσετε, όλοι οι χρήστες θα διαγραφούν αλλά τα εισιτήρια θα διατηρηθούν. Εάν την ενεργοποιήσετε, θα δημιουργηθούν οι χρήστες των υφιστάμενων εισιτηρίων.',
|
'ENABLE_USER_SYSTEM_DESCRIPTION': 'Ενεργοποίηση / απενεργοποίηση της χρήσης ενός συστήματος χρήστη. Εάν την απενεργοποιήσετε, όλοι οι χρήστες θα διαγραφούν αλλά τα εισιτήρια θα διατηρηθούν. Εάν την ενεργοποιήσετε, θα δημιουργηθούν οι χρήστες των υφιστάμενων εισιτηρίων.',
|
||||||
'CSV_DESCRIPTION': 'Το αρχείο CSV πρέπει να έχει 3 στήλες: email, κωδικό πρόσβασης, όνομα. Δεν υπάρχει όριο στην καταμέτρηση των σειρών. Θα δημιουργηθεί ένας χρήστης ανά σειρά στο αρχείο.',
|
'CSV_DESCRIPTION': 'Το αρχείο CSV πρέπει να έχει 3 στήλες: email, κωδικό πρόσβασης, όνομα. Δεν υπάρχει όριο στην καταμέτρηση των σειρών. Θα δημιουργηθεί ένας χρήστης ανά σειρά στο αρχείο.',
|
||||||
'SMTP_SERVER_DESCRIPTION': 'Η διαμόρφωση του διακομιστή SMTP επιτρέπει στην εφαρμογή να στείλει μηνύματα. Αν δεν το ρυθμίσετε, δεν θα σταλούν μηνύματα ηλεκτρονικού ταχυδρομείου από το OpenSupport.',
|
'SMTP_SERVER_DESCRIPTION': 'Η διαμόρφωση του διακομιστή SMTP επιτρέπει στην εφαρμογή να στείλει μηνύματα. Αν δεν το ρυθμίσετε, δεν θα σταλούν μηνύματα ηλεκτρονικού ταχυδρομείου από το OpenSupport.',
|
||||||
|
'ENABLE_USER_DESCRIPTION': 'Αυτή η ενέργεια επιτρέπει στο χρήστη να συνδεθεί και να δημιουργήσει εισιτήρια.',
|
||||||
|
'DISABLE_USER_DESCRIPTION': 'Ο χρήστης θα απενεργοποιηθεί και δεν θα μπορέσει να συνδεθεί και να δημιουργήσει εισιτήρια.',
|
||||||
|
|
||||||
//ERRORS
|
//ERRORS
|
||||||
'EMAIL_OR_PASSWORD': 'Λάθος ηλεκτρονική διεύθυνση ή κωδικός πρόσβασης',
|
'EMAIL_OR_PASSWORD': 'Λάθος ηλεκτρονική διεύθυνση ή κωδικός πρόσβασης',
|
||||||
|
@ -325,6 +329,7 @@
|
||||||
'INVALID_FILE': 'Μη έγκυρο αρχείο',
|
'INVALID_FILE': 'Μη έγκυρο αρχείο',
|
||||||
'ERRORS_FOUND': 'Βρέθηκαν Σφάλματα',
|
'ERRORS_FOUND': 'Βρέθηκαν Σφάλματα',
|
||||||
'ERROR_IMAGE_SIZE': 'Καμία εικόνα δεν μπορεί να έχει μέγεθος μεγαλύτερο από {size} MB',
|
'ERROR_IMAGE_SIZE': 'Καμία εικόνα δεν μπορεί να έχει μέγεθος μεγαλύτερο από {size} MB',
|
||||||
|
'USER_DISABLED': 'Αυτός ο λογαριασμός είναι απενεργοποιημένος.',
|
||||||
|
|
||||||
//MESSAGES
|
//MESSAGES
|
||||||
'SIGNUP_SUCCESS': 'Έχετε εγγραφεί με επιτυχία στο σύστημα υποστήριξης μας.',
|
'SIGNUP_SUCCESS': 'Έχετε εγγραφεί με επιτυχία στο σύστημα υποστήριξης μας.',
|
||||||
|
|
|
@ -184,6 +184,8 @@ export default {
|
||||||
'HIMSELF': 'स्वयं',
|
'HIMSELF': 'स्वयं',
|
||||||
'ADD_USER': 'उपयोगकर्ता जोड़ें',
|
'ADD_USER': 'उपयोगकर्ता जोड़ें',
|
||||||
'UPLOAD_FILE': 'दस्तावेज अपलोड करें',
|
'UPLOAD_FILE': 'दस्तावेज अपलोड करें',
|
||||||
|
'ENABLE_USER': 'उपयोगकर्ता सक्षम करें',
|
||||||
|
'DISABLE_USER': 'उपयोगकर्ता को अक्षम करें',
|
||||||
|
|
||||||
'CHART_CREATE_TICKET': 'टिकट बनाया',
|
'CHART_CREATE_TICKET': 'टिकट बनाया',
|
||||||
'CHART_CLOSE': 'टिकट बंद कर दिया',
|
'CHART_CLOSE': 'टिकट बंद कर दिया',
|
||||||
|
@ -295,6 +297,8 @@ export default {
|
||||||
'ENABLE_USER_SYSTEM_DESCRIPTION': 'किसी उपयोगकर्ता सिस्टम के उपयोग को सक्षम / अक्षम करें यदि आप इसे अक्षम करते हैं, तो सभी उपयोगकर्ताओं को हटा दिया जाएगा लेकिन टिकट को रखा जाएगा। यदि आप इसे सक्षम करते हैं, तो विद्यमान टिकट के उपयोगकर्ता बनाए जाएंगे',
|
'ENABLE_USER_SYSTEM_DESCRIPTION': 'किसी उपयोगकर्ता सिस्टम के उपयोग को सक्षम / अक्षम करें यदि आप इसे अक्षम करते हैं, तो सभी उपयोगकर्ताओं को हटा दिया जाएगा लेकिन टिकट को रखा जाएगा। यदि आप इसे सक्षम करते हैं, तो विद्यमान टिकट के उपयोगकर्ता बनाए जाएंगे',
|
||||||
'CSV_DESCRIPTION': 'सीएसवी फ़ाइल में 3 कॉलम होना चाहिए: ईमेल, पासवर्ड, नाम। पंक्ति गणना में कोई सीमा नहीं है फ़ाइल में प्रति पंक्ति एक उपयोगकर्ता बनाया जाएगा।',
|
'CSV_DESCRIPTION': 'सीएसवी फ़ाइल में 3 कॉलम होना चाहिए: ईमेल, पासवर्ड, नाम। पंक्ति गणना में कोई सीमा नहीं है फ़ाइल में प्रति पंक्ति एक उपयोगकर्ता बनाया जाएगा।',
|
||||||
'SMTP_SERVER_DESCRIPTION': 'एसएमटीपी सर्वर का कॉन्फ़िगरेशन एप्लिकेशन को मेल भेजने की अनुमति देता है। यदि आप इसे कॉन्फ़िगर नहीं करते हैं, तो OpenSupports द्वारा कोई ईमेल नहीं भेजा जाएगा।',
|
'SMTP_SERVER_DESCRIPTION': 'एसएमटीपी सर्वर का कॉन्फ़िगरेशन एप्लिकेशन को मेल भेजने की अनुमति देता है। यदि आप इसे कॉन्फ़िगर नहीं करते हैं, तो OpenSupports द्वारा कोई ईमेल नहीं भेजा जाएगा।',
|
||||||
|
'ENABLE_USER_DESCRIPTION': 'यह क्रिया उपयोगकर्ता को साइन इन करने और टिकट बनाने की अनुमति देती है।',
|
||||||
|
'DISABLE_USER_DESCRIPTION': 'उपयोगकर्ता अक्षम कर दिया जाएगा और साइन इन करने और टिकट बनाने में सक्षम नहीं होगा।',
|
||||||
|
|
||||||
//ERRORS
|
//ERRORS
|
||||||
'EMAIL_OR_PASSWORD': 'ईमेल या पासवर्ड अमान्य',
|
'EMAIL_OR_PASSWORD': 'ईमेल या पासवर्ड अमान्य',
|
||||||
|
@ -324,6 +328,7 @@ export default {
|
||||||
'INVALID_FILE': 'अवैध फाइल',
|
'INVALID_FILE': 'अवैध फाइल',
|
||||||
'ERRORS_FOUND': 'त्रुटियां मिलीं',
|
'ERRORS_FOUND': 'त्रुटियां मिलीं',
|
||||||
'ERROR_IMAGE_SIZE': 'कोई छवि {size} एमबी से अधिक आकार नहीं हो सकती है',
|
'ERROR_IMAGE_SIZE': 'कोई छवि {size} एमबी से अधिक आकार नहीं हो सकती है',
|
||||||
|
'USER_DISABLED': 'यह खाता अक्षम है।',
|
||||||
|
|
||||||
//MESSAGES
|
//MESSAGES
|
||||||
'SIGNUP_SUCCESS': 'आप हमारे समर्थन प्रणाली में सफलतापूर्वक दर्ज कर लिया है।',
|
'SIGNUP_SUCCESS': 'आप हमारे समर्थन प्रणाली में सफलतापूर्वक दर्ज कर लिया है।',
|
||||||
|
|
|
@ -184,6 +184,8 @@ export default {
|
||||||
'HIMSELF': 'lui stesso',
|
'HIMSELF': 'lui stesso',
|
||||||
'ADD_USER': 'Aggiungi utente',
|
'ADD_USER': 'Aggiungi utente',
|
||||||
'UPLOAD_FILE': 'Caricare un file',
|
'UPLOAD_FILE': 'Caricare un file',
|
||||||
|
'ENABLE_USER': 'Abilita utente',
|
||||||
|
'DISABLE_USER': 'Disabilita utente',
|
||||||
|
|
||||||
'CHART_CREATE_TICKET': 'Tickets creato',
|
'CHART_CREATE_TICKET': 'Tickets creato',
|
||||||
'CHART_CLOSE': 'Tickets chiuso',
|
'CHART_CLOSE': 'Tickets chiuso',
|
||||||
|
@ -295,6 +297,8 @@ export default {
|
||||||
'ENABLE_USER_SYSTEM_DESCRIPTION': 'Abilita / disabilita l\'utilizzo di un sistema utente. Se lo disattiverai, tutti gli utenti verranno eliminati ma i biglietti saranno conservati. Se lo abiliterai, verranno creati gli utenti dei biglietti esistenti.',
|
'ENABLE_USER_SYSTEM_DESCRIPTION': 'Abilita / disabilita l\'utilizzo di un sistema utente. Se lo disattiverai, tutti gli utenti verranno eliminati ma i biglietti saranno conservati. Se lo abiliterai, verranno creati gli utenti dei biglietti esistenti.',
|
||||||
'CSV_DESCRIPTION': 'l file CSV deve avere 3 colonne: e-mail, password, nome. Non esiste alcun limite nel conteggio delle righe. Sarà creato un utente per riga nel file.',
|
'CSV_DESCRIPTION': 'l file CSV deve avere 3 colonne: e-mail, password, nome. Non esiste alcun limite nel conteggio delle righe. Sarà creato un utente per riga nel file.',
|
||||||
'SMTP_SERVER_DESCRIPTION': 'La configurazione del server SMTP consente all\'applicazione di inviare messaggi. Se non lo si configura, non verrà inviata alcuna email da OpenSupports.',
|
'SMTP_SERVER_DESCRIPTION': 'La configurazione del server SMTP consente all\'applicazione di inviare messaggi. Se non lo si configura, non verrà inviata alcuna email da OpenSupports.',
|
||||||
|
'ENABLE_USER_DESCRIPTION': 'Questa azione consente all\'utente di accedere e creare ticket.',
|
||||||
|
'DISABLE_USER_DESCRIPTION': 'L\'utente sarà disabilitato e non sarà in grado di accedere e creare biglietti.',
|
||||||
|
|
||||||
//ERRORS
|
//ERRORS
|
||||||
'EMAIL_OR_PASSWORD': 'Email o password errate',
|
'EMAIL_OR_PASSWORD': 'Email o password errate',
|
||||||
|
@ -324,6 +328,7 @@ export default {
|
||||||
'INVALID_FILE': 'File non valido',
|
'INVALID_FILE': 'File non valido',
|
||||||
'ERRORS_FOUND': 'Trovati errori',
|
'ERRORS_FOUND': 'Trovati errori',
|
||||||
'ERROR_IMAGE_SIZE': 'Nessuna immagine può avere una dimensione superiore a {size} MB',
|
'ERROR_IMAGE_SIZE': 'Nessuna immagine può avere una dimensione superiore a {size} MB',
|
||||||
|
'USER_DISABLED': 'Questo account è disabilitato.',
|
||||||
|
|
||||||
//MESSAGES
|
//MESSAGES
|
||||||
'SIGNUP_SUCCESS': 'È stato registrato con successo nel nostro sistema di supporto.',
|
'SIGNUP_SUCCESS': 'È stato registrato con successo nel nostro sistema di supporto.',
|
||||||
|
|
|
@ -184,6 +184,8 @@ export default {
|
||||||
'HIMSELF': '彼自身',
|
'HIMSELF': '彼自身',
|
||||||
'ADD_USER': 'ユーザーを追加する',
|
'ADD_USER': 'ユーザーを追加する',
|
||||||
'UPLOAD_FILE': 'ファイルをアップロードする',
|
'UPLOAD_FILE': 'ファイルをアップロードする',
|
||||||
|
'ENABLE_USER': 'ユーザーを有効にする',
|
||||||
|
'DISABLE_USER': 'ユーザーを無効にする',
|
||||||
|
|
||||||
'CHART_CREATE_TICKET': '作成されたチケット',
|
'CHART_CREATE_TICKET': '作成されたチケット',
|
||||||
'CHART_CLOSE': 'チケットが閉じられました',
|
'CHART_CLOSE': 'チケットが閉じられました',
|
||||||
|
@ -295,6 +297,8 @@ export default {
|
||||||
'ENABLE_USER_SYSTEM_DESCRIPTION': 'ユーザシステムの使用を有効/無効にします。無効にすると、すべてのユーザーは削除されますが、チケットは保持されます。これを有効にすると、既存のチケットのユーザーが作成されます。',
|
'ENABLE_USER_SYSTEM_DESCRIPTION': 'ユーザシステムの使用を有効/無効にします。無効にすると、すべてのユーザーは削除されますが、チケットは保持されます。これを有効にすると、既存のチケットのユーザーが作成されます。',
|
||||||
'CSV_DESCRIPTION': 'CSVファイルには、電子メール、パスワード、名前の3つの列が必要です。行数に制限はありません。ファイル内で行ごとに1人ずつ作成されます',
|
'CSV_DESCRIPTION': 'CSVファイルには、電子メール、パスワード、名前の3つの列が必要です。行数に制限はありません。ファイル内で行ごとに1人ずつ作成されます',
|
||||||
'SMTP_SERVER_DESCRIPTION': 'SMTPサーバーの設定により、アプリケーションはメールを送信できます。 これを設定しないと、OpenSupportsから電子メールは送信されません。',
|
'SMTP_SERVER_DESCRIPTION': 'SMTPサーバーの設定により、アプリケーションはメールを送信できます。 これを設定しないと、OpenSupportsから電子メールは送信されません。',
|
||||||
|
'ENABLE_USER_DESCRIPTION': 'これにより、ユーザーはサインインしてチケットを作成できます。',
|
||||||
|
'DISABLE_USER_DESCRIPTION': 'ユーザーは無効になり、ログインしてチケットを作成することはできません。',
|
||||||
|
|
||||||
//ERRORS
|
//ERRORS
|
||||||
'EMAIL_OR_PASSWORD': '電子メールまたはパスワードが無効です',
|
'EMAIL_OR_PASSWORD': '電子メールまたはパスワードが無効です',
|
||||||
|
@ -324,6 +328,7 @@ export default {
|
||||||
'INVALID_FILE': '無効なファイル',
|
'INVALID_FILE': '無効なファイル',
|
||||||
'ERRORS_FOUND': 'エラーが見つかりました',
|
'ERRORS_FOUND': 'エラーが見つかりました',
|
||||||
'ERROR_IMAGE_SIZE': 'イメージのサイズが{size} MBを超えることはできません',
|
'ERROR_IMAGE_SIZE': 'イメージのサイズが{size} MBを超えることはできません',
|
||||||
|
'USER_DISABLED': 'このアカウントは無効です。',
|
||||||
|
|
||||||
//MESSAGES
|
//MESSAGES
|
||||||
'SIGNUP_SUCCESS': 'あなたは私たちのサポートシステムに正常に登録しました。',
|
'SIGNUP_SUCCESS': 'あなたは私たちのサポートシステムに正常に登録しました。',
|
||||||
|
|
|
@ -184,6 +184,8 @@ export default {
|
||||||
'HIMSELF': 'zichzelf',
|
'HIMSELF': 'zichzelf',
|
||||||
'ADD_USER': 'Voeg gebruiker toe',
|
'ADD_USER': 'Voeg gebruiker toe',
|
||||||
'UPLOAD_FILE': 'Upload bestand',
|
'UPLOAD_FILE': 'Upload bestand',
|
||||||
|
'ENABLE_USER': 'Schakel gebruiker in',
|
||||||
|
'DISABLE_USER': 'Gebruiker uitschakelen',
|
||||||
|
|
||||||
'CHART_CREATE_TICKET': 'Aangemaakte incidenten',
|
'CHART_CREATE_TICKET': 'Aangemaakte incidenten',
|
||||||
'CHART_CLOSE': 'Gesloten incidenten',
|
'CHART_CLOSE': 'Gesloten incidenten',
|
||||||
|
@ -296,6 +298,8 @@ export default {
|
||||||
'ENABLE_USER_SYSTEM_DESCRIPTION': 'Schakel het gebruik van een gebruikerssysteem in / uit. Als u dit uitschakelt, worden alle gebruikers verwijderd, maar worden de incidenten bewaard. Als u dit inschakelt, worden de gebruikers van bestaande incidenten aangemaakt.',
|
'ENABLE_USER_SYSTEM_DESCRIPTION': 'Schakel het gebruik van een gebruikerssysteem in / uit. Als u dit uitschakelt, worden alle gebruikers verwijderd, maar worden de incidenten bewaard. Als u dit inschakelt, worden de gebruikers van bestaande incidenten aangemaakt.',
|
||||||
'CSV_DESCRIPTION': 'Het CSV-bestand moet drie kolommen bevatten: e-mailadres, wachtwoord, naam. Er is geen limiet in rijtelling. Er wordt één gebruiker per rij in de database gemaakt.',
|
'CSV_DESCRIPTION': 'Het CSV-bestand moet drie kolommen bevatten: e-mailadres, wachtwoord, naam. Er is geen limiet in rijtelling. Er wordt één gebruiker per rij in de database gemaakt.',
|
||||||
'SMTP_SERVER_DESCRIPTION': 'De configuratie van de SMTP-server staat het systeem toe om e-mails te verzenden. Als u deze optie niet configureerd, worden er geen e-mails verzonden door OpenSupports.',
|
'SMTP_SERVER_DESCRIPTION': 'De configuratie van de SMTP-server staat het systeem toe om e-mails te verzenden. Als u deze optie niet configureerd, worden er geen e-mails verzonden door OpenSupports.',
|
||||||
|
'ENABLE_USER_DESCRIPTION': 'Met deze actie kan de gebruiker inloggen en tickets maken.',
|
||||||
|
'DISABLE_USER_DESCRIPTION': 'De gebruiker wordt uitgeschakeld en kan zich niet aanmelden en geen tickets maken.',
|
||||||
|
|
||||||
//ERRORS
|
//ERRORS
|
||||||
'EMAIL_OR_PASSWORD': 'E-mailadres of wachtwoord ongeldig',
|
'EMAIL_OR_PASSWORD': 'E-mailadres of wachtwoord ongeldig',
|
||||||
|
@ -325,6 +329,7 @@ export default {
|
||||||
'INVALID_FILE': 'Ongeldig bestand',
|
'INVALID_FILE': 'Ongeldig bestand',
|
||||||
'ERRORS_FOUND': 'Er is een fout opgetreden',
|
'ERRORS_FOUND': 'Er is een fout opgetreden',
|
||||||
'ERROR_IMAGE_SIZE': 'Geen enkele afbeelding kan groter zijn dan {size} MB',
|
'ERROR_IMAGE_SIZE': 'Geen enkele afbeelding kan groter zijn dan {size} MB',
|
||||||
|
'USER_DISABLED': 'Dit account is uitgeschakeld.',
|
||||||
|
|
||||||
//MESSAGES
|
//MESSAGES
|
||||||
'SIGNUP_SUCCESS': 'U hebt zich succesvol geregistreerd in ons ondersteuningssysteem.',
|
'SIGNUP_SUCCESS': 'U hebt zich succesvol geregistreerd in ons ondersteuningssysteem.',
|
||||||
|
|
|
@ -184,6 +184,8 @@ export default {
|
||||||
'HIMSELF': 'ele mesmo',
|
'HIMSELF': 'ele mesmo',
|
||||||
'ADD_USER': 'Adicionar usuário',
|
'ADD_USER': 'Adicionar usuário',
|
||||||
'UPLOAD_FILE': 'Subir arquivo',
|
'UPLOAD_FILE': 'Subir arquivo',
|
||||||
|
'ENABLE_USER': 'Ativar usuário',
|
||||||
|
'DISABLE_USER': 'Desativar usuário',
|
||||||
|
|
||||||
'CHART_CREATE_TICKET': 'Ingressos criados',
|
'CHART_CREATE_TICKET': 'Ingressos criados',
|
||||||
'CHART_CLOSE': 'Ingressos fechados',
|
'CHART_CLOSE': 'Ingressos fechados',
|
||||||
|
@ -295,6 +297,8 @@ export default {
|
||||||
'ENABLE_USER_SYSTEM_DESCRIPTION': 'Ativar / desativar o uso de um sistema de usuário. Se você desativá-lo, todos os usuários serão excluídos, mas os ingressos serão mantidos. Se você ativá-lo, os usuários de tickets existentes serão criados.',
|
'ENABLE_USER_SYSTEM_DESCRIPTION': 'Ativar / desativar o uso de um sistema de usuário. Se você desativá-lo, todos os usuários serão excluídos, mas os ingressos serão mantidos. Se você ativá-lo, os usuários de tickets existentes serão criados.',
|
||||||
'CSV_DESCRIPTION': 'O arquivo CSV deve ter 3 colunas: e-mail, senha, nome. Não há limite na contagem de linhas. Ele será criado um usuário por linha no arquivo.',
|
'CSV_DESCRIPTION': 'O arquivo CSV deve ter 3 colunas: e-mail, senha, nome. Não há limite na contagem de linhas. Ele será criado um usuário por linha no arquivo.',
|
||||||
'SMTP_SERVER_DESCRIPTION': 'A configuração do servidor SMTP permite que o aplicativo envie e-mails. Se você não configurá-lo, nenhum e-mail será enviado pela OpenSupports.',
|
'SMTP_SERVER_DESCRIPTION': 'A configuração do servidor SMTP permite que o aplicativo envie e-mails. Se você não configurá-lo, nenhum e-mail será enviado pela OpenSupports.',
|
||||||
|
'ENABLE_USER_DESCRIPTION': 'Essa ação permite que o usuário faça login e crie tickets.',
|
||||||
|
'DISABLE_USER_DESCRIPTION': 'O usuário será desativado e não poderá fazer login e criar tickets.',
|
||||||
|
|
||||||
//ERRORS
|
//ERRORS
|
||||||
'EMAIL_OR_PASSWORD': 'E-mail ou senha inválidos',
|
'EMAIL_OR_PASSWORD': 'E-mail ou senha inválidos',
|
||||||
|
@ -324,6 +328,7 @@ export default {
|
||||||
'INVALID_FILE': 'arquivo inválido',
|
'INVALID_FILE': 'arquivo inválido',
|
||||||
'ERRORS_FOUND': 'Erros encontrados',
|
'ERRORS_FOUND': 'Erros encontrados',
|
||||||
'ERROR_IMAGE_SIZE': 'Nenhuma imagem pode ter um tamanho maior que {size} MB',
|
'ERROR_IMAGE_SIZE': 'Nenhuma imagem pode ter um tamanho maior que {size} MB',
|
||||||
|
'USER_DISABLED': 'Esta conta está desativada.',
|
||||||
|
|
||||||
//MESSAGES
|
//MESSAGES
|
||||||
'SIGNUP_SUCCESS': 'Você se registrou com sucesso em nosso sistema de suporte.',
|
'SIGNUP_SUCCESS': 'Você se registrou com sucesso em nosso sistema de suporte.',
|
||||||
|
|
|
@ -184,6 +184,8 @@ export default {
|
||||||
'HIMSELF': 'сам',
|
'HIMSELF': 'сам',
|
||||||
'ADD_USER': 'Добавить пользователя',
|
'ADD_USER': 'Добавить пользователя',
|
||||||
'UPLOAD_FILE': 'Загрузить файл',
|
'UPLOAD_FILE': 'Загрузить файл',
|
||||||
|
'ENABLE_USER': 'Включить пользователя',
|
||||||
|
'DISABLE_USER': 'Отключить пользователя',
|
||||||
|
|
||||||
'CHART_CREATE_TICKET': 'Билеты создано',
|
'CHART_CREATE_TICKET': 'Билеты создано',
|
||||||
'CHART_CLOSE': ' Билеты закрыты',
|
'CHART_CLOSE': ' Билеты закрыты',
|
||||||
|
@ -294,6 +296,8 @@ export default {
|
||||||
'ENABLE_USER_SYSTEM_DESCRIPTION': 'Включить / отключить использование пользовательской системы. Если вы отключите его, все пользователи будут удалены. Если вы включите его, будут созданы пользователи существующих билетов.',
|
'ENABLE_USER_SYSTEM_DESCRIPTION': 'Включить / отключить использование пользовательской системы. Если вы отключите его, все пользователи будут удалены. Если вы включите его, будут созданы пользователи существующих билетов.',
|
||||||
'CSV_DESCRIPTION': 'Файл CSV должен иметь 3 столбца: адрес электронной почты, пароль и имя. Количество строк не ограничено. В файле будет создан один пользователь для каждой строки.',
|
'CSV_DESCRIPTION': 'Файл CSV должен иметь 3 столбца: адрес электронной почты, пароль и имя. Количество строк не ограничено. В файле будет создан один пользователь для каждой строки.',
|
||||||
'SMTP_SERVER_DESCRIPTION': 'Конфигурация SMTP-сервера позволяет приложению отправлять письма. Если вы не настроите его, никакие электронные письма не будут отправлены OpenSupports.',
|
'SMTP_SERVER_DESCRIPTION': 'Конфигурация SMTP-сервера позволяет приложению отправлять письма. Если вы не настроите его, никакие электронные письма не будут отправлены OpenSupports.',
|
||||||
|
'ENABLE_USER_DESCRIPTION': 'Это действие позволяет пользователю входить в систему и создавать билеты.',
|
||||||
|
'DISABLE_USER_DESCRIPTION': 'Пользователь будет отключен и не сможет войти и создать билеты',
|
||||||
|
|
||||||
//ERRORS
|
//ERRORS
|
||||||
'EMAIL_OR_PASSWORD': 'электронной почты или пароль недействительный',
|
'EMAIL_OR_PASSWORD': 'электронной почты или пароль недействительный',
|
||||||
|
@ -323,6 +327,7 @@ export default {
|
||||||
'INVALID_FILE': 'неверный файл',
|
'INVALID_FILE': 'неверный файл',
|
||||||
'ERRORS_FOUND': 'Ошибки найдены',
|
'ERRORS_FOUND': 'Ошибки найдены',
|
||||||
'ERROR_IMAGE_SIZE': 'Изображение не может иметь размер больше {size} МБ',
|
'ERROR_IMAGE_SIZE': 'Изображение не может иметь размер больше {size} МБ',
|
||||||
|
'USER_DISABLED': 'Эта учетная запись отключена.',
|
||||||
|
|
||||||
//MESSAGES
|
//MESSAGES
|
||||||
'SIGNUP_SUCCESS': 'Вы успешно зарегистрировались в нашей системе поддержки.',
|
'SIGNUP_SUCCESS': 'Вы успешно зарегистрировались в нашей системе поддержки.',
|
||||||
|
|
|
@ -184,6 +184,8 @@ export default {
|
||||||
'HIMSELF': 'kendisi',
|
'HIMSELF': 'kendisi',
|
||||||
'ADD_USER': 'Kullanıcı Ekle',
|
'ADD_USER': 'Kullanıcı Ekle',
|
||||||
'UPLOAD_FILE': 'Dosya yükleme',
|
'UPLOAD_FILE': 'Dosya yükleme',
|
||||||
|
'ENABLE_USER': 'Kullanıcıyı Etkinleştir',
|
||||||
|
'DISABLE_USER': 'Kullanıcıyı Devre Dışı Bırak',
|
||||||
|
|
||||||
'CHART_CREATE_TICKET': 'Biletler oluşturuldu',
|
'CHART_CREATE_TICKET': 'Biletler oluşturuldu',
|
||||||
'CHART_CLOSE': 'Biletler kapandı',
|
'CHART_CLOSE': 'Biletler kapandı',
|
||||||
|
@ -295,6 +297,8 @@ export default {
|
||||||
'ENABLE_USER_SYSTEM_DESCRIPTION': 'Bir kullanıcı sisteminin kullanımını etkinleştirir / devre dışı bırakır. Devre dışı bırakırsanız, tüm kullanıcılar silinir ancak biletler muhafaza edilir. Etkinleştirirseniz, mevcut biletler kullanıcıları oluşturulur.',
|
'ENABLE_USER_SYSTEM_DESCRIPTION': 'Bir kullanıcı sisteminin kullanımını etkinleştirir / devre dışı bırakır. Devre dışı bırakırsanız, tüm kullanıcılar silinir ancak biletler muhafaza edilir. Etkinleştirirseniz, mevcut biletler kullanıcıları oluşturulur.',
|
||||||
'CSV_DESCRIPTION': 'CSV dosyasının 3 sütun olması gerekir: e-posta, şifre, ad. Satır sayısı sınırı yoktur. Dosya satır başına bir kullanıcı oluşturulur.',
|
'CSV_DESCRIPTION': 'CSV dosyasının 3 sütun olması gerekir: e-posta, şifre, ad. Satır sayısı sınırı yoktur. Dosya satır başına bir kullanıcı oluşturulur.',
|
||||||
'SMTP_SERVER_DESCRIPTION': 'SMTP sunucusunun yapılandırması, uygulamanın postalar göndermesine izin verir. Onu yapılandırmazsanız, OpenSupports tarafından hiçbir e-posta gönderilmeyecektir',
|
'SMTP_SERVER_DESCRIPTION': 'SMTP sunucusunun yapılandırması, uygulamanın postalar göndermesine izin verir. Onu yapılandırmazsanız, OpenSupports tarafından hiçbir e-posta gönderilmeyecektir',
|
||||||
|
'ENABLE_USER_DESCRIPTION': 'Bu eylem, kullanıcının giriş yapmasına ve bilet oluşturmasına izin verir.',
|
||||||
|
'DISABLE_USER_DESCRIPTION': 'Kullanıcı devre dışı bırakılacak ve oturum açıp bilet oluşturamayacak.',
|
||||||
|
|
||||||
//ERRORS
|
//ERRORS
|
||||||
'EMAIL_OR_PASSWORD': 'E-posta veya şifre geçersiz',
|
'EMAIL_OR_PASSWORD': 'E-posta veya şifre geçersiz',
|
||||||
|
@ -324,6 +328,7 @@ export default {
|
||||||
'INVALID_FILE': 'geçersiz dosya',
|
'INVALID_FILE': 'geçersiz dosya',
|
||||||
'ERRORS_FOUND': 'Hatalar bulundu',
|
'ERRORS_FOUND': 'Hatalar bulundu',
|
||||||
'ERROR_IMAGE_SIZE': 'Hiçbir resmin boyutu {size} MB\'den büyük olabilir',
|
'ERROR_IMAGE_SIZE': 'Hiçbir resmin boyutu {size} MB\'den büyük olabilir',
|
||||||
|
'USER_DISABLED': 'Bu hesap devre dışı.',
|
||||||
|
|
||||||
//MESSAGES
|
//MESSAGES
|
||||||
'SIGNUP_SUCCESS': 'Destek sistemimize başarılı bir şekilde kayıt oldunuz.',
|
'SIGNUP_SUCCESS': 'Destek sistemimize başarılı bir şekilde kayıt oldunuz.',
|
||||||
|
|
|
@ -15,6 +15,8 @@ include 'user/ban.php';
|
||||||
include 'user/un-ban.php';
|
include 'user/un-ban.php';
|
||||||
include 'user/list-ban.php';
|
include 'user/list-ban.php';
|
||||||
include 'user/verify.php';
|
include 'user/verify.php';
|
||||||
|
include 'user/enable.php';
|
||||||
|
include 'user/disable.php';
|
||||||
|
|
||||||
$userControllers = new ControllerGroup();
|
$userControllers = new ControllerGroup();
|
||||||
$userControllers->setGroupPath('/user');
|
$userControllers->setGroupPath('/user');
|
||||||
|
@ -35,4 +37,6 @@ $userControllers->addController(new BanUserController);
|
||||||
$userControllers->addController(new UnBanUserController);
|
$userControllers->addController(new UnBanUserController);
|
||||||
$userControllers->addController(new ListBanUserController);
|
$userControllers->addController(new ListBanUserController);
|
||||||
$userControllers->addController(new VerifyController);
|
$userControllers->addController(new VerifyController);
|
||||||
|
$userControllers->addController(new EnableUserController);
|
||||||
|
$userControllers->addController(new DisableUserController);
|
||||||
$userControllers->finalize();
|
$userControllers->finalize();
|
||||||
|
|
|
@ -0,0 +1,52 @@
|
||||||
|
<?php
|
||||||
|
use Respect\Validation\Validator as DataValidator;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @api {post} /user/disable Ban email
|
||||||
|
* @apiVersion 4.3.0
|
||||||
|
*
|
||||||
|
* @apiName Disable User
|
||||||
|
*
|
||||||
|
* @apiGroup User
|
||||||
|
*
|
||||||
|
* @apiDescription This path takes an user id and disabled access for it
|
||||||
|
*
|
||||||
|
* @apiPermission staff1
|
||||||
|
*
|
||||||
|
* @apiParam {String} userId Id of the user to disable
|
||||||
|
*
|
||||||
|
* @apiUse NO_PERMISSION
|
||||||
|
* @apiUse INVALID_USER
|
||||||
|
* @apiUse ALREADY_DISABLED
|
||||||
|
*
|
||||||
|
* @apiSuccess {Object} data Empty object
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
class DisableUserController extends Controller {
|
||||||
|
const PATH = '/disable';
|
||||||
|
const METHOD = 'POST';
|
||||||
|
|
||||||
|
public function validations() {
|
||||||
|
return [
|
||||||
|
'permission' => 'staff_1',
|
||||||
|
'requestData' => [
|
||||||
|
'userId' => [
|
||||||
|
'validation' => DataValidator::dataStoreId('user'),
|
||||||
|
'error' => ERRORS::INVALID_USER
|
||||||
|
]
|
||||||
|
]
|
||||||
|
];
|
||||||
|
}
|
||||||
|
|
||||||
|
public function handler() {
|
||||||
|
$user = User::getDataStore(Controller::request('userId'));
|
||||||
|
if($user->disabled) {
|
||||||
|
throw new Exception(ERRORS::ALREADY_DISABLED);
|
||||||
|
}
|
||||||
|
|
||||||
|
$user->disabled = 1;
|
||||||
|
$user->store();
|
||||||
|
|
||||||
|
Response::respondSuccess();
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,53 @@
|
||||||
|
<?php
|
||||||
|
use Respect\Validation\Validator as DataValidator;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @api {post} /user/enable Ban email
|
||||||
|
* @apiVersion 4.3.0
|
||||||
|
*
|
||||||
|
* @apiName Enable User
|
||||||
|
*
|
||||||
|
* @apiGroup User
|
||||||
|
*
|
||||||
|
* @apiDescription This path takes an user id and enables it
|
||||||
|
*
|
||||||
|
* @apiPermission staff1
|
||||||
|
*
|
||||||
|
* @apiParam {String} userId Id of the user to enable
|
||||||
|
*
|
||||||
|
* @apiUse NO_PERMISSION
|
||||||
|
* @apiUse INVALID_USER
|
||||||
|
* @apiUse ALREADY_ENABLED
|
||||||
|
*
|
||||||
|
* @apiSuccess {Object} data Empty object
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
class EnableUserController extends Controller {
|
||||||
|
const PATH = '/enable';
|
||||||
|
const METHOD = 'POST';
|
||||||
|
|
||||||
|
public function validations() {
|
||||||
|
return [
|
||||||
|
'permission' => 'staff_1',
|
||||||
|
'requestData' => [
|
||||||
|
'userId' => [
|
||||||
|
'validation' => DataValidator::dataStoreId('user'),
|
||||||
|
'error' => ERRORS::INVALID_USER
|
||||||
|
]
|
||||||
|
]
|
||||||
|
];
|
||||||
|
}
|
||||||
|
|
||||||
|
public function handler() {
|
||||||
|
$user = User::getDataStore(Controller::request('userId'));
|
||||||
|
|
||||||
|
if(!$user->disabled) {
|
||||||
|
throw new Exception(ERRORS::ALREADY_ENABLED);
|
||||||
|
}
|
||||||
|
|
||||||
|
$user->disabled = 0;
|
||||||
|
$user->store();
|
||||||
|
|
||||||
|
Response::respondSuccess();
|
||||||
|
}
|
||||||
|
}
|
|
@ -46,7 +46,6 @@ class GetUserByIdController extends Controller {
|
||||||
}
|
}
|
||||||
|
|
||||||
public function handler() {
|
public function handler() {
|
||||||
|
|
||||||
if(!Controller::isUserSystemEnabled()) {
|
if(!Controller::isUserSystemEnabled()) {
|
||||||
throw new Exception(ERRORS::USER_SYSTEM_DISABLED);
|
throw new Exception(ERRORS::USER_SYSTEM_DISABLED);
|
||||||
}
|
}
|
||||||
|
@ -68,7 +67,8 @@ class GetUserByIdController extends Controller {
|
||||||
'email' => $user->email,
|
'email' => $user->email,
|
||||||
'signupDate' => $user->signupDate,
|
'signupDate' => $user->signupDate,
|
||||||
'tickets' => $tickets->toArray(),
|
'tickets' => $tickets->toArray(),
|
||||||
'verified' => !$user->verificationToken
|
'verified' => !$user->verificationToken,
|
||||||
|
'disabled' => !!$user->disabled
|
||||||
]);
|
]);
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -15,7 +15,7 @@ use Respect\Validation\Validator as DataValidator;
|
||||||
*
|
*
|
||||||
* @apiParam {Number} page Number of pages of users.
|
* @apiParam {Number} page Number of pages of users.
|
||||||
* @apiParam {String} orderBy Parameter to order the users by tickets or id.
|
* @apiParam {String} orderBy Parameter to order the users by tickets or id.
|
||||||
* @apiParam {Boolean} desc Parameter to order the users in an ascending or descending way.
|
* @apiParam {Boolean} desc Parameter to order the users in an ascending or descending way.
|
||||||
* @apiParam {String} search Text query to find users.
|
* @apiParam {String} search Text query to find users.
|
||||||
*
|
*
|
||||||
* @apiUse NO_PERMISSION
|
* @apiUse NO_PERMISSION
|
||||||
|
@ -67,7 +67,8 @@ class GetUsersController extends Controller {
|
||||||
'verified' => !$user->verificationToken,
|
'verified' => !$user->verificationToken,
|
||||||
'tickets' => $user->tickets,
|
'tickets' => $user->tickets,
|
||||||
'email' => $user->email,
|
'email' => $user->email,
|
||||||
'signupDate' => $user->signupDate
|
'signupDate' => $user->signupDate,
|
||||||
|
'disabled' => !!$user->disabled
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -61,6 +61,10 @@ class LoginController extends Controller {
|
||||||
throw new Exception(ERRORS::UNVERIFIED_USER);
|
throw new Exception(ERRORS::UNVERIFIED_USER);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if($this->userInstance->disabled) {
|
||||||
|
throw new Exception(ERRORS::USER_DISABLED);
|
||||||
|
}
|
||||||
|
|
||||||
$this->createUserSession();
|
$this->createUserSession();
|
||||||
$this->createSessionCookie();
|
$this->createSessionCookie();
|
||||||
if(Controller::request('staff')) {
|
if(Controller::request('staff')) {
|
||||||
|
|
|
@ -51,13 +51,13 @@ class VerifyController extends Controller{
|
||||||
$userRow = User::getDataStore($email, 'email');
|
$userRow = User::getDataStore($email, 'email');
|
||||||
|
|
||||||
if(!$userRow) {
|
if(!$userRow) {
|
||||||
Response::respondError(ERRORS::INVALID_EMAIL);
|
throw new Exception(ERRORS::INVALID_EMAIL);
|
||||||
return;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if($userRow->verificationToken !== $token) {
|
if($userRow->verificationToken !== $token) {
|
||||||
Response::respondError(ERRORS::INVALID_TOKEN);
|
throw new Exception(ERRORS::INVALID_TOKEN);
|
||||||
return;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
$userRow->verificationToken = null;
|
$userRow->verificationToken = null;
|
||||||
$userRow->store();
|
$userRow->store();
|
||||||
|
|
||||||
|
|
|
@ -175,6 +175,18 @@
|
||||||
* @apiDefine SMTP_CONNECTION
|
* @apiDefine SMTP_CONNECTION
|
||||||
* @apiError {String} SMTP_CONNECTION Could not connect with SMTP server.
|
* @apiError {String} SMTP_CONNECTION Could not connect with SMTP server.
|
||||||
*/
|
*/
|
||||||
|
/**
|
||||||
|
* @apiDefine ALREADY_DISABLED
|
||||||
|
* @apiError {String} ALREADY_DISABLED User is already disabled
|
||||||
|
*/
|
||||||
|
/**
|
||||||
|
* @apiDefine ALREADY_ENABLED
|
||||||
|
* @apiError {String} ALREADY_ENABLED User is already enabled
|
||||||
|
*/
|
||||||
|
/**
|
||||||
|
* @apiDefine USER_DISABLED
|
||||||
|
* @apiError {String} USER_DISABLED User is disabled
|
||||||
|
*/
|
||||||
|
|
||||||
class ERRORS {
|
class ERRORS {
|
||||||
const INVALID_CREDENTIALS = 'INVALID_CREDENTIALS';
|
const INVALID_CREDENTIALS = 'INVALID_CREDENTIALS';
|
||||||
|
@ -222,4 +234,7 @@ class ERRORS {
|
||||||
const DATABASE_CONNECTION = 'DATABASE_CONNECTION';
|
const DATABASE_CONNECTION = 'DATABASE_CONNECTION';
|
||||||
const DATABASE_CREATION = 'DATABASE_CREATION';
|
const DATABASE_CREATION = 'DATABASE_CREATION';
|
||||||
const SMTP_CONNECTION = 'SMTP_CONNECTION';
|
const SMTP_CONNECTION = 'SMTP_CONNECTION';
|
||||||
|
const ALREADY_DISABLED = 'ALREADY_DISABLED';
|
||||||
|
const ALREADY_ENABLED = 'ALREADY_ENABLED';
|
||||||
|
const USER_DISABLED = 'USER_DISABLED';
|
||||||
}
|
}
|
||||||
|
|
|
@ -28,7 +28,8 @@ class User extends DataStore {
|
||||||
'signupDate',
|
'signupDate',
|
||||||
'tickets',
|
'tickets',
|
||||||
'sharedTicketList',
|
'sharedTicketList',
|
||||||
'verificationToken'
|
'verificationToken',
|
||||||
|
'disabled'
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -45,7 +46,8 @@ class User extends DataStore {
|
||||||
'email' => $this->email,
|
'email' => $this->email,
|
||||||
'id' => $this->id,
|
'id' => $this->id,
|
||||||
'name' => $this->name,
|
'name' => $this->name,
|
||||||
'verified' => !$this->verificationToken
|
'verified' => !$this->verificationToken,
|
||||||
|
'disabled' => $this->disabled
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -19,6 +19,7 @@ require './user/recover-password.rb'
|
||||||
require './user/edit-password.rb'
|
require './user/edit-password.rb'
|
||||||
require './user/edit-email.rb'
|
require './user/edit-email.rb'
|
||||||
require './user/get.rb'
|
require './user/get.rb'
|
||||||
|
require './user/enable-disable.rb'
|
||||||
require './ticket/create.rb'
|
require './ticket/create.rb'
|
||||||
require './ticket/comment.rb'
|
require './ticket/comment.rb'
|
||||||
require './ticket/get.rb'
|
require './ticket/get.rb'
|
||||||
|
|
|
@ -0,0 +1,75 @@
|
||||||
|
describe 'Enable/disable user' do
|
||||||
|
user = $database.getRow('user', 'login@os4.com', 'email');
|
||||||
|
|
||||||
|
describe '/user/disable' do
|
||||||
|
request('/user/logout');
|
||||||
|
Scripts.login('staff@opensupports.com', 'staff', true);
|
||||||
|
|
||||||
|
it 'should disable user' do
|
||||||
|
result = request('/user/disable', {
|
||||||
|
userId: user['id'],
|
||||||
|
csrf_token: $csrf_token,
|
||||||
|
csrf_userid: $csrf_userid,
|
||||||
|
})
|
||||||
|
|
||||||
|
(result['status']).should.equal('success');
|
||||||
|
end
|
||||||
|
|
||||||
|
it 'should not disable user if already disabled' do
|
||||||
|
result = request('/user/disable', {
|
||||||
|
userId: user['id'],
|
||||||
|
csrf_token: $csrf_token,
|
||||||
|
csrf_userid: $csrf_userid,
|
||||||
|
})
|
||||||
|
|
||||||
|
(result['status']).should.equal('fail');
|
||||||
|
(result['message']).should.equal('ALREADY_DISABLED')
|
||||||
|
end
|
||||||
|
|
||||||
|
it 'should reject login' do
|
||||||
|
request('/user/logout');
|
||||||
|
result = request('/user/login', {
|
||||||
|
email: 'login@os4.com',
|
||||||
|
password: 'loginpass'
|
||||||
|
})
|
||||||
|
|
||||||
|
(result['status']).should.equal('fail')
|
||||||
|
(result['message']).should.equal('USER_DISABLED')
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
describe '/user/enable' do
|
||||||
|
request('/user/logout');
|
||||||
|
Scripts.login('staff@opensupports.com', 'staff', true);
|
||||||
|
|
||||||
|
it 'should enable user' do
|
||||||
|
result = request('/user/enable', {
|
||||||
|
userId: user['id'],
|
||||||
|
csrf_token: $csrf_token,
|
||||||
|
csrf_userid: $csrf_userid,
|
||||||
|
})
|
||||||
|
|
||||||
|
(result['status']).should.equal('success');
|
||||||
|
end
|
||||||
|
|
||||||
|
it 'should not enable user if already enabled' do
|
||||||
|
result = request('/user/enable', {
|
||||||
|
userId: user['id'],
|
||||||
|
csrf_token: $csrf_token,
|
||||||
|
csrf_userid: $csrf_userid,
|
||||||
|
})
|
||||||
|
|
||||||
|
(result['status']).should.equal('fail');
|
||||||
|
(result['message']).should.equal('ALREADY_ENABLED')
|
||||||
|
|
||||||
|
result = request('/user/enable', {
|
||||||
|
userId: 1,
|
||||||
|
csrf_token: $csrf_token,
|
||||||
|
csrf_userid: $csrf_userid,
|
||||||
|
})
|
||||||
|
|
||||||
|
(result['status']).should.equal('fail');
|
||||||
|
(result['message']).should.equal('ALREADY_ENABLED')
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
Loading…
Reference in New Issue