Welcome to mirror list, hosted at ThFree Co, Russian Federation.

PluginUpload.ts « Plugins « src « vue « CorePluginsAdmin « plugins - github.com/matomo-org/matomo.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
blob: 9c620fd556c436909856ad991ef2774590823378 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
/*!
 * Matomo - free/libre analytics platform
 *
 * @link https://matomo.org
 * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
 */
import { Matomo, translate } from 'CoreHome';

const { $ } = window;

function onUploadPlugin(event: MouseEvent) {
  event.preventDefault();
  Matomo.helper.modalConfirm('#installPluginByUpload', {});
}

function onSubmitPlugin(event: MouseEvent) {
  const $zipFile = $('[name=pluginZip]');
  const fileName = $zipFile.val();

  if (!fileName || fileName.slice(-4) !== '.zip') {
    event.preventDefault();
    // eslint-disable-next-line no-alert
    alert(translate('CorePluginsAdmin_NoZipFileSelected'));
  } else if ($zipFile.data('maxSize') > 0
    && $zipFile[0].files[0].size > $zipFile.data('maxSize') * 1048576
  ) {
    event.preventDefault();
    // eslint-disable-next-line no-alert
    alert(translate('CorePluginsAdmin_FileExceedsUploadLimit'));
  }
}

export default {
  mounted(): void {
    setTimeout(() => {
      $('.uploadPlugin').click(onUploadPlugin);
      $('#uploadPluginForm').submit(onSubmitPlugin);
    });
  },
};