summaryrefslogtreecommitdiff
path: root/app/assets/javascripts/gpg_badges.js
blob: 11adf4d282682bf985746f6c8087318c50c68fe2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
import axios from '~/lib/utils/axios_utils';
import flash from '~/flash';
import { __ } from '~/locale';

export default class GpgBadges {
  static fetch() {
    const badges = $('.js-loading-gpg-badge');
    const form = $('.commits-search-form');

    badges.html('<i class="fa fa-spinner fa-spin"></i>');

    const params = form.serialize();
    return axios.get(form.data('signatures-path'), { params })
    .then(({ data }) => {
      data.signatures.forEach((signature) => {
        badges.filter(`[data-commit-sha="${signature.commit_sha}"]`).replaceWith(signature.html);
      });
    })
    .catch(() => flash(__('An error occurred while loading comm')));
  }
}