| 171 | } |
| 172 | |
| 173 | async handleKeyServerSync({sync}) { |
| 174 | this.setState({processing: true}); |
| 175 | try { |
| 176 | let emails = []; |
| 177 | if (sync === 'update') { |
| 178 | emails = this.state.keyDetails.users.filter(({remote}) => remote).map(({email}) => email); |
| 179 | sync = true; |
| 180 | } |
| 181 | await port.send('sync-keyserver', {emails, fingerprint: this.state.keyDetails.fingerprint, keyringId: this.context.keyringId, sync}); |
| 182 | } catch (e) { |
| 183 | /* e.g. keyserver not available */ |
| 184 | console.log(e); |
| 185 | } |
| 186 | this.setState(prevState => ({ |
| 187 | syncAction: sync ? prevState.keyDetails.keyServerSync.status ? 'update' : 'upload' : 'remove', |
| 188 | processing: false |
| 189 | })); |
| 190 | } |
| 191 | |
| 192 | getKeyServerSyncAlert() { |
| 193 | let data; |