refs #390 Remove all account associations
This commit is contained in:
parent
2879244e79
commit
8a00261239
|
@ -112,6 +112,19 @@ export default class Account {
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
removeAll () {
|
||||||
|
return new Promise((resolve, reject) => {
|
||||||
|
this.db.remove(
|
||||||
|
{},
|
||||||
|
{ multi: true },
|
||||||
|
(err, numRemoved) => {
|
||||||
|
if (err) return reject(err)
|
||||||
|
resolve(numRemoved)
|
||||||
|
}
|
||||||
|
)
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
async forwardAccount (ac) {
|
async forwardAccount (ac) {
|
||||||
if (ac.order <= 1) {
|
if (ac.order <= 1) {
|
||||||
return ac.order
|
return ac.order
|
||||||
|
|
|
@ -383,6 +383,18 @@ ipcMain.on('refresh-accounts', (event, _) => {
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
|
|
||||||
|
ipcMain.on('remove-all-accounts', (event, _) => {
|
||||||
|
const account = new Account(accountDB)
|
||||||
|
account.removeAll()
|
||||||
|
.then(() => {
|
||||||
|
event.sender.send('response-remove-all-accounts')
|
||||||
|
})
|
||||||
|
.catch((err) => {
|
||||||
|
log.error(err)
|
||||||
|
event.sender.send('error-remove-all-accounts', err)
|
||||||
|
})
|
||||||
|
})
|
||||||
|
|
||||||
// streaming
|
// streaming
|
||||||
let userStreaming = null
|
let userStreaming = null
|
||||||
|
|
||||||
|
|
|
@ -43,6 +43,19 @@
|
||||||
</el-table>
|
</el-table>
|
||||||
</template>
|
</template>
|
||||||
</div>
|
</div>
|
||||||
|
<div class="reset">
|
||||||
|
<el-popover
|
||||||
|
placement="top"
|
||||||
|
width="160"
|
||||||
|
v-model="deletePopoverVisible">
|
||||||
|
<p>Are you sure to remove all associations?</p>
|
||||||
|
<div style="text-align: right; margin: 0">
|
||||||
|
<el-button size="mini" type="text" @click="deletePopoverVisible = false">cancel</el-button>
|
||||||
|
<el-button type="danger" size="mini" @click="removeAllAssociations">confirm</el-button>
|
||||||
|
</div>
|
||||||
|
<el-button slot="reference" type="danger">Remove all associations</el-button>
|
||||||
|
</el-popover>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
|
@ -53,7 +66,8 @@ export default {
|
||||||
name: 'account',
|
name: 'account',
|
||||||
data () {
|
data () {
|
||||||
return {
|
return {
|
||||||
openRemoveDialog: false
|
openRemoveDialog: false,
|
||||||
|
deletePopoverVisible: false
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
computed: {
|
computed: {
|
||||||
|
@ -103,6 +117,13 @@ export default {
|
||||||
.then(() => {
|
.then(() => {
|
||||||
this.loadAccounts()
|
this.loadAccounts()
|
||||||
})
|
})
|
||||||
|
},
|
||||||
|
removeAllAssociations () {
|
||||||
|
this.deletePopoverVisible = false
|
||||||
|
this.$store.dispatch('Preferences/Account/removeAllAccounts')
|
||||||
|
.then(() => {
|
||||||
|
this.$router.push('/login')
|
||||||
|
})
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -124,6 +145,11 @@ export default {
|
||||||
.el-table::before {
|
.el-table::before {
|
||||||
background-color: var(--theme-border-color);
|
background-color: var(--theme-border-color);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.reset {
|
||||||
|
margin: 24px 12px;
|
||||||
|
text-align: right;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.allow-up {
|
.allow-up {
|
||||||
|
|
|
@ -67,6 +67,19 @@ const Account = {
|
||||||
resolve()
|
resolve()
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
|
},
|
||||||
|
removeAllAccounts () {
|
||||||
|
return new Promise((resolve, reject) => {
|
||||||
|
ipcRenderer.send('remove-all-accounts')
|
||||||
|
ipcRenderer.once('error-remove-all-accounts', (event, err) => {
|
||||||
|
ipcRenderer.removeAllListeners('response-remove-all-accounts')
|
||||||
|
reject(err)
|
||||||
|
})
|
||||||
|
ipcRenderer.once('response-remove-all-accounts', (event) => {
|
||||||
|
ipcRenderer.removeAllListeners('error-remove-all-accounts')
|
||||||
|
resolve()
|
||||||
|
})
|
||||||
|
})
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue