Commit 2b44758f authored by Juorder Antonio's avatar Juorder Antonio

disable antispam and allowers for domain admins.

parent 84533f7d
......@@ -19,6 +19,7 @@ import * as Client from '../../utils/client.jsx';
import * as Utils from '../../utils/utils.jsx';
import * as GlobalActions from '../../action_creators/global_actions.jsx';
import DomainStore from '../../stores/domain_store.jsx';
import UserStore from '../../stores/user_store.jsx';
import Constants from '../../utils/constants.jsx';
const MessagesType = Constants.MessageType;
......@@ -38,6 +39,7 @@ export default class DistributionLists extends React.Component {
this.onExportMembers = this.onExportMembers.bind(this);
this.onExportAllowers = this.onExportAllowers.bind(this);
this.domain = null;
this.isGlobalAdmin = UserStore.isGlobalAdmin();
this.state = {};
}
......@@ -573,13 +575,23 @@ export default class DistributionLists extends React.Component {
/>
);
let tabNamesArray = ['Miembros', 'Permitidos'];
let tabs = {
miembros: members,
permitidos: allows
};
if (this.isGlobalAdmin) {
tabNamesArray = ['Miembros'];
tabs = {
miembros: members
};
}
panelTabs = (
<PanelTab
tabNames={['Miembros', 'Permitidos']}
tabs={{
miembros: members,
permitidos: allows
}}
tabNames={tabNamesArray}
tabs={tabs}
location={this.props.location}
/>
);
......
......@@ -2,6 +2,7 @@
// See LICENSE.txt for license information.
import DomainStore from '../../stores/domain_store.jsx';
import EventStore from '../../stores/event_store.jsx';
import * as GlobalActions from '../../action_creators/global_actions.jsx';
import * as Client from '../../utils/client.jsx';
......@@ -89,10 +90,10 @@ export default class AddAdminModal extends React.Component {
if (this.props.show) {
this.props.onHide();
GlobalActions.emitToast({
EventStore.emitToast({
type: 'success',
title: 'Dominio',
body: `Se ha agrega el administrador: ${user}, éxitosamente.`,
body: `Se ha agrega el administrador: ${user.name}, éxitosamente.`,
options: {
timeOut: 4000,
extendedTimeOut: 2000,
......
......@@ -13,6 +13,7 @@ import ToggleModalButton from '../toggle_modal_button.jsx';
import AddAdminModal from './add_admin_modal.jsx';
import * as Utils from '../../utils/utils.jsx';
import * as Client from '../../utils/client.jsx';
//import Constants from '../../utils/constants.jsx';
......@@ -35,14 +36,31 @@ export default class DomainAdminList extends React.Component {
};
}
getAdmins() {
getAdmins(getAllFromAPI) {
const domain = this.props.domain;
domain.getAdmins((err, data) => {
const admins = data.account || [];
if (this.isStoreEnabled) {
DomainStore.setAdmins(domain, admins);
}
this.setState({admins});
const getStuffFromAPI = getAllFromAPI || false;
if (!getStuffFromAPI) {
return domain.getAdmins((err, data) => {
const admins = data.account || [];
if (this.isStoreEnabled) {
DomainStore.setAdmins(domain, admins);
}
this.setState({admins});
});
}
return Client.getDomain(domain.name, (data) => {
this.props.domain = data;
return data.getAdmins((err, res) => {
const admins = res.account || [];
if (this.isStoreEnabled) {
DomainStore.setAdmins(domain, admins);
}
return this.setState({admins});
});
}, (err) => {
return err;
});
}
......@@ -84,7 +102,10 @@ export default class DomainAdminList extends React.Component {
if (this.isStoreEnabled) {
DomainStore.removeAdmin(admin.id);
} else {
DomainStore.emitAdminsChange();
}
return sweetAlert(response);
}
);
......@@ -96,7 +117,7 @@ export default class DomainAdminList extends React.Component {
onAdminsChange() {
const admins = this.isStoreEnabled ? DomainStore.getAdmins(this.props.domain) : null;
if (!admins) {
return this.getAdmins();
return this.getAdmins(true);
}
return this.setState({admins});
......
......@@ -18,6 +18,7 @@ import MultipleTaskModal from './multiple_task_modal.jsx';
import AntiSpamComponent from './antispam.jsx';
import ZonaDNS from './domain_admin_dns.jsx';
import EventStore from '../../stores/event_store.jsx';
import UserStore from '../../stores/user_store.jsx';
import DomainStore from '../../stores/domain_store.jsx';
......@@ -35,6 +36,7 @@ export default class DomainDetails extends React.Component {
this.getDomain = this.getDomain.bind(this);
this.showMessage = this.showMessage.bind(this);
this.handleClickOnTab = this.handleClickOnTab.bind(this);
this.isGlobalAdmin = UserStore.isGlobalAdmin();
this.state = {};
}
......@@ -225,6 +227,16 @@ export default class DomainDetails extends React.Component {
zona_dns: zonaDNS
};
if (!this.isGlobalAdmin) {
tabNames = ['Administradores', 'Listas De Distribución', 'Tareas Masivas', 'Zona DNS'];
tabs = {
administradores: tabAdmin,
listas_de_distribución: tabDistribution,
tareas_masivas: tabTareasMasivas,
zona_dns: zonaDNS
};
}
if (domain.isAliasDomain) {
tabNames = ['Zona DNS'];
tabs = {
......
......@@ -43,6 +43,7 @@ export default class DomainDistributionList extends React.Component {
const domain = this.props.domain;
domain.getAllDistributionLists(
(err, lists) => {
console.log('getAllDL', lists); //eslint-disable-line no-console
if (this.isStoreEnabled) {
DomainStore.setDistibutionLists(domain, lists);
}
......@@ -61,6 +62,7 @@ export default class DomainDistributionList extends React.Component {
onListsChange() {
const lists = this.isStoreEnabled ? DomainStore.getDistributionLists(this.props.domain) : null;
if (!lists) {
console.log('no store'); //eslint-disable-line no-console
return this.getLists();
}
......
......@@ -92,7 +92,7 @@ class DomainStoreClass extends EventEmitter {
getAdmins(domain) {
if (this.current !== domain) {
this.setCurrent(domain);
this.setCurrent(domain);
}
const admins = [];
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment