Add deleteTeam from AACloud
This commit is contained in:
1 parent
d6c7a3a1fc
commit
7eb5c2c4a0
7 files changed
+77
-26
No files matched your search
@@ -1,3 +1,5 @@
|
||||
import axios from 'axios'
|
||||
|
||||
import { getUser } from '../../../middleware/getMember'
|
||||
|
||||
import { sendTeamMemberInvite, sendTeamCreateConfirmation, verifyInviteToken } from '../../../email/sendgrid'
|
||||
@@ -135,13 +137,57 @@ export const resolvers = {
|
||||
return err
|
||||
})
|
||||
},
|
||||
async deleteTeam(parent, { slug }, ctx, info) {
|
||||
return ctx.db.mutation.deleteTeam({ where: { slug } }, info)
|
||||
.catch((res) => {
|
||||
logger.info('deleteTeam error: ', res)
|
||||
const errors = res.graphQLErrors.map((error) => {
|
||||
return error.message
|
||||
})
|
||||
async deleteTeam(parent, { slug, botSlug }, ctx, info) {
|
||||
logger.info('DeleteTeam resolver')
|
||||
const authId = ctx.request.headers.userid
|
||||
if (!authId) {
|
||||
throw new AuthenticationError()
|
||||
}
|
||||
logger.info(authId)
|
||||
logger.info('getUser')
|
||||
logger.info(getUser)
|
||||
|
||||
return getUser(authId)
|
||||
.then(async result => {
|
||||
logger.info('deleteTeam axios:')
|
||||
logger.info(await result)
|
||||
|
||||
const alias = await result.data.users_User.alias
|
||||
// const email = result.data.users_User.email
|
||||
const deleteTeamUrl = encodeURI(`${slug}/${alias}/${botSlug}`)
|
||||
logger.info('deleteTeamUrl:')
|
||||
logger.info(JSON.stringify(await deleteTeamUrl))
|
||||
|
||||
const platformUrl = 'https://develop.advancedalgos.net/AABrowserAPI/deleteTeam/'
|
||||
// const platformUrl = 'http://localhost:1337/AABrowserAPI/teamSetup/'
|
||||
|
||||
logger.info(`${platformUrl}${deleteTeamUrl}/${authId}`)
|
||||
const deletePlatformTeam = await axios.get(`${platformUrl}${deleteTeamUrl}/${authId}`)
|
||||
.then((result) => {
|
||||
console.log('deletePlatformTeam result:', result.data)
|
||||
if(result.data.result === 'Fail'){
|
||||
return result.data.message
|
||||
}
|
||||
return result
|
||||
})
|
||||
.catch(err =>{
|
||||
logger.debug('deletePlatformTeam err:')
|
||||
logger.debug(err)
|
||||
throw new Error(err)
|
||||
})
|
||||
console.log('deletePlatformTeam returned: ', await deletePlatformTeam)
|
||||
|
||||
return ctx.db.mutation.deleteTeam({ where: { slug } }, info)
|
||||
.catch((res) => {
|
||||
logger.info('deleteTeam error: ', res)
|
||||
const errors = res.graphQLErrors.map((error) => {
|
||||
return error.message
|
||||
})
|
||||
})
|
||||
})
|
||||
.catch((err) => {
|
||||
logger.debug('deleteTeam error: ')
|
||||
return err
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
@@ -24,7 +24,7 @@ type Mutation {
|
||||
createTeam(name: String!, slug: String!, botName: String!, botSlug: String!): Team @isAuthenticated
|
||||
updateTeamProfile(slug: String!, description: String, motto: String, avatar: String, banner: String): Team @isAuthenticated
|
||||
updateFB(fbId: String!, avatar: String): FinancialBeings @isAuthenticated
|
||||
deleteTeam(slug: String!): Team @isAuthenticated @isOwner(type: "Team")
|
||||
deleteTeam(slug: String!, botSlug: String!): Team @isAuthenticated @isOwner(type: "Team")
|
||||
sendMemberInviteSG(email: String!, teamId: String!): String
|
||||
confirmMember(token: String!): String
|
||||
removeTeamMember(teamId: String!, memberId: String!): String
|
||||
|
||||
@@ -1,4 +1,6 @@
|
||||
import { logger } from '../logger'
|
||||
import axios from 'axios'
|
||||
|
||||
import { logger, DatabaseError } from '../logger'
|
||||
|
||||
export const getMember = async (req, res, next, db) => {
|
||||
if (!req.headers.userId) return next()
|
||||
@@ -15,13 +17,13 @@ export const getMember = async (req, res, next, db) => {
|
||||
}
|
||||
|
||||
export const getUser = authId => {
|
||||
logger.info('getUser')
|
||||
logger.info('getUser MiddleWare')
|
||||
logger.info(authId)
|
||||
const API_URL = 'https://app-api.advancedalgos.net/graphql'
|
||||
return new Promise(resolve => {
|
||||
return new Promise((resolve, reject) => {
|
||||
try {
|
||||
const result = axios.post(API_URL, {
|
||||
query: `query users_User($userId: String!) {
|
||||
return axios.post(API_URL, {
|
||||
query: `query users_User($userId: ID!) {
|
||||
users_User(id: $userId){
|
||||
id
|
||||
alias
|
||||
@@ -36,19 +38,18 @@ export const getUser = authId => {
|
||||
'Content-Type': 'application/json'
|
||||
}
|
||||
})
|
||||
.then(result => {
|
||||
.then(res => {
|
||||
logger.info('getUser result')
|
||||
logger.info(result.data)
|
||||
resolve(result.data)
|
||||
logger.info(res.data)
|
||||
resolve(res.data)
|
||||
})
|
||||
.catch(err => {
|
||||
logger.info('getUser err')
|
||||
logger.info(err)
|
||||
throw new Error(err)
|
||||
reject(new DatabaseError(err))
|
||||
})
|
||||
|
||||
} catch (error) {
|
||||
resolve(error)
|
||||
reject(new DatabaseError(error))
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
@@ -2,8 +2,8 @@
|
||||
import gql from 'graphql-tag'
|
||||
|
||||
export const DELETE_TEAM = gql`
|
||||
mutation deleteTeam($slug: String!) {
|
||||
teams_DeleteTeam(slug: $slug) {
|
||||
mutation deleteTeam($slug: String!, $botSlug: String!) {
|
||||
teams_DeleteTeam(slug: $slug, botSlug: $botSlug) {
|
||||
id
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
import log from './log'
|
||||
|
||||
const ErrorResponse = {
|
||||
'unique constraint': 'Sorry, already taken! Please create a unique '
|
||||
}
|
||||
|
||||
@@ -123,7 +123,8 @@ export class ManageTeamDelete extends Component {
|
||||
this.handleSubmit(
|
||||
e,
|
||||
deleteTeam,
|
||||
this.props.slug
|
||||
this.props.slug,
|
||||
this.props.botSlug
|
||||
)
|
||||
}}
|
||||
color='primary'
|
||||
@@ -140,16 +141,17 @@ export class ManageTeamDelete extends Component {
|
||||
)
|
||||
}
|
||||
|
||||
async handleSubmit (e, deleteTeam, slug) {
|
||||
async handleSubmit (e, deleteTeam, slug, botSlug) {
|
||||
e.preventDefault()
|
||||
await deleteTeam({ variables: { slug } })
|
||||
await deleteTeam({ variables: { slug, botSlug } })
|
||||
this.setState({ open: false })
|
||||
}
|
||||
}
|
||||
|
||||
ManageTeamDelete.propTypes = {
|
||||
classes: PropTypes.object.isRequired,
|
||||
slug: PropTypes.string.isRequired
|
||||
slug: PropTypes.string.isRequired,
|
||||
botSlug: PropTypes.string.isRequired
|
||||
}
|
||||
|
||||
export default withStyles(styles)(ManageTeamDelete)
|
||||
@@ -42,7 +42,7 @@ export const ManageTeamsItem = ({ classes, team, ...props }) => {
|
||||
<CardActions>
|
||||
<ManageTeamDetails team={team} />
|
||||
<ManageTeamEdit slug={team.slug} team={team} {...props} />
|
||||
<ManageTeamDelete slug={team.slug} />
|
||||
<ManageTeamDelete slug={team.slug} botSlug={team.fb[0].slug} />
|
||||
</CardActions>
|
||||
</div>
|
||||
</Card>
|
||||
|
||||
Reference in new issue
Block a user