summarylogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.SRCINFO236
-rw-r--r--0002-libdroplet.patch23
-rw-r--r--0002-logspam.patch (renamed from 0004-logspam.patch)0
-rw-r--r--0003-version.patch (renamed from 0005-version.patch)0
-rw-r--r--0003-zend.patch11
-rw-r--r--0004-sqlspam.patch (renamed from 0006-sqlspam.patch)0
-rw-r--r--0005-httpd.patch13
-rw-r--r--0006-hostname.patch11
-rw-r--r--0007-fix-gcc-13.patch138
-rw-r--r--0007-hostname.patch22
-rw-r--r--0008-httpd.patch11
-rw-r--r--009-fix-timer_thread.patch14
-rw-r--r--PKGBUILD391
-rw-r--r--PoolModel.patch15
-rw-r--r--bootstrap-table-locale-all.min.js10
-rw-r--r--fix-build-bareos.patch44
-rw-r--r--fix-headlink.patch193
-rw-r--r--mysql.patch397
-rw-r--r--plattforms-archlinux.patch11
-rw-r--r--restore-form.patch12
20 files changed, 488 insertions, 1064 deletions
diff --git a/.SRCINFO b/.SRCINFO
index 09d9099819ba..1534a15f7bb1 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,6 +1,6 @@
pkgbase = bareos
pkgdesc = Bareos - Backup Archiving Recovery Open Sourced
- pkgver = 21.1.3
+ pkgver = 23.0.1
pkgrel = 2
url = http://www.bareos.org
arch = i686
@@ -13,8 +13,8 @@ pkgbase = bareos
makedepends = gcc
makedepends = libmariadbclient
makedepends = postgresql-libs
- makedepends = python2
makedepends = python
+ makedepends = python-setuptools
makedepends = rpcsvc-proto
makedepends = git
makedepends = lsb-release
@@ -22,36 +22,23 @@ pkgbase = bareos
makedepends = glusterfs
makedepends = jansson
makedepends = pam_wrapper
- makedepends = ceph-libs
- source = git+https://github.com/bareos/bareos.git#tag=Release/21.1.3
+ source = git+https://github.com/bareos/bareos.git#tag=Release/23.0.1
source = 0001-distver.patch
- source = 0002-libdroplet.patch
- source = 0003-zend.patch
- source = 0004-logspam.patch
- source = 0005-version.patch
- source = 0006-sqlspam.patch
- source = 0007-hostname.patch
- source = 0008-httpd.patch
- source = 009-fix-timer_thread.patch
- source = bootstrap-table-locale-all.min.js
+ source = 0003-version.patch
+ source = 0004-sqlspam.patch
+ source = 0005-httpd.patch
md5sums = SKIP
md5sums = 419b0c64af750aa3e8ea668edf464d3e
- md5sums = f2a2a4e1a83d80ee3ba42b38b2062208
- md5sums = f9b885e18313d9c070372d313e1b422d
- md5sums = 39724df5903b712fb8d34209c7ac8f1e
md5sums = 5bf1233d94dfecc9060746bfb39b9d2b
md5sums = ca4c929a2462cafaead8d0b49e3cebed
- md5sums = b0068e1a248ac0d0e83fb8ae1e034f62
- md5sums = 33d9c3a1d25b30ac2182aa8d874e28a5
- md5sums = c8d3568ddf543a576c6fdbe586d8d3d3
- md5sums = e78b88f897cfc3e60129eec360521e3d
+ md5sums = a6a260808e46c20b1c22aa2efebc3fe1
pkgname = bareos-bconsole
pkgdesc = Bareos - Backup Archiving Recovery Open Sourced - Admin Tool (CLI)
install = bareos-bconsole.install
groups = bareos
groups = bareos-client
- depends = bareos-common=21.1.3
+ depends = bareos-common=23.0.1
depends = readline
depends = jansson
backup = etc/bareos/bconsole.conf
@@ -67,9 +54,26 @@ pkgname = bareos-common
depends = jansson
depends = zlib
+pkgname = bareos-contrib-director-python-plugins
+ pkgdesc = Bareos - Backup Archiving Recovery Open Sourced - Backup Archiving Recovery Open Sourced - contributed Director plugins
+ depends = bareos-common=23.0.1
+ depends = bareos-director-python-plugin=23.0.1
+
+pkgname = bareos-contrib-filedaemon-python-plugins
+ pkgdesc = Bareos - Backup Archiving Recovery Open Sourced - Backup Archiving Recovery Open Sourced - contributed File Daemon plugins
+ depends = bareos-common=23.0.1
+ depends = bareos-filedaemon-python-plugin=23.0.1
+
+pkgname = bareos-contrib-tools
+ pkgdesc = Bareos - Backup Archiving Recovery Open Sourced - Backup Archiving Recovery Open Sourced - contributed tools
+ arch = any
+ depends = python-bareos=23.0.1
+ depends = bareos-filedaemon=23.0.1
+
pkgname = bareos-database-common
- pkgdesc = Bareos - Backup Archiving Recovery Open Sourced - Generic abstration libs and tools for sql catalog
- depends = bareos-common=21.1.3
+ pkgdesc = Bareos - Backup Archiving Recovery Open Sourced - Backup Archiving Recovery Open Sourced - common catalog files
+ depends = bareos-common=23.0.1
+ depends = bareos-database-postgresql=23.0.1
depends = libcap
depends = lzo
depends = zlib
@@ -80,134 +84,107 @@ pkgname = bareos-database-common
pkgname = bareos-database-postgresql
pkgdesc = Bareos - Backup Archiving Recovery Open Sourced - Libs and tools for postgresql catalog
install = bareos-database-postgresql.install
- depends = bareos-database-common=21.1.3
+ depends = bareos-database-common=23.0.1
depends = postgresql-libs
- provides = bareos-database=21.1.3
+ provides = bareos-database=23.0.1
pkgname = bareos-database-tools
pkgdesc = Bareos - Backup Archiving Recovery Open Sourced - CLI tools with database dpendencies (dbcheck, bscan)
- depends = bareos-database-common=21.1.3
- depends = openssl
- depends = jansson
-
-pkgname = bareos-director
- pkgdesc = Bareos - Backup Archiving Recovery Open Sourced - Director daemon
- install = bareos-director.install
- depends = bareos-common=21.1.3
+ depends = bareos-database-common=23.0.1
depends = openssl
- depends = bash
depends = jansson
pkgname = bareos-director-python-plugins-common
pkgdesc = Bareos - Backup Archiving Recovery Open Sourced - This package contains the common files for the python 2 and python 3 director plugins
- depends = bareos-director=21.1.3
-
-pkgname = bareos-director-python2-plugin
- pkgdesc = Bareos - Backup Archiving Recovery Open Sourced - Python plugin for director daemon
- depends = bareos-director=21.1.3
- depends = bareos-director-python-plugins-common=21.1.3
- depends = python2
- depends = libcap
- depends = jansson
- depends = lzo
- conflicts = bareos-director-python-plugin
+ arch = any
+ depends = bareos-director=23.0.1
pkgname = bareos-director-python3-plugin
pkgdesc = Bareos - Backup Archiving Recovery Open Sourced - Python plugin for director daemon
- depends = bareos-director=21.1.3
- depends = bareos-director-python-plugins-common=21.1.3
+ depends = bareos-director=23.0.1
+ depends = bareos-director-python-plugins-common=23.0.1
depends = python
depends = libcap
depends = jansson
depends = lzo
conflicts = bareos-director-python-plugin
-pkgname = bareos-filedaemon
- pkgdesc = Bareos - Backup Archiving Recovery Open Sourced - File daemon
- install = bareos-filedaemon.install
- groups = bareos
- groups = bareos-client
- depends = bareos-common=21.1.3
+pkgname = bareos-director
+ pkgdesc = Bareos - Backup Archiving Recovery Open Sourced - Director daemon
+ install = bareos-director.install
+ depends = bareos-common=23.0.1
+ depends = openssl
+ depends = bash
depends = jansson
- depends = zlib
- depends = gcc-libs
pkgname = bareos-filedaemon-glusterfs-plugin
pkgdesc = Bareos - Backup Archiving Recovery Open Sourced - GlusterFS plugin for Bareos File daemon
- depends = bareos-filedaemon=21.1.3
+ depends = bareos-filedaemon=23.0.1
depends = glusterfs
pkgname = bareos-filedaemon-ldap-python-plugin
pkgdesc = Bareos - Backup Archiving Recovery Open Sourced - LDAP Python plugin for Bareos File daemon
- depends = bareos-filedaemon=21.1.3
- depends = bareos-filedaemon-python3-plugin=21.1.3
+ arch = any
+ depends = bareos-filedaemon=23.0.1
+ depends = bareos-filedaemon-python3-plugin=23.0.1
depends = python-ldap
pkgname = bareos-filedaemon-libcloud-python-plugin
pkgdesc = Bareos - Backup Archiving Recovery Open Sourced - Libcloud Python plugin for Bareos File daemon
- depends = bareos-filedaemon=21.1.3
+ arch = any
+ depends = bareos-filedaemon=23.0.1
depends = python-apache-libcloud
pkgname = bareos-filedaemon-mariabackup-python-plugin
pkgdesc = Bareos - Backup Archiving Recovery Open Sourced - MariaBackup plugin for Bareos File daemon
- depends = bareos-filedaemon=21.1.3
+ arch = any
+ depends = bareos-filedaemon=23.0.1
depends = mariadb
pkgname = bareos-filedaemon-percona-xtrabackup-python-plugin
pkgdesc = Bareos - Backup Archiving Recovery Open Sourced - XtraBackup plugin for Bareos File daemon
- depends = bareos-filedaemon=21.1.3
+ arch = any
+ depends = bareos-filedaemon=23.0.1
depends = xtrabackup
pkgname = bareos-filedaemon-postgresql-python-plugin
pkgdesc = Bareos - Backup Archiving Recovery Open Sourced - PostgreSQL plugin for Bareos File daemon
- depends = bareos-filedaemon=21.1.3
+ arch = any
+ depends = bareos-filedaemon=23.0.1
depends = postgresql
pkgname = bareos-filedaemon-python-plugins-common
pkgdesc = Bareos - Backup Archiving Recovery Open Sourced - This package contains the common files for the python 2 and python 3 filedaemon plugins
- depends = bareos-filedaemon=21.1.3
-
-pkgname = bareos-filedaemon-python2-plugin
- pkgdesc = Bareos - Backup Archiving Recovery Open Sourced - Python plugin for file daemon
- depends = bareos-filedaemon=21.1.3
- depends = bareos-filedaemon-python-plugins-common=21.1.3
- depends = python2
- depends = libcap
- depends = lzo
- depends = jansson
- conflicts = bareos-filedaemon-python-plugin
+ arch = any
+ depends = bareos-filedaemon=23.0.1
pkgname = bareos-filedaemon-python3-plugin
pkgdesc = Bareos - Backup Archiving Recovery Open Sourced - Python plugin for file daemon
- depends = bareos-filedaemon=21.1.3
- depends = bareos-filedaemon-python-plugins-common=21.1.3
+ depends = bareos-filedaemon=23.0.1
+ depends = bareos-filedaemon-python-plugins-common=23.0.1
depends = python
depends = libcap
depends = lzo
depends = jansson
conflicts = bareos-filedaemon-python-plugin
-pkgname = bareos-storage
- pkgdesc = Bareos - Backup Archiving Recovery Open Sourced - Storage daemon
- install = bareos-storage.install
- depends = bareos-common=21.1.3
- depends = zlib
- depends = lzo
+pkgname = bareos-filedaemon
+ pkgdesc = Bareos - Backup Archiving Recovery Open Sourced - File daemon
+ install = bareos-filedaemon.install
+ groups = bareos
+ groups = bareos-client
+ depends = bareos-common=23.0.1
depends = jansson
- depends = openssl
- depends = libcap
-
-pkgname = bareos-storage-ceph
- pkgdesc = Bareos - Backup Archiving Recovery Open Sourced - Backup Archiving Recovery Open Sourced - storage daemon CEPH backend
- depends = bareos-storage=21.1.3
+ depends = zlib
+ depends = gcc-libs
pkgname = bareos-storage-droplet
pkgdesc = Bareos - Backup Archiving Recovery Open Sourced - Droplet support for storage daemon
- depends = bareos-storage=21.1.3
+ depends = bareos-storage=23.0.1
pkgname = bareos-storage-fifo
pkgdesc = Bareos - Backup Archiving Recovery Open Sourced - FIFO support for storage daemon
- depends = bareos-storage=21.1.3
+ depends = bareos-storage=23.0.1
depends = zlib
depends = libcap
depends = openssl
@@ -216,27 +193,18 @@ pkgname = bareos-storage-fifo
pkgname = bareos-storage-glusterfs
pkgdesc = Bareos - Backup Archiving Recovery Open Sourced - GlusterFS support for storage daemon
- depends = bareos-storage=21.1.3
+ depends = bareos-storage=23.0.1
depends = glusterfs
pkgname = bareos-storage-python-plugins-common
pkgdesc = Bareos - Backup Archiving Recovery Open Sourced - This package contains the common files for the python 2 and python 3 storage plugins
- depends = bareos-storage=21.1.3
-
-pkgname = bareos-storage-python2-plugin
- pkgdesc = Bareos - Backup Archiving Recovery Open Sourced - Python plugin for storage daemon
- depends = bareos-storage=21.1.3
- depends = bareos-storage-python-plugins-common=21.1.3
- depends = python2
- depends = lzo
- depends = libcap
- depends = jansson
- conflicts = bareos-storage-python-plugin
+ arch = any
+ depends = bareos-storage=23.0.1
pkgname = bareos-storage-python3-plugin
pkgdesc = Bareos - Backup Archiving Recovery Open Sourced - Python plugin for storage daemon
- depends = bareos-storage=21.1.3
- depends = bareos-storage-python-plugins-common=21.1.3
+ depends = bareos-storage=23.0.1
+ depends = bareos-storage-python-plugins-common=23.0.1
depends = python
depends = lzo
depends = libcap
@@ -245,7 +213,7 @@ pkgname = bareos-storage-python3-plugin
pkgname = bareos-storage-tape
pkgdesc = Bareos - Backup Archiving Recovery Open Sourced - Tape support for storage daemon
- depends = bareos-storage=21.1.3
+ depends = bareos-storage=23.0.1
depends = zlib
depends = libcap
depends = bash
@@ -255,44 +223,70 @@ pkgname = bareos-storage-tape
depends = mtx
backup = etc/bareos/mtx-changer.conf
+pkgname = bareos-storage
+ pkgdesc = Bareos - Backup Archiving Recovery Open Sourced - Storage daemon
+ install = bareos-storage.install
+ depends = bareos-common=23.0.1
+ depends = zlib
+ depends = lzo
+ depends = jansson
+ depends = openssl
+ depends = libcap
+
pkgname = bareos-tools
pkgdesc = Bareos - Backup Archiving Recovery Open Sourced - CLI tools (bcopy, bextract, bls, bregeq, bwild, bregex)
- depends = bareos-common=21.1.3
+ depends = bareos-common=23.0.1
depends = glibc
+pkgname = bareos-traymonitor
+ pkgdesc = Bareos - Backup Archiving Recovery Open Sourced - This package contains the tray monitor (QT based)
+ install = bareos-traymonitor.install
+ groups = bareos
+ groups = bareos-client
+ depends = bareos-common=23.0.1
+ backup = etc/bareos/tray-monitor.d/monitor/bareos-mon.conf
+
pkgname = bareos-vmware-plugin
pkgdesc = Bareos - Backup Archiving Recovery Open Sourced - Bareos VMware plugin
- depends = python2
+ arch = any
+ depends = bareos-vadp-dumper=23.0.1
+ depends = bareos-common=23.0.1
+ optdepends = bareos-filedaemon-python3-plugin=23.0.1
pkgname = bareos-webui
pkgdesc = Bareos - Backup Archiving Recovery Open Sourced - Webui (Bareos web administration)
- depends = php7
- depends = php7-fpm
+ arch = any
depends = jansson
backup = etc/bareos-webui/directors.ini
backup = etc/bareos-webui/configuration.ini
backup = etc/bareos/bareos-dir.d/console/admin.conf.example
backup = etc/bareos/bareos-dir.d/profile/webui-admin.conf
+
+pkgname = bareos-webui-apache
+ pkgdesc = Bareos - Backup Archiving Recovery Open Sourced - Webui Apache
+ arch = any
+ depends = apache
+ depends = php-apache
+ depends = php
+ depends = php-fpm
+ depends = php-pgsql
backup = etc/httpd/conf/extra/bareos-webui.conf
+pkgname = bareos-webui-nginx
+ pkgdesc = Bareos - Backup Archiving Recovery Open Sourced - Webui nginx
+ arch = any
+ depends = nginx
+ depends = php
+ depends = php-fpm
+ depends = php-pgsql
+ backup = etc/nginx/bareos-webui.conf
+
pkgname = bareos-devel
pkgdesc = Bareos - Backup Archiving Recovery Open Sourced - Devel headers
arch = any
-pkgname = bareos-traymonitor
- pkgdesc = Bareos - Backup Archiving Recovery Open Sourced - This package contains the tray monitor (QT based)
- install = bareos-traymonitor.install
- groups = bareos
- groups = bareos-client
- depends = bareos-common=21.1.3
- backup = etc/bareos/tray-monitor.d/monitor/bareos-mon.conf
-
-pkgname = python2-bareos
- pkgdesc = Bareos - Backup Archiving Recovery Open Sourced - python-bareos is a Python2 module to access a backup system.
- depends = python2
- depends = jansson
-
pkgname = python-bareos
pkgdesc = Bareos - Backup Archiving Recovery Open Sourced - python-bareos is a Python module to access a backup system.
depends = python
+ depends = python-sslpsk
depends = jansson
diff --git a/0002-libdroplet.patch b/0002-libdroplet.patch
deleted file mode 100644
index 9b9dc5cbcc9a..000000000000
--- a/0002-libdroplet.patch
+++ /dev/null
@@ -1,23 +0,0 @@
-# C99 introduced _Bool but library predates that, fix
-
---- core/src/droplet/libdroplet/include/droplet/cdmi/crcmodel.h 2020-12-16 08:46:16.000000000 +0100
-+++ core/src/droplet/libdroplet/include/droplet/cdmi/crcmodel.h 2021-01-09 21:50:10.506666487 +0100
-@@ -79,7 +79,6 @@
- #ifndef DONE_STYLE
-
- typedef unsigned long ulong;
--typedef unsigned bool;
- typedef unsigned char* p_ubyte_;
-
- # ifndef TRUE
-@@ -107,8 +107,8 @@
- int cm_width; /* Parameter: Width in bits [8,32]. */
- ulong cm_poly; /* Parameter: The algorithm's polynomial. */
- ulong cm_init; /* Parameter: Initial register value. */
-- bool cm_refin; /* Parameter: Reflect input bytes? */
-- bool cm_refot; /* Parameter: Reflect output CRC? */
-+ _Bool cm_refin; /* Parameter: Reflect input bytes? */
-+ _Bool cm_refot; /* Parameter: Reflect output CRC? */
- ulong cm_xorot; /* Parameter: XOR this to output CRC. */
-
- ulong cm_reg; /* Context: Context during execution. */
diff --git a/0004-logspam.patch b/0002-logspam.patch
index 18f6d5b1faa5..18f6d5b1faa5 100644
--- a/0004-logspam.patch
+++ b/0002-logspam.patch
diff --git a/0005-version.patch b/0003-version.patch
index 96440ac549db..96440ac549db 100644
--- a/0005-version.patch
+++ b/0003-version.patch
diff --git a/0003-zend.patch b/0003-zend.patch
deleted file mode 100644
index 0c136fa0c0bf..000000000000
--- a/0003-zend.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- webui/vendor/zendframework/zend-stdlib/src/ArrayObject.php
-+++ webui/vendor/zendframework/zend-stdlib/src/ArrayObject.php
-@@ -423,7 +423,7 @@ public function unserialize($data)
- $this->setIteratorClass($v);
- break;
- case 'protectedProperties':
-- continue;
-+ break;
- default:
- $this->__set($k, $v);
- }
diff --git a/0006-sqlspam.patch b/0004-sqlspam.patch
index 1882f0c6b988..1882f0c6b988 100644
--- a/0006-sqlspam.patch
+++ b/0004-sqlspam.patch
diff --git a/0005-httpd.patch b/0005-httpd.patch
new file mode 100644
index 000000000000..247ba934e6ba
--- /dev/null
+++ b/0005-httpd.patch
@@ -0,0 +1,13 @@
+--- webui/CMakeLists.txt.orig 2023-03-03 21:55:18.000000000 +0200
++++ webui/CMakeLists.txt 2023-03-03 22:01:47.835425931 +0200
+@@ -66,7 +66,9 @@
+ message(" BAREOS_FULL_VERSION: ${BAREOS_FULL_VERSION} ")
+ message(" LocalBuildDefinitionsFile: ${BareosLocalBuildDefinitionsFile}")
+
+-if(EXISTS ${sysconfdir}/httpd/conf.d)
++if(EXISTS ${sysconfdir}/httpd/conf/extra )
++ set(HTTPD_CONF ${sysconfdir}/httpd/conf/extra )
++elseif(EXISTS ${sysconfdir}/httpd/conf.d)
+ set(HTTPD_CONF ${sysconfdir}/httpd/conf.d)
+ elseif(EXISTS ${sysconfdir}/apache2/conf.d)
+ set(HTTPD_CONF ${sysconfdir}/apache2/conf.d)
diff --git a/0006-hostname.patch b/0006-hostname.patch
new file mode 100644
index 000000000000..ac9be85634d8
--- /dev/null
+++ b/0006-hostname.patch
@@ -0,0 +1,11 @@
+--- core/scripts/bareos-config-lib.sh.in.orig 2023-03-03 18:31:34.000000000 +0200
++++ core/scripts/bareos-config-lib.sh.in 2023-03-03 18:58:35.163665093 +0200
+@@ -998,7 +998,7 @@
+ {
+ # put actual short hostname in configuration files
+ # try to get short hostname
+- hname=$(hostname -s)
++ hname=$(hostnamectl hostname)
+ if [ -z "${hname}" ]; then
+ # try to get long hostname
+ hname=$(hostname|sed 's/\..*//g')
diff --git a/0007-fix-gcc-13.patch b/0007-fix-gcc-13.patch
new file mode 100644
index 000000000000..a0b32879ccc2
--- /dev/null
+++ b/0007-fix-gcc-13.patch
@@ -0,0 +1,138 @@
+From 2bb7d74215bf6ae4f350de11bff04b68cf3c82b3 Mon Sep 17 00:00:00 2001
+From: Bruno Friedmann <bruno.friedmann@bareos.com>
+Date: Mon, 27 Mar 2023 13:22:11 +0200
+Subject: [PATCH] core: fixes for gcc-13 support
+
+- add explicit system_error and stdexcept
+- console_conf.cc fix std::move warning
+
+Signed-off-by: Bruno Friedmann <bruno.friedmann@bareos.com>
+---
+ core/src/cats/cats.h | 2 ++
+ core/src/console/console_conf.cc | 4 ++--
+ core/src/lib/thread_list.cc | 3 ++-
+ core/src/lib/thread_specific_data.cc | 3 ++-
+ core/src/lib/thread_specific_data.h | 3 ++-
+ core/src/lib/thread_specific_data_key.h | 4 +++-
+ 6 files changed, 13 insertions(+), 6 deletions(-)
+
+diff --git core/src/cats/cats.h.orig core/src/cats/cats.h
+index 7a6641b3f72..edb5ecbe38b 100644
+--- core/src/cats/cats.h.orig
++++ core/src/cats/cats.h
+@@ -41,6 +41,8 @@
+ #include "lib/output_formatter.h"
+
+ #include <string>
++#include <stdexcept>
++#include <system_error>
+ #include <vector>
+ template <typename T> class dlist;
+
+diff --git core/src/console/console_conf.cc.orig core/src/console/console_conf.cc
+index 9d3aecead2b..f0c0402744e 100644
+--- core/src/console/console_conf.cc.orig
++++ core/src/console/console_conf.cc
+@@ -3,7 +3,7 @@
+
+ Copyright (C) 2000-2009 Free Software Foundation Europe e.V.
+ Copyright (C) 2011-2012 Planets Communications B.V.
+- Copyright (C) 2013-2022 Bareos GmbH & Co. KG
++ Copyright (C) 2013-2023 Bareos GmbH & Co. KG
+
+ This program is Free Software; you can redistribute it and/or
+ modify it under the terms of version three of the GNU Affero General Public
+@@ -203,7 +203,7 @@ static bool SaveResource(int type, ResourceItem* items, int pass)
+ res_dir->resource_name_);
+ } else {
+ p->tls_cert_.allowed_certificate_common_names_
+- = std::move(p->tls_cert_.allowed_certificate_common_names_);
++ = std::move(res_dir->tls_cert_.allowed_certificate_common_names_);
+ }
+ break;
+ }
+diff --git core/src/lib/thread_list.cc.orig core/src/lib/thread_list.cc
+index 50aefb8ee2d..05607124a55 100644
+--- core/src/lib/thread_list.cc.orig
++++ core/src/lib/thread_list.cc
+@@ -1,7 +1,7 @@
+ /*
+ BAREOS® - Backup Archiving REcovery Open Sourced
+
+- Copyright (C) 2019-2022 Bareos GmbH & Co. KG
++ Copyright (C) 2019-2023 Bareos GmbH & Co. KG
+
+ This program is Free Software; you can redistribute it and/or
+ modify it under the terms of version three of the GNU Affero General Public
+@@ -32,6 +32,7 @@
+ #include <memory>
+ #include <mutex>
+ #include <set>
++#include <system_error>
+ #include <thread>
+
+ static constexpr int debuglevel{800};
+diff --git core/src/lib/thread_specific_data.cc.orig core/src/lib/thread_specific_data.cc
+index 0953f5c125a..22a98c4a759 100644
+--- core/src/lib/thread_specific_data.cc.orig
++++ core/src/lib/thread_specific_data.cc
+@@ -3,7 +3,7 @@
+
+ Copyright (C) 2000-2012 Free Software Foundation Europe e.V.
+ Copyright (C) 2011-2012 Planets Communications B.V.
+- Copyright (C) 2019-2019 Bareos GmbH & Co. KG
++ Copyright (C) 2019-2023 Bareos GmbH & Co. KG
+
+ This program is Free Software; you can redistribute it and/or
+ modify it under the terms of version three of the GNU Affero General Public
+@@ -25,6 +25,7 @@
+ #include "lib/thread_specific_data.h"
+ #include "lib/thread_specific_data_key.h"
+ #include "include/jcr.h"
++#include <system_error>
+
+ JobControlRecord* GetJcrFromThreadSpecificData()
+ {
+diff --git core/src/lib/thread_specific_data.h.orig core/src/lib/thread_specific_data.h
+index 4bd4dedafae..4c427d171c0 100644
+--- core/src/lib/thread_specific_data.h.orig
++++ core/src/lib/thread_specific_data.h
+@@ -3,7 +3,7 @@
+
+ Copyright (C) 2000-2012 Free Software Foundation Europe e.V.
+ Copyright (C) 2011-2012 Planets Communications B.V.
+- Copyright (C) 2019-2021 Bareos GmbH & Co. KG
++ Copyright (C) 2019-2023 Bareos GmbH & Co. KG
+
+ This program is Free Software; you can redistribute it and/or
+ modify it under the terms of version three of the GNU Affero General Public
+@@ -24,6 +24,7 @@
+ #ifndef BAREOS_LIB_THREAD_SPECIFIC_DATA_H_
+ #define BAREOS_LIB_THREAD_SPECIFIC_DATA_H_
+
++
+ class JobControlRecord;
+
+ JobControlRecord* GetJcrFromThreadSpecificData();
+diff --git core/src/lib/thread_specific_data_key.h.orig core/src/lib/thread_specific_data_key.h
+index 9c02c07f47e..c8c63c757fe 100644
+--- core/src/lib/thread_specific_data_key.h.orig
++++ core/src/lib/thread_specific_data_key.h
+@@ -1,7 +1,7 @@
+ /*
+ BAREOS® - Backup Archiving REcovery Open Sourced
+
+- Copyright (C) 2019-2021 Bareos GmbH & Co. KG
++ Copyright (C) 2019-2023 Bareos GmbH & Co. KG
+
+ This program is Free Software; you can redistribute it and/or
+ modify it under the terms of version three of the GNU Affero General Public
+@@ -22,6 +22,8 @@
+ #ifndef BAREOS_LIB_THREAD_SPECIFIC_DATA_KEY_H_
+ #define BAREOS_LIB_THREAD_SPECIFIC_DATA_KEY_H_
+
++
++#include <system_error>
+ #include "lib/berrno.h"
+
+ #include <mutex>
diff --git a/0007-hostname.patch b/0007-hostname.patch
deleted file mode 100644
index 261be232d45b..000000000000
--- a/0007-hostname.patch
+++ /dev/null
@@ -1,22 +0,0 @@
---- core/scripts/bareos-config-lib.sh.in 2022-05-07 14:35:31.000000000 +0300
-+++ core/scripts/bareos-config-lib.sh.in 2022-05-07 23:25:21.958745554 +0300
-@@ -1070,14 +1070,12 @@
- {
- # put actual short hostname in configuration files
- # try to get short hostname
-- hname=`hostname -s`
-+ hname=`hostnamectl --static | sed 's/\..*//g'`
- if [ -z "$hname" ]; then
-- # try to get long hostname
-- hname=`hostname|sed 's/\..*//g'`
-- if [ -z "$hname" ]; then
-- # set to "localhost"
-- hname='localhost'
-- fi
-+ if [ -z "$hname" ]; then
-+ # set to "localhost"
-+ hname='localhost'
-+ fi
- fi
- echo "$hname"
- }
diff --git a/0008-httpd.patch b/0008-httpd.patch
deleted file mode 100644
index c8d8e8a56876..000000000000
--- a/0008-httpd.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- webui/CMakeLists.txt 2022-05-10 23:29:44.000000000 +0300
-+++ webui/CMakeLists.txt 2022-05-11 00:05:05.698335917 +0300
-@@ -76,7 +76,7 @@
- elseif(EXISTS ${sysconfdir}/apache2/conf-available)
- set(HTTPD_CONF ${sysconfdir}/apache2/conf-available)
- else()
-- set(HTTPD_CONF ${sysconfdir}/httpd/conf.d)
-+ set(HTTPD_CONF ${sysconfdir}/httpd/conf/extra )
- endif()
-
- configure_file(
diff --git a/009-fix-timer_thread.patch b/009-fix-timer_thread.patch
deleted file mode 100644
index 533066cb6350..000000000000
--- a/009-fix-timer_thread.patch
+++ /dev/null
@@ -1,14 +0,0 @@
---- core/src/lib/timer_thread.cc 2022-03-17 17:22:34.000000000 +0100
-+++ core/src/lib/timer_thread.cc 2022-05-15 19:28:30.410009804 +0200
-@@ -213,9 +213,11 @@
- remove_from_list = true;
- } else {
- p->scheduled_run_timepoint = last_timer_run_timepoint + p->interval;
-+ next_timer_run = min(p->scheduled_run_timepoint, next_timer_run);
- }
-+ } else {
-+ next_timer_run = min(p->scheduled_run_timepoint, next_timer_run);
- }
-- next_timer_run = min(p->scheduled_run_timepoint, next_timer_run);
- return remove_from_list;
- }
diff --git a/PKGBUILD b/PKGBUILD
index 65a546705f2d..e1d7d1e936f1 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -6,14 +6,15 @@ pkgbase='bareos'
pkgname=("bareos-bconsole"
"bareos-common"
+ "bareos-contrib-director-python-plugins"
+ "bareos-contrib-filedaemon-python-plugins"
+ "bareos-contrib-tools"
"bareos-database-common"
"bareos-database-postgresql"
"bareos-database-tools"
- "bareos-director"
"bareos-director-python-plugins-common"
- "bareos-director-python2-plugin"
"bareos-director-python3-plugin"
- "bareos-filedaemon"
+ "bareos-director"
"bareos-filedaemon-glusterfs-plugin"
"bareos-filedaemon-ldap-python-plugin"
"bareos-filedaemon-libcloud-python-plugin"
@@ -21,59 +22,51 @@ pkgname=("bareos-bconsole"
"bareos-filedaemon-percona-xtrabackup-python-plugin"
"bareos-filedaemon-postgresql-python-plugin"
"bareos-filedaemon-python-plugins-common"
- "bareos-filedaemon-python2-plugin"
"bareos-filedaemon-python3-plugin"
- "bareos-storage"
- "bareos-storage-ceph"
+ "bareos-filedaemon"
"bareos-storage-droplet"
"bareos-storage-fifo"
"bareos-storage-glusterfs"
"bareos-storage-python-plugins-common"
- "bareos-storage-python2-plugin"
"bareos-storage-python3-plugin"
"bareos-storage-tape"
+ "bareos-storage"
"bareos-tools"
+ "bareos-traymonitor"
"bareos-vmware-plugin"
"bareos-webui"
+ "bareos-webui-apache"
+ "bareos-webui-nginx"
"bareos-devel"
- "bareos-traymonitor"
- "python2-bareos"
"python-bareos"
)
-pkgver=21.1.3
+# "bareos-vadp-dumper"
+# "bareos-vmware-vix-disklib"
+
+pkgver=23.0.1
pkgmajor=${pkgver%%.*}
-pkgrel=3
+pkgrel=2
arch=(i686 x86_64 armv7h aarch64)
groups=('bareos')
pkgdesc="Bareos - Backup Archiving Recovery Open Sourced"
url="http://www.bareos.org"
license=('AGPL3')
-makedepends=('cmake' 'gcc' 'libmariadbclient' 'postgresql-libs' 'python2' 'python' 'rpcsvc-proto' 'git' 'lsb-release' 'qt5-base' 'glusterfs' 'jansson' 'pam_wrapper' 'ceph-libs')
+makedepends=('cmake' 'gcc' 'libmariadbclient' 'postgresql-libs' 'python' 'python-setuptools' 'rpcsvc-proto' 'git' 'lsb-release' 'qt5-base' 'glusterfs' 'jansson' 'pam_wrapper')
source=("git+https://github.com/bareos/bareos.git#tag=Release/${pkgver}"
"0001-distver.patch"
- "0002-libdroplet.patch"
- "0003-zend.patch"
- "0004-logspam.patch"
- "0005-version.patch"
- "0006-sqlspam.patch"
- "0007-hostname.patch"
- "0008-httpd.patch"
- "009-fix-timer_thread.patch"
- "bootstrap-table-locale-all.min.js")
+ "0003-version.patch"
+ "0004-sqlspam.patch"
+ "0005-httpd.patch")
+
md5sums=('SKIP'
'419b0c64af750aa3e8ea668edf464d3e'
- 'f2a2a4e1a83d80ee3ba42b38b2062208'
- 'f9b885e18313d9c070372d313e1b422d'
- '39724df5903b712fb8d34209c7ac8f1e'
'5bf1233d94dfecc9060746bfb39b9d2b'
'ca4c929a2462cafaead8d0b49e3cebed'
- 'b0068e1a248ac0d0e83fb8ae1e034f62'
- '33d9c3a1d25b30ac2182aa8d874e28a5'
- 'c8d3568ddf543a576c6fdbe586d8d3d3'
- 'e78b88f897cfc3e60129eec360521e3d')
-python3_ver="3.10"
-python2_ver="2.7"
+ 'a6a260808e46c20b1c22aa2efebc3fe1'
+ )
+
+python3_ver=$(python -c "from sys import version_info; print(\"%d.%d\" % (version_info[0],version_info[1]))");#"
#=========================================
prepare() {
@@ -120,7 +113,9 @@ build() {
-Ddynamic-cats-backends=yes \
-Ddynamic-storage-backends=yes \
-Dpostgresql=yes \
- -Dpython=yes \
+ -Dlmdb=yes \
+ -Dndmp=yes \
+ -Dacl=yes \
-Dopenssl=yes \
-Ddir-user=bareos \
-Ddir-group=bareos \
@@ -130,12 +125,13 @@ build() {
-Dfd-group=root \
-Dscsi-crypto=yes \
-Dsystemd=yes \
- -Dtraymonitor=yes
+ -Dtraymonitor=yes \
+ -DCMAKE_CXX_FLAGS="-Wno-use-after-free" \
+ -DCMAKE_C_FLAGS="-Wno-use-after-free"
make DESTDIR="${srcdir}/install" install
cd "${srcdir}/${pkgbase}/python-bareos"
- python2 setup.py build
python setup.py build
}
@@ -144,29 +140,45 @@ build() {
# - skip a line
# directory - add recursively an arbitrary directory
cp_pkgdir() {
+ mkdir -p "$pkgdir"
if [ "${1:0:1}" = "-" ] ; then
return
elif [ "${1:0:1}" = "+" ] ; then
- dir_name=$pkgdir/`echo "$1" | sed "s|+||"`
- mkdir -p "$dir_name"
+ dir_out=$pkgdir/`echo "$1" | sed "s|+||"`
+ mkdir -p "$dir_out"
return
fi
- for n in $2$1 \
- ; do
- if [ -f "$n" ]; then
- dir_name=$pkgdir/$(dirname "$n" | sed "s|$2||")
- else
- dir_name=$pkgdir/`echo "$n" | sed "s|$2||"`
- fi
- if [ "${dir_name:0:1}" == "." ]; then
- return
+ for n in $1 \
+ ; do
+ echo "Copied: $n"
+ if [[ "$n" =~ "*" ]]; then
+ res=1
+ ls -l $2/$n > /dev/null 2>&1 && res=0
+ if [ ${res} -ne 0 ] ; then
+ echo -e "\033[41mError:\033[0m missing $2/$n";
+ return
+ fi
+ files=`find $2/$n -type f,l`
+ for f in $files \
+ ; do
+ new_dir=$(dirname $pkgdir`echo "$f" | sed "s|$2||"`)
+ mkdir -p $new_dir
+ cp -au $f "$new_dir"
+ done
+ elif [ -f $2/$n ]; then
+ # pacman LINT tool currently does not like spaces
+ #space_removal=`echo $f | tr ' ' '_'`
+ new_dir=$(dirname $pkgdir/`echo "$n" | sed "s|$2||"`)
+ new_file=$pkgdir/`echo "${n//\?/_}" | sed "s|$2||"`
+ mkdir -p $new_dir
+ cp -au $2/$n $new_file
+ elif [ -d $2/$n ]; then
+ new_dir=$(dirname $pkgdir/`echo "$n" | sed "s|$2||"`)
+ mkdir -p $new_dir
+ cp -aR $2/$n "$new_dir"
else
- mkdir -p "$dir_name"
- fi
- if [ -f "$n" ]; then
- cp -a "$n" "$dir_name"
- elif [ -d "$n" ]; then
- cp -aR "$n" "$(dirname $dir_name)"
+ echo -e "\033[41mError:\033[0m missing $2/$n";
+ return
fi
done
}
@@ -185,7 +197,7 @@ package_bareos-bconsole() {
usr/share/man/man1/bconsole.1* \
+etc/bareos \
; do
- cp_pkgdir "$f" "$srcdir/install/"
+ cp_pkgdir "$f" "$srcdir/install"
done
install -m640 "${srcdir}/install/usr/share/bareos/config/bconsole.conf" \
"${pkgdir}/etc/bareos/bconsole.conf"
@@ -217,19 +229,59 @@ package_bareos-common() {
+run/bareos \
+usr/share/licenses/${pkgname} \
; do
- cp_pkgdir "$f" "$srcdir/install/"
+ cp_pkgdir "$f" "$srcdir/install"
done
install -Dm644 ${srcdir}/bareos/core/{AGPL-3.0.txt,LICENSE,README.*} "${pkgdir}/usr/share/licenses/${pkgname}/"
}
+#=========================================
+package_bareos-contrib-director-python-plugins() {
+ pkgdesc="${pkgdesc} - Backup Archiving Recovery Open Sourced - contributed Director plugins"
+ depends=("bareos-common=${pkgver}" "bareos-director-python-plugin=${pkgver}")
+
+ for f in \
+ usr/lib/bareos/plugins/BareosDirPluginNscaSender.py \
+ usr/lib/bareos/plugins/bareos-dir-nsca-sender.py \
+ ; do
+ cp_pkgdir "$f" "$srcdir/install"
+ done
+}
+
+#=========================================
+package_bareos-contrib-filedaemon-python-plugins() {
+ pkgdesc="${pkgdesc} - Backup Archiving Recovery Open Sourced - contributed File Daemon plugins"
+ depends=("bareos-common=${pkgver}" "bareos-filedaemon-python-plugin=${pkgver}")
+
+ for f in \
+ usr/lib/bareos/plugins/bareos_mysql_dump/* \
+ usr/lib/bareos/plugins/bareos_tasks/* \
+ usr/lib/bareos/plugins/openvz7/* \
+ ; do
+ cp_pkgdir "$f" "$srcdir/install"
+ done
+}
+
+#=========================================
+package_bareos-contrib-tools() {
+ arch=(any)
+ pkgdesc="${pkgdesc} - Backup Archiving Recovery Open Sourced - contributed tools"
+ depends=("python-bareos=${pkgver}" "bareos-filedaemon=${pkgver}")
+
+ for f in \
+ usr/bin/bareos-triggerjob.py \
+ usr/bin/bsmc \
+ etc/bareos/bsmc.conf \
+ ; do
+ cp_pkgdir "$f" "$srcdir/install"
+ done
+}
#=========================================
package_bareos-database-common() {
- pkgdesc="${pkgdesc} - Generic abstration libs and tools for sql catalog"
- depends=("bareos-common=${pkgver}" 'libcap' 'lzo' 'zlib' 'openssl' 'bash' 'jansson')
+ pkgdesc="${pkgdesc} - Backup Archiving Recovery Open Sourced - common catalog files"
+ depends=("bareos-common=${pkgver}" "bareos-database-postgresql=${pkgver}" 'libcap' 'lzo' 'zlib' 'openssl' 'bash' 'jansson')
for f in \
usr/lib/bareos/libbareossql.so* \
- usr/lib/bareos/libbareoscats.so* \
usr/lib/bareos/scripts/create_bareos_database \
usr/lib/bareos/scripts/drop_bareos_database \
usr/lib/bareos/scripts/drop_bareos_tables \
@@ -238,7 +290,7 @@ package_bareos-database-common() {
usr/lib/bareos/scripts/update_bareos_tables \
usr/lib/bareos/scripts/ddl/versions.map \
; do
- cp_pkgdir "$f" "$srcdir/install/"
+ cp_pkgdir "$f" "$srcdir/install"
done
}
@@ -248,11 +300,11 @@ package_bareos-database-postgresql() {
provides=("bareos-database=${pkgver}")
depends=("bareos-database-common=${pkgver}" "postgresql-libs")
install=bareos-database-postgresql.install
+
for f in \
- usr/lib/bareos/backends/libbareoscats-postgresql.so* \
usr/lib/bareos/scripts/ddl/*/postgresql*.sql \
; do
- cp_pkgdir "$f" "$srcdir/install/"
+ cp_pkgdir "$f" "$srcdir/install"
done
}
@@ -267,7 +319,7 @@ package_bareos-database-tools() {
usr/share/man/man8/bareos-dbcheck.8* \
usr/share/man/man8/bscan.8* \
; do
- cp_pkgdir "$f" "$srcdir/install/"
+ cp_pkgdir "$f" "$srcdir/install"
done
}
@@ -289,7 +341,6 @@ package_bareos-director() {
etc/logrotate.d/bareos-dir \
usr/lib/bareos/scripts/delete_catalog_backup \
usr/lib/bareos/scripts/make_catalog_backup \
- usr/lib/bareos/scripts/make_catalog_backup.pl \
usr/lib/bareos/scripts/query.sql \
usr/share/bareos/config/bareos-dir.d/catalog/MyCatalog.conf \
usr/share/bareos/config/bareos-dir.d/client/bareos-fd.conf \
@@ -320,9 +371,7 @@ package_bareos-director() {
usr/share/man/man8/bareos.8* \
usr/lib/systemd/system/bareos-dir.service \
; do
- # pacman LINT tool currently does not like spaces
- #space_removal=`echo $f | tr ' ' '_'`
- cp_pkgdir "$f" "$srcdir/install/"
+ cp_pkgdir "$f" "$srcdir/install"
done
# Currently upstream systemd file does not automatically create run directory
@@ -331,6 +380,7 @@ package_bareos-director() {
#=========================================
package_bareos-director-python-plugins-common() {
+ arch=(any)
pkgdesc="${pkgdesc} - This package contains the common files for the python 2 and python 3 director plugins"
depends=("bareos-director=${pkgver}")
@@ -339,22 +389,7 @@ package_bareos-director-python-plugins-common() {
usr/lib/bareos/plugins/BareosDirPluginBaseclass.py* \
usr/lib/bareos/plugins/bareos-dir-class-plugin.py* \
; do
- cp_pkgdir "$f" "$srcdir/install/"
- done
-}
-
-#=========================================
-package_bareos-director-python2-plugin() {
- conflicts=("bareos-director-python-plugin")
- pkgdesc="${pkgdesc} - Python plugin for director daemon"
- depends=("bareos-director=${pkgver}"
- "bareos-director-python-plugins-common=${pkgver}"
- 'python2' 'libcap' 'jansson' 'lzo')
- for f in \
- usr/lib/bareos/plugins/python-dir.so \
- usr/lib/python2.7/site-packages/bareosdir.so \
- ; do
- cp_pkgdir "$f" "$srcdir/install/"
+ cp_pkgdir "$f" "$srcdir/install"
done
}
@@ -369,7 +404,7 @@ package_bareos-director-python3-plugin() {
usr/lib/bareos/plugins/python3-dir.so \
usr/lib/python${python3_ver}/site-packages/bareosdir.cpython*.so \
; do
- cp_pkgdir "$f" "$srcdir/install/"
+ cp_pkgdir "$f" "$srcdir/install"
done
}
@@ -390,7 +425,7 @@ package_bareos-filedaemon() {
usr/share/man/man8/bareos-fd.8* \
usr/lib/systemd/system/bareos-fd.service \
; do
- cp_pkgdir "$f" "$srcdir/install/"
+ cp_pkgdir "$f" "$srcdir/install"
done
# Currently upstream systemd file does not automatically create run directory
sed -i '/\[Service\]/a RuntimeDirectory=bareos' ${pkgdir}/usr/lib/systemd/system/bareos-fd.service
@@ -407,12 +442,13 @@ package_bareos-filedaemon-glusterfs-plugin() {
usr/share/bareos/config/bareos-dir.d/job/BackupGFAPI.conf.example \
usr/share/bareos/config/bareos-dir.d/job/RestoreGFAPI.conf.example \
; do
- cp_pkgdir "$f" "$srcdir/install/"
+ cp_pkgdir "$f" "$srcdir/install"
done
}
#=========================================
package_bareos-filedaemon-ldap-python-plugin() {
+ arch=(any)
pkgdesc="${pkgdesc} - LDAP Python plugin for Bareos File daemon"
depends=("bareos-filedaemon=${pkgver}"
"bareos-filedaemon-python3-plugin=${pkgver}"
@@ -421,17 +457,17 @@ package_bareos-filedaemon-ldap-python-plugin() {
for f in \
usr/lib/bareos/plugins/bareos-fd-ldap.py* \
- usr/lib/bareos/plugins/BareosFdPluginLDAP.py* \
usr/share/bareos/config/bareos-dir.d/fileset/plugin-ldap.conf.example \
usr/share/bareos/config/bareos-dir.d/job/backup-ldap.conf.example \
usr/share/bareos/config/bareos-dir.d/job/restore-ldap.conf.example \
; do
- cp_pkgdir "$f" "$srcdir/install/"
+ cp_pkgdir "$f" "$srcdir/install"
done
}
#=========================================
package_bareos-filedaemon-libcloud-python-plugin() {
+ arch=(any)
pkgdesc="${pkgdesc} - Libcloud Python plugin for Bareos File daemon"
depends=("bareos-filedaemon=${pkgver}"
"python-apache-libcloud")
@@ -442,76 +478,63 @@ package_bareos-filedaemon-libcloud-python-plugin() {
usr/lib/bareos/plugins/bareos_libcloud_api \
usr/lib/bareos/plugins/bareos_libcloud_api/* \
; do
- cp_pkgdir "$f" "$srcdir/install/"
+ cp_pkgdir "$f" "$srcdir/install"
done
}
#=========================================
package_bareos-filedaemon-mariabackup-python-plugin() {
+ arch=(any)
pkgdesc="${pkgdesc} - MariaBackup plugin for Bareos File daemon"
depends=("bareos-filedaemon=${pkgver}"
"mariadb")
for f in \
usr/lib/bareos/plugins/bareos-fd-mariabackup.py* \
- usr/lib/bareos/plugins/BareosFdPluginMariabackup.py* \
; do
- cp_pkgdir "$f" "$srcdir/install/"
+ cp_pkgdir "$f" "$srcdir/install"
done
}
#=========================================
package_bareos-filedaemon-percona-xtrabackup-python-plugin() {
+ arch=(any)
pkgdesc="${pkgdesc} - XtraBackup plugin for Bareos File daemon"
depends=("bareos-filedaemon=${pkgver}"
"xtrabackup")
for f in \
usr/lib/bareos/plugins/bareos-fd-percona-xtrabackup.py* \
- usr/lib/bareos/plugins/BareosFdPluginPerconaXtraBackup.py* \
; do
- cp_pkgdir "$f" "$srcdir/install/"
+ cp_pkgdir "$f" "$srcdir/install"
done
}
#=========================================
package_bareos-filedaemon-postgresql-python-plugin() {
+ arch=(any)
pkgdesc="${pkgdesc} - PostgreSQL plugin for Bareos File daemon"
depends=("bareos-filedaemon=${pkgver}"
"postgresql")
for f in \
usr/lib/bareos/plugins/bareos-fd-postgres.py* \
- usr/lib/bareos/plugins/BareosFdPluginPostgres.py* \
+ usr/lib/bareos/plugins/bareos-fd-postgresql.py* \
; do
- cp_pkgdir "$f" "$srcdir/install/"
+ cp_pkgdir "$f" "$srcdir/install"
done
}
#=========================================
package_bareos-filedaemon-python-plugins-common() {
+ arch=(any)
pkgdesc="${pkgdesc} - This package contains the common files for the python 2 and python 3 filedaemon plugins"
depends=("bareos-filedaemon=${pkgver}")
for f in \
usr/lib/bareos/plugins/bareos-fd-local-fileset.py* \
usr/lib/bareos/plugins/BareosFdPluginBaseclass.py* \
- usr/lib/bareos/plugins/BareosFdPluginLocalFileset.py* \
usr/lib/bareos/plugins/BareosFdPluginLocalFilesBaseclass.py* \
usr/lib/bareos/plugins/BareosFdWrapper.py* \
+ usr/lib/bareos/scripts/bareos_encode_string.py \
; do
- cp_pkgdir "$f" "$srcdir/install/"
- done
-}
-
-#=========================================
-package_bareos-filedaemon-python2-plugin() {
- conflicts=("bareos-filedaemon-python-plugin")
- pkgdesc="${pkgdesc} - Python plugin for file daemon"
- depends=("bareos-filedaemon=${pkgver}"
- "bareos-filedaemon-python-plugins-common=${pkgver}"
- 'python2' 'libcap' 'lzo' 'jansson')
- for f in \
- usr/lib/bareos/plugins/python-fd.so \
- usr/lib/python${python2_ver}/site-packages/bareosfd.so \
- ; do
- cp_pkgdir "$f" "$srcdir/install/"
+ cp_pkgdir "$f" "$srcdir/install"
done
}
@@ -526,7 +549,7 @@ package_bareos-filedaemon-python3-plugin() {
usr/lib/bareos/plugins/python3-fd.so \
usr/lib/python${python3_ver}/site-packages/bareosfd.cpython*.so \
; do
- cp_pkgdir "$f" "$srcdir/install/"
+ cp_pkgdir "$f" "$srcdir/install"
done
}
@@ -537,6 +560,7 @@ package_bareos-storage() {
install=bareos-storage.install
for f in \
usr/lib/bareos/plugins/autoxflate-sd.so \
+ usr/lib/bareos/backends/libbareossd-file.so* \
usr/lib/bareos/scripts/disk-changer \
usr/share/bareos/config/bareos-sd.d/device/FileStorage.conf \
usr/share/bareos/config/bareos-sd.d/director/bareos-dir.conf \
@@ -545,11 +569,11 @@ package_bareos-storage() {
usr/share/bareos/config/bareos-sd.d/storage/bareos-sd.conf \
usr/share/bareos/config/tray-monitor.d/storage/StorageDaemon-local*.conf \
usr/bin/bareos-sd \
- usr/share/man/man8/bareos-sd.8 \
+ usr/share/man/man8/bareos-sd.8* \
usr/lib/systemd/system/bareos-sd.service \
+var/lib/bareos/storage \
; do
- cp_pkgdir "$f" "$srcdir/install/"
+ cp_pkgdir "$f" "$srcdir/install"
done
# Currently upstream systemd file does not automatically create run directory
@@ -557,26 +581,10 @@ package_bareos-storage() {
}
#=========================================
-package_bareos-storage-ceph() {
- pkgdesc="${pkgdesc} - Backup Archiving Recovery Open Sourced - storage daemon CEPH backend"
- depends=("bareos-storage=${pkgver}")
- for f in \
- usr/lib/bareos/backends/libbareossd-rados.so* \
- usr/lib/bareos/backends/libbareossd-cephfs.so* \
- usr/share/bareos/config/bareos-dir.d/storage/Rados.conf.example \
- usr/share/bareos/config/bareos-sd.d/device/RadosStorage.conf.example \
- ; do
- cp_pkgdir "$f" "$srcdir/install/"
- done
-}
-
-#=========================================
package_bareos-storage-droplet() {
pkgdesc="${pkgdesc} - Droplet support for storage daemon"
depends=("bareos-storage=${pkgver}")
for f in \
- usr/lib/bareos/libbareosdroplet.so* \
- usr/lib/bareos/backends/libbareossd-chunked.so* \
usr/lib/bareos/backends/libbareossd-droplet.so* \
usr/share/bareos/config/bareos-dir.d/storage/S3_Object.conf.example \
usr/share/bareos/config/bareos-sd.d/device/S3_ObjectStorage.conf.example \
@@ -584,7 +592,7 @@ package_bareos-storage-droplet() {
usr/share/bareos/config/bareos-sd.d/device/droplet/aws_eu-central-1.profile.example \
usr/share/bareos/config/bareos-sd.d/device/droplet/ceph-rados-gateway.profile.example \
; do
- cp_pkgdir "$f" "$srcdir/install/"
+ cp_pkgdir "$f" "$srcdir/install"
done
}
@@ -597,7 +605,7 @@ package_bareos-storage-fifo() {
usr/share/bareos/config/bareos-dir.d/storage/NULL.conf.example \
usr/share/bareos/config/bareos-sd.d/device/NULL.conf.example \
; do
- cp_pkgdir "$f" "$srcdir/install/"
+ cp_pkgdir "$f" "$srcdir/install"
done
}
@@ -611,12 +619,13 @@ package_bareos-storage-glusterfs() {
usr/share/bareos/config/bareos-dir.d/storage/Gluster.conf.example \
usr/share/bareos/config/bareos-sd.d/device/GlusterStorage.conf.example \
; do
- cp_pkgdir "$f" "$srcdir/install/"
+ cp_pkgdir "$f" "$srcdir/install"
done
}
#=========================================
package_bareos-storage-python-plugins-common() {
+ arch=(any)
pkgdesc="${pkgdesc} - This package contains the common files for the python 2 and python 3 storage plugins"
depends=("bareos-storage=${pkgver}")
for f in \
@@ -624,22 +633,7 @@ package_bareos-storage-python-plugins-common() {
usr/lib/bareos/plugins/BareosSdWrapper.py* \
usr/lib/bareos/plugins/bareos-sd-class-plugin.py* \
; do
- cp_pkgdir "$f" "$srcdir/install/"
- done
-}
-
-#=========================================
-package_bareos-storage-python2-plugin() {
- conflicts=("bareos-storage-python-plugin")
- pkgdesc="${pkgdesc} - Python plugin for storage daemon"
- depends=("bareos-storage=${pkgver}"
- "bareos-storage-python-plugins-common=${pkgver}"
- 'python2' 'lzo' 'libcap' 'jansson')
- for f in \
- usr/lib/bareos/plugins/python-sd.so \
- usr/lib/python${python2_ver}/site-packages/bareossd.so \
- ; do
- cp_pkgdir "$f" "$srcdir/install/"
+ cp_pkgdir "$f" "$srcdir/install"
done
}
@@ -654,7 +648,7 @@ package_bareos-storage-python3-plugin() {
usr/lib/bareos/plugins/python3-sd.so \
usr/lib/python${python3_ver}/site-packages/bareossd.cpython*.so \
; do
- cp_pkgdir "$f" "$srcdir/install/"
+ cp_pkgdir "$f" "$srcdir/install"
done
}
@@ -664,21 +658,20 @@ package_bareos-storage-tape() {
depends=("bareos-storage=${pkgver}" 'zlib' 'libcap' 'bash' 'openssl' 'jansson' 'lzo' "mtx")
backup=(etc/bareos/mtx-changer.conf)
for f in \
- etc/bareos/mtx-changer.conf \
- usr/share/bareos/config/bareos-dir.d/storage/Tape.conf.example \
- usr/share/bareos/config/bareos-sd.d/autochanger/autochanger-0.conf.example \
- usr/share/bareos/config/bareos-sd.d/device/tapedrive-0.conf.example \
- usr/lib/bareos/backends/libbareossd-gentape.so* \
- usr/lib/bareos/backends/libbareossd-tape.so* \
- usr/lib/bareos/plugins/scsicrypto-sd.so \
- usr/lib/bareos/plugins/scsitapealert-sd.so \
- usr/lib/bareos/scripts/mtx-changer \
- usr/share/man/man8/bscrypto.8* \
- usr/share/man/man8/btape.8* \
- usr/bin/bscrypto \
- usr/bin/btape \
+ etc/bareos/mtx-changer.conf \
+ usr/share/bareos/config/bareos-dir.d/storage/Tape.conf.example \
+ usr/share/bareos/config/bareos-sd.d/autochanger/autochanger-0.conf.example \
+ usr/share/bareos/config/bareos-sd.d/device/tapedrive-0.conf.example \
+ usr/lib/bareos/backends/libbareossd-tape.so* \
+ usr/lib/bareos/plugins/scsicrypto-sd.so \
+ usr/lib/bareos/plugins/scsitapealert-sd.so \
+ usr/lib/bareos/scripts/mtx-changer \
+ usr/share/man/man8/bscrypto.8* \
+ usr/share/man/man8/btape.8* \
+ usr/bin/bscrypto \
+ usr/bin/btape \
; do
- cp_pkgdir "$f" "$srcdir/install/"
+ cp_pkgdir "$f" "$srcdir/install"
done
}
@@ -702,7 +695,7 @@ package_bareos-tools() {
usr/share/man/man8/bls.8* \
usr/share/man/man8/bpluginfo.8* \
; do
- cp_pkgdir "$f" "$srcdir/install/"
+ cp_pkgdir "$f" "$srcdir/install"
done
}
@@ -723,7 +716,7 @@ package_bareos-traymonitor() {
usr/share/applications/bareos-tray-monitor.desktop \
usr/share/pixmaps/bareos-tray-monitor.png \
; do
- cp_pkgdir "$f" "$srcdir/install/"
+ cp_pkgdir "$f" "$srcdir/install"
done
# tray-monitor needs configuration files to run
@@ -731,61 +724,99 @@ package_bareos-traymonitor() {
}
#=========================================
+package_bareos-vadp-dumper() {
+ pkgdesc="${pkgdesc} - vStorage APIs for Data Protection Dumper program"
+
+ for f in \
+ usr/bin/bareos_vadp_dumper \
+ usr/bin/bareos_vadp_dumper_wrapper.sh \
+ ; do
+ cp_pkgdir "$f" "$srcdir/install"
+ done
+}
+
+#=========================================
+package_bareos-vmware-vix-disklib() {
+ pkgdesc="${pkgdesc} - VMware vix disklib distributable libraries"
+
+ for f in \
+ usr/lib/vmware-vix-disklib/lib64/* \
+ ; do
+ cp_pkgdir "$f" "$srcdir/install"
+ done
+}
+
+#=========================================
package_bareos-vmware-plugin() {
+ arch=(any)
pkgdesc="${pkgdesc} - Bareos VMware plugin"
- depends=('python2')
+ depends=("bareos-vadp-dumper=${pkgver}" "bareos-common=${pkgver}" )
+ optdepends=("bareos-filedaemon-python3-plugin=${pkgver}")
for f in \
- usr/lib/bareos/plugins/BareosFdPluginVMware.py \
usr/lib/bareos/plugins/bareos-fd-vmware.py \
-usr/bin/vmware_cbt_tool.py \
+usr/bin \
; do
- cp_pkgdir "$f" "$srcdir/install/"
+ cp_pkgdir "$f" "$srcdir/install"
done
install -m755 "${srcdir}/bareos/core/src/vmware/vmware_cbt_tool/vmware_cbt_tool.py" "${pkgdir}/usr/bin/vmware_cbt_tool.py"
}
#=========================================
package_bareos-webui() {
+ arch=(any)
pkgdesc="${pkgdesc} - Webui (Bareos web administration)"
- depends=('php7' 'php7-fpm' 'jansson')
- optdepend=('apache' 'nginx' 'php7-apache' )
+ depends=('jansson')
+ optdepend=( 'bareos-webui-apache' 'bareos-webui-nginx' )
backup=('etc/bareos-webui/directors.ini'
'etc/bareos-webui/configuration.ini'
'etc/bareos/bareos-dir.d/console/admin.conf.example'
- 'etc/bareos/bareos-dir.d/profile/webui-admin.conf'
- 'etc/httpd/conf/extra/bareos-webui.conf')
- #_cp ${srcdir}/install/usr/share/bareos-webui ${pkgdir}/usr/share/webapps/bareos-webui
+ 'etc/bareos/bareos-dir.d/profile/webui-admin.conf')
+
for f in \
etc/bareos/bareos-dir.d/console/admin.conf.example \
etc/bareos/bareos-dir.d/profile/webui-admin.conf \
etc/bareos/bareos-dir.d/profile/webui-limited.conf.example \
etc/bareos/bareos-dir.d/profile/webui-readonly.conf \
- etc/httpd/conf/extra/bareos-webui.conf \
etc/bareos-webui/directors.ini \
etc/bareos-webui/configuration.ini \
usr/share/bareos-webui \
+usr/share/licenses/${pkgname} \
; do
- cp_pkgdir "$f" "$srcdir/install/"
+ cp_pkgdir "$f" "$srcdir/install"
done
- cp ${srcdir}/bootstrap-table-locale-all.min.js ${pkgdir}/usr/share/bareos-webui/public/js/bootstrap-table-locale-all.min.js
install -Dm644 ${srcdir}/bareos/webui/{README.md,LICENSE,doc/README-TRANSLATION.md} "${pkgdir}/usr/share/licenses/${pkgname}/"
}
#=========================================
-package_python2-bareos() {
- pkgdesc="${pkgdesc} - python-bareos is a Python2 module to access a backup system."
- depends=('python2' 'jansson')
+package_bareos-webui-apache() {
+ arch=(any)
+ pkgdesc="${pkgdesc} - Webui Apache"
+ depends=('apache' 'php-apache' 'php' 'php-fpm' 'php-pgsql')
+ backup=('etc/httpd/conf/extra/bareos-webui.conf')
- cd "${srcdir}/${pkgbase}/python-bareos"
- python2 setup.py install --skip-build --root="${pkgdir}" --optimize='1'
+ for f in \
+ etc/httpd/conf/extra/bareos-webui.conf \
+ ; do
+ cp_pkgdir "$f" "$srcdir/install"
+ done
+}
+
+#=========================================
+package_bareos-webui-nginx() {
+ arch=(any)
+ pkgdesc="${pkgdesc} - Webui nginx"
+ depends=('nginx' 'php' 'php-fpm' 'php-pgsql')
+ backup=('etc/nginx/bareos-webui.conf')
+
+ mkdir -p "$pkgdir"/etc/nginx
+ cp ${srcdir}/bareos/webui/install/nginx/bareos-webui.conf ${pkgdir}/etc/nginx/bareos-webui.conf
}
#=========================================
package_python-bareos() {
pkgdesc="${pkgdesc} - python-bareos is a Python module to access a backup system."
- depends=('python' 'jansson')
+ depends=('python' 'python-sslpsk' 'jansson')
cd "${srcdir}/${pkgbase}/python-bareos"
python setup.py install --skip-build --root="${pkgdir}" --optimize='1'
diff --git a/PoolModel.patch b/PoolModel.patch
deleted file mode 100644
index 91acadf3f497..000000000000
--- a/PoolModel.patch
+++ /dev/null
@@ -1,15 +0,0 @@
---- a/webui/module/Pool/src/Pool/Model/PoolModel.php 2021-06-10 16:18:18.371213388 +0300
-+++ b/webui/module/Pool/src/Pool/Model/PoolModel.php 2021-06-11 00:44:00.000000000 +0300
-@@ -146,9 +146,10 @@
- if(isset($bsock, $pool)) {
- $cmd = 'show pool="'.$pool.'"';
- $result = $bsock->send_command($cmd, 0);
--
- $matches = [];
-- preg_match('/\s*Next\s*Pool\s*=\s*("|\')?(?<value>.*)(?(1)\1|)/i', $result, $matches);
-+ //preg_match('/\s*Next\s*Pool\s*=\s*("|\')?(?<value>.*)(?(1)\1|)/i', $result, $matches);
-+ preg_match('/\s*Pool\s*=?(?<value>.*)(?(1)\1|)/i', $result, $matches);
-+ //print_r($matches);
- return $matches["value"];
- }
- else {
diff --git a/bootstrap-table-locale-all.min.js b/bootstrap-table-locale-all.min.js
deleted file mode 100644
index 91f2b0276d65..000000000000
--- a/bootstrap-table-locale-all.min.js
+++ /dev/null
@@ -1,10 +0,0 @@
-/**
-* bootstrap-table - An extended table to integration with some of the most widely used CSS frameworks. (Supports Bootstrap, Semantic UI, Bulma, Material Design, Foundation)
-*
-* @version v1.15.5
-* @homepage https://bootstrap-table.com
-* @author wenzhixin <wenzhixin2010@gmail.com> (http://wenzhixin.net.cn/)
-* @license MIT
-*/
-
-!function(t,n){"object"==typeof exports&&"undefined"!=typeof module?n(require("jquery")):"function"==typeof define&&define.amd?define(["jquery"],n):n((t=t||self).jQuery)}(this,(function(t){"use strict";t=t&&t.hasOwnProperty("default")?t.default:t;var n="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{};function o(t,n){return t(n={exports:{}},n.exports),n.exports}var r,e,a,c,i="object",u=function(t){return t&&t.Math==Math&&t},f=u(typeof globalThis==i&&globalThis)||u(typeof window==i&&window)||u(typeof self==i&&self)||u(typeof n==i&&n)||Function("return this")(),l=function(t){try{return!!t()}catch(t){return!0}},s=!l((function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a})),m={}.propertyIsEnumerable,g=Object.getOwnPropertyDescriptor,d={f:g&&!m.call({1:2},1)?function(t){var n=g(this,t);return!!n&&n.enumerable}:m},h=function(t,n){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:n}},p={}.toString,S=function(t){return p.call(t).slice(8,-1)},w="".split,T=l((function(){return!Object("z").propertyIsEnumerable(0)}))?function(t){return"String"==S(t)?w.call(t,""):Object(t)}:Object,P=function(t){if(null==t)throw TypeError("Can't call method on "+t);return t},R=function(t){return T(P(t))},v=function(t){return"object"==typeof t?null!==t:"function"==typeof t},A=function(t,n){if(!v(t))return t;var o,r;if(n&&"function"==typeof(o=t.toString)&&!v(r=o.call(t)))return r;if("function"==typeof(o=t.valueOf)&&!v(r=o.call(t)))return r;if(!n&&"function"==typeof(o=t.toString)&&!v(r=o.call(t)))return r;throw TypeError("Can't convert object to primitive value")},x={}.hasOwnProperty,b=function(t,n){return x.call(t,n)},C=f.document,O=v(C)&&v(C.createElement),k=!s&&!l((function(){return 7!=Object.defineProperty((t="div",O?C.createElement(t):{}),"a",{get:function(){return 7}}).a;var t})),E=Object.getOwnPropertyDescriptor,M={f:s?E:function(t,n){if(t=R(t),n=A(n,!0),k)try{return E(t,n)}catch(t){}if(b(t,n))return h(!d.f.call(t,n),t[n])}},N=function(t){if(!v(t))throw TypeError(String(t)+" is not an object");return t},y=Object.defineProperty,D={f:s?y:function(t,n,o){if(N(t),n=A(n,!0),N(o),k)try{return y(t,n,o)}catch(t){}if("get"in o||"set"in o)throw TypeError("Accessors not supported");return"value"in o&&(t[n]=o.value),t}},H=s?function(t,n,o){return D.f(t,n,h(1,o))}:function(t,n,o){return t[n]=o,t},F=function(t,n){try{H(f,t,n)}catch(o){f[t]=n}return n},L=o((function(t){var n=f["__core-js_shared__"]||F("__core-js_shared__",{});(t.exports=function(t,o){return n[t]||(n[t]=void 0!==o?o:{})})("versions",[]).push({version:"3.1.3",mode:"global",copyright:"© 2019 Denis Pushkarev (zloirock.ru)"})})),B=L("native-function-to-string",Function.toString),z=f.WeakMap,j="function"==typeof z&&/native code/.test(B.call(z)),U=0,G=Math.random(),J=function(t){return"Symbol("+String(void 0===t?"":t)+")_"+(++U+G).toString(36)},V=L("keys"),Z={},K=f.WeakMap;if(j){var I=new K,q=I.get,_=I.has,W=I.set;r=function(t,n){return W.call(I,t,n),n},e=function(t){return q.call(I,t)||{}},a=function(t){return _.call(I,t)}}else{var Y=V[c="state"]||(V[c]=J(c));Z[Y]=!0,r=function(t,n){return H(t,Y,n),n},e=function(t){return b(t,Y)?t[Y]:{}},a=function(t){return b(t,Y)}}var Q,X={set:r,get:e,has:a,enforce:function(t){return a(t)?e(t):r(t,{})},getterFor:function(t){return function(n){var o;if(!v(n)||(o=e(n)).type!==t)throw TypeError("Incompatible receiver, "+t+" required");return o}}},$=o((function(t){var n=X.get,o=X.enforce,r=String(B).split("toString");L("inspectSource",(function(t){return B.call(t)})),(t.exports=function(t,n,e,a){var c=!!a&&!!a.unsafe,i=!!a&&!!a.enumerable,u=!!a&&!!a.noTargetGet;"function"==typeof e&&("string"!=typeof n||b(e,"name")||H(e,"name",n),o(e).source=r.join("string"==typeof n?n:"")),t!==f?(c?!u&&t[n]&&(i=!0):delete t[n],i?t[n]=e:H(t,n,e)):i?t[n]=e:F(n,e)})(Function.prototype,"toString",(function(){return"function"==typeof this&&n(this).source||B.call(this)}))})),tt=f,nt=function(t){return"function"==typeof t?t:void 0},ot=Math.ceil,rt=Math.floor,et=function(t){return isNaN(t=+t)?0:(t>0?rt:ot)(t)},at=Math.min,ct=function(t){return t>0?at(et(t),9007199254740991):0},it=Math.max,ut=Math.min,ft=function(t){return function(n,o,r){var e,a=R(n),c=ct(a.length),i=function(t,n){var o=et(t);return o<0?it(o+n,0):ut(o,n)}(r,c);if(t&&o!=o){for(;c>i;)if((e=a[i++])!=e)return!0}else for(;c>i;i++)if((t||i in a)&&a[i]===o)return t||i||0;return!t&&-1}},lt={includes:ft(!0),indexOf:ft(!1)}.indexOf,st=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"].concat("length","prototype"),mt={f:Object.getOwnPropertyNames||function(t){return function(t,n){var o,r=R(t),e=0,a=[];for(o in r)!b(Z,o)&&b(r,o)&&a.push(o);for(;n.length>e;)b(r,o=n[e++])&&(~lt(a,o)||a.push(o));return a}(t,st)}},gt={f:Object.getOwnPropertySymbols},dt=function(t,n){return arguments.length<2?nt(tt[t])||nt(f[t]):tt[t]&&tt[t][n]||f[t]&&f[t][n]}("Reflect","ownKeys")||function(t){var n=mt.f(N(t)),o=gt.f;return o?n.concat(o(t)):n},ht=function(t,n){for(var o=dt(n),r=D.f,e=M.f,a=0;a<o.length;a++){var c=o[a];b(t,c)||r(t,c,e(n,c))}},pt=/#|\.prototype\./,St=function(t,n){var o=Tt[wt(t)];return o==Rt||o!=Pt&&("function"==typeof n?l(n):!!n)},wt=St.normalize=function(t){return String(t).replace(pt,".").toLowerCase()},Tt=St.data={},Pt=St.NATIVE="N",Rt=St.POLYFILL="P",vt=St,At=M.f,xt=Array.isArray||function(t){return"Array"==S(t)},bt=function(t){return Object(P(t))},Ct=function(t,n,o){var r=A(n);r in t?D.f(t,r,h(0,o)):t[r]=o},Ot=!!Object.getOwnPropertySymbols&&!l((function(){return!String(Symbol())})),kt=f.Symbol,Et=L("wks"),Mt=function(t){return Et[t]||(Et[t]=Ot&&kt[t]||(Ot?kt:J)("Symbol."+t))},Nt=Mt("species"),yt=function(t,n){var o;return xt(t)&&("function"!=typeof(o=t.constructor)||o!==Array&&!xt(o.prototype)?v(o)&&null===(o=o[Nt])&&(o=void 0):o=void 0),new(void 0===o?Array:o)(0===n?0:n)},Dt=Mt("species"),Ht=Mt("isConcatSpreadable"),Ft=!l((function(){var t=[];return t[Ht]=!1,t.concat()[0]!==t})),Lt=(Q="concat",!l((function(){var t=[];return(t.constructor={})[Dt]=function(){return{foo:1}},1!==t[Q](Boolean).foo}))),Bt=function(t){if(!v(t))return!1;var n=t[Ht];return void 0!==n?!!n:xt(t)};!function(t,n){var o,r,e,a,c,i=t.target,u=t.global,l=t.stat;if(o=u?f:l?f[i]||F(i,{}):(f[i]||{}).prototype)for(r in n){if(a=n[r],e=t.noTargetGet?(c=At(o,r))&&c.value:o[r],!vt(u?r:i+(l?".":"#")+r,t.forced)&&void 0!==e){if(typeof a==typeof e)continue;ht(a,e)}(t.sham||e&&e.sham)&&H(a,"sham",!0),$(o,r,a,t)}}({target:"Array",proto:!0,forced:!Ft||!Lt},{concat:function(t){var n,o,r,e,a,c=bt(this),i=yt(c,0),u=0;for(n=-1,r=arguments.length;n<r;n++)if(a=-1===n?c:arguments[n],Bt(a)){if(u+(e=ct(a.length))>9007199254740991)throw TypeError("Maximum allowed index exceeded");for(o=0;o<e;o++,u++)o in a&&Ct(i,u,a[o])}else{if(u>=9007199254740991)throw TypeError("Maximum allowed index exceeded");Ct(i,u++,a)}return i.length=u,i}}),t.fn.bootstrapTable.locales["af-ZA"]={formatLoadingMessage:function(){return"Besig om te laai, wag asseblief"},formatRecordsPerPage:function(t){return"".concat(t," rekords per bladsy")},formatShowingRows:function(t,n,o,r){return void 0!==r&&r>0&&r>o?"Resultate ".concat(t," tot ").concat(n," van ").concat(o," rye (filtered from ").concat(r," total rows)"):"Resultate ".concat(t," tot ").concat(n," van ").concat(o," rye")},formatSRPaginationPreText:function(){return"previous page"},formatSRPaginationPageText:function(t){return"to page ".concat(t)},formatSRPaginationNextText:function(){return"next page"},formatDetailPagination:function(t){return"Showing ".concat(t," rows")},formatClearSearch:function(){return"Clear Search"},formatSearch:function(){return"Soek"},formatNoMatches:function(){return"Geen rekords gevind nie"},formatPaginationSwitch:function(){return"Wys/verberg bladsy nummering"},formatPaginationSwitchDown:function(){return"Show pagination"},formatPaginationSwitchUp:function(){return"Hide pagination"},formatRefresh:function(){return"Herlaai"},formatToggle:function(){return"Wissel"},formatToggleOn:function(){return"Show card view"},formatToggleOff:function(){return"Hide card view"},formatColumns:function(){return"Kolomme"},formatColumnsToggleAll:function(){return"Toggle all"},formatFullscreen:function(){return"Fullscreen"},formatAllRows:function(){return"All"},formatAutoRefresh:function(){return"Auto Refresh"},formatExport:function(){return"Export data"},formatJumpTo:function(){return"GO"},formatAdvancedSearch:function(){return"Advanced search"},formatAdvancedCloseButton:function(){return"Close"}},t.extend(t.fn.bootstrapTable.defaults,t.fn.bootstrapTable.locales["af-ZA"]),t.fn.bootstrapTable.locales["ar-SA"]={formatLoadingMessage:function(){return"جاري التحميل, يرجى الإنتظار"},formatRecordsPerPage:function(t){return"".concat(t," سجل لكل صفحة")},formatShowingRows:function(t,n,o,r){return void 0!==r&&r>0&&r>o?"الظاهر ".concat(t," إلى ").concat(n," من ").concat(o," سجل ").concat(r," total rows)"):"الظاهر ".concat(t," إلى ").concat(n," من ").concat(o," سجل")},formatSRPaginationPreText:function(){return"previous page"},formatSRPaginationPageText:function(t){return"to page ".concat(t)},formatSRPaginationNextText:function(){return"next page"},formatDetailPagination:function(t){return"Showing ".concat(t," rows")},formatClearSearch:function(){return"Clear Search"},formatSearch:function(){return"بحث"},formatNoMatches:function(){return"لا توجد نتائج مطابقة للبحث"},formatPaginationSwitch:function(){return"إخفاءإظهار ترقيم الصفحات"},formatPaginationSwitchDown:function(){return"Show pagination"},formatPaginationSwitchUp:function(){return"Hide pagination"},formatRefresh:function(){return"تحديث"},formatToggle:function(){return"تغيير"},formatToggleOn:function(){return"Show card view"},formatToggleOff:function(){return"Hide card view"},formatColumns:function(){return"أعمدة"},formatColumnsToggleAll:function(){return"Toggle all"},formatFullscreen:function(){return"Fullscreen"},formatAllRows:function(){return"All"},formatAutoRefresh:function(){return"Auto Refresh"},formatExport:function(){return"Export data"},formatJumpTo:function(){return"GO"},formatAdvancedSearch:function(){return"Advanced search"},formatAdvancedCloseButton:function(){return"Close"}},t.extend(t.fn.bootstrapTable.defaults,t.fn.bootstrapTable.locales["ar-SA"]),t.fn.bootstrapTable.locales["ca-ES"]={formatLoadingMessage:function(){return"Espereu, si us plau"},formatRecordsPerPage:function(t){return"".concat(t," resultats per pàgina")},formatShowingRows:function(t,n,o,r){return void 0!==r&&r>0&&r>o?"Mostrant de ".concat(t," fins ").concat(n," - total ").concat(o," resultats (filtered from ").concat(r," total rows)"):"Mostrant de ".concat(t," fins ").concat(n," - total ").concat(o," resultats")},formatSRPaginationPreText:function(){return"previous page"},formatSRPaginationPageText:function(t){return"to page ".concat(t)},formatSRPaginationNextText:function(){return"next page"},formatDetailPagination:function(t){return"Showing ".concat(t," rows")},formatClearSearch:function(){return"Clear Search"},formatSearch:function(){return"Cerca"},formatNoMatches:function(){return"No s'han trobat resultats"},formatPaginationSwitch:function(){return"Amaga/Mostra paginació"},formatPaginationSwitchDown:function(){return"Show pagination"},formatPaginationSwitchUp:function(){return"Hide pagination"},formatRefresh:function(){return"Refresca"},formatToggle:function(){return"Alterna formatació"},formatToggleOn:function(){return"Show card view"},formatToggleOff:function(){return"Hide card view"},formatColumns:function(){return"Columnes"},formatColumnsToggleAll:function(){return"Toggle all"},formatFullscreen:function(){return"Fullscreen"},formatAllRows:function(){return"Tots"},formatAutoRefresh:function(){return"Auto Refresh"},formatExport:function(){return"Export data"},formatJumpTo:function(){return"GO"},formatAdvancedSearch:function(){return"Advanced search"},formatAdvancedCloseButton:function(){return"Close"}},t.extend(t.fn.bootstrapTable.defaults,t.fn.bootstrapTable.locales["ca-ES"]),t.fn.bootstrapTable.locales["cs-CZ"]={formatLoadingMessage:function(){return"Čekejte, prosím"},formatRecordsPerPage:function(t){return"".concat(t," položek na stránku")},formatShowingRows:function(t,n,o,r){return void 0!==r&&r>0&&r>o?"Zobrazena ".concat(t,". - ").concat(n," . položka z celkových ").concat(o," (filtered from ").concat(r," total rows)"):"Zobrazena ".concat(t,". - ").concat(n," . položka z celkových ").concat(o)},formatSRPaginationPreText:function(){return"previous page"},formatSRPaginationPageText:function(t){return"to page ".concat(t)},formatSRPaginationNextText:function(){return"next page"},formatDetailPagination:function(t){return"Showing ".concat(t," rows")},formatClearSearch:function(){return"Clear Search"},formatSearch:function(){return"Vyhledávání"},formatNoMatches:function(){return"Nenalezena žádná vyhovující položka"},formatPaginationSwitch:function(){return"Skrýt/Zobrazit stránkování"},formatPaginationSwitchDown:function(){return"Show pagination"},formatPaginationSwitchUp:function(){return"Hide pagination"},formatRefresh:function(){return"Aktualizovat"},formatToggle:function(){return"Přepni"},formatToggleOn:function(){return"Show card view"},formatToggleOff:function(){return"Hide card view"},formatColumns:function(){return"Sloupce"},formatColumnsToggleAll:function(){return"Toggle all"},formatFullscreen:function(){return"Fullscreen"},formatAllRows:function(){return"Vše"},formatAutoRefresh:function(){return"Auto Refresh"},formatExport:function(){return"Export data"},formatJumpTo:function(){return"GO"},formatAdvancedSearch:function(){return"Advanced search"},formatAdvancedCloseButton:function(){return"Close"}},t.extend(t.fn.bootstrapTable.defaults,t.fn.bootstrapTable.locales["cs-CZ"]),t.fn.bootstrapTable.locales["da-DK"]={formatLoadingMessage:function(){return"Indlæser, vent venligst"},formatRecordsPerPage:function(t){return"".concat(t," poster pr side")},formatShowingRows:function(t,n,o,r){return void 0!==r&&r>0&&r>o?"Viser ".concat(t," til ").concat(n," af ").concat(o," række").concat(o>1?"r":""," (filtered from ").concat(r," total rows)"):"Viser ".concat(t," til ").concat(n," af ").concat(o," række").concat(o>1?"r":"")},formatSRPaginationPreText:function(){return"previous page"},formatSRPaginationPageText:function(t){return"to page ".concat(t)},formatSRPaginationNextText:function(){return"next page"},formatDetailPagination:function(t){return"Viser ".concat(t," række").concat(t>1?"r":"")},formatClearSearch:function(){return"Ryd filtre"},formatSearch:function(){return"Søg"},formatNoMatches:function(){return"Ingen poster fundet"},formatPaginationSwitch:function(){return"Skjul/vis nummerering"},formatPaginationSwitchDown:function(){return"Show pagination"},formatPaginationSwitchUp:function(){return"Hide pagination"},formatRefresh:function(){return"Opdater"},formatToggle:function(){return"Skift"},formatToggleOn:function(){return"Show card view"},formatToggleOff:function(){return"Hide card view"},formatColumns:function(){return"Kolonner"},formatColumnsToggleAll:function(){return"Toggle all"},formatFullscreen:function(){return"Fullscreen"},formatAllRows:function(){return"Alle"},formatAutoRefresh:function(){return"Auto Refresh"},formatExport:function(){return"Eksporter"},formatJumpTo:function(){return"GO"},formatAdvancedSearch:function(){return"Advanced search"},formatAdvancedCloseButton:function(){return"Close"}},t.extend(t.fn.bootstrapTable.defaults,t.fn.bootstrapTable.locales["da-DK"]),t.fn.bootstrapTable.locales["de-DE"]={formatLoadingMessage:function(){return"Lade, bitte warten"},formatRecordsPerPage:function(t){return"".concat(t," Zeilen pro Seite.")},formatShowingRows:function(t,n,o,r){return void 0!==r&&r>0&&r>o?"Zeige Zeile ".concat(t," bis ").concat(n," von ").concat(o," Zeile").concat(o>1?"n":""," (Gefiltert von ").concat(r," Zeile").concat(r>1?"n":"",")"):"Zeige Zeile ".concat(t," bis ").concat(n," von ").concat(o," Zeile").concat(o>1?"n":"",".")},formatSRPaginationPreText:function(){return"Vorherige Seite"},formatSRPaginationPageText:function(t){return"Zu Seite ".concat(t)},formatSRPaginationNextText:function(){return"Nächste Seite"},formatDetailPagination:function(t){return"Zeige ".concat(t," Zeile").concat(t>1?"n":"",".")},formatClearSearch:function(){return"Lösche Filter"},formatSearch:function(){return"Suchen"},formatNoMatches:function(){return"Keine passenden Ergebnisse gefunden"},formatPaginationSwitch:function(){return"Verstecke/Zeige Nummerierung"},formatPaginationSwitchDown:function(){return"Zeige Nummerierung"},formatPaginationSwitchUp:function(){return"Verstecke Nummerierung"},formatRefresh:function(){return"Neu laden"},formatToggle:function(){return"Umschalten"},formatToggleOn:function(){return"Normale Ansicht"},formatToggleOff:function(){return"Kartenansicht"},formatColumns:function(){return"Spalten"},formatColumnsToggleAll:function(){return"Alle umschalten"},formatFullscreen:function(){return"Vollbild"},formatAllRows:function(){return"Alle"},formatAutoRefresh:function(){return"Automatisches Neuladen"},formatExport:function(){return"Datenexport"},formatJumpTo:function(){return"GO"},formatAdvancedSearch:function(){return"Erweiterte Suche"},formatAdvancedCloseButton:function(){return"Schließen"}},t.extend(t.fn.bootstrapTable.defaults,t.fn.bootstrapTable.locales["de-DE"]),t.fn.bootstrapTable.locales["el-GR"]={formatLoadingMessage:function(){return"Φορτώνει, παρακαλώ περιμένετε"},formatRecordsPerPage:function(t){return"".concat(t," αποτελέσματα ανά σελίδα")},formatShowingRows:function(t,n,o,r){return void 0!==r&&r>0&&r>o?"Εμφανίζονται από την ".concat(t," ως την ").concat(n," από σύνολο ").concat(o," σειρών (filtered from ").concat(r," total rows)"):"Εμφανίζονται από την ".concat(t," ως την ").concat(n," από σύνολο ").concat(o," σειρών")},formatSRPaginationPreText:function(){return"previous page"},formatSRPaginationPageText:function(t){return"to page ".concat(t)},formatSRPaginationNextText:function(){return"next page"},formatDetailPagination:function(t){return"Showing ".concat(t," rows")},formatClearSearch:function(){return"Clear Search"},formatSearch:function(){return"Αναζητήστε"},formatNoMatches:function(){return"Δεν βρέθηκαν αποτελέσματα"},formatPaginationSwitch:function(){return"Hide/Show pagination"},formatPaginationSwitchDown:function(){return"Show pagination"},formatPaginationSwitchUp:function(){return"Hide pagination"},formatRefresh:function(){return"Refresh"},formatToggle:function(){return"Toggle"},formatToggleOn:function(){return"Show card view"},formatToggleOff:function(){return"Hide card view"},formatColumns:function(){return"Columns"},formatColumnsToggleAll:function(){return"Toggle all"},formatFullscreen:function(){return"Fullscreen"},formatAllRows:function(){return"All"},formatAutoRefresh:function(){return"Auto Refresh"},formatExport:function(){return"Export data"},formatJumpTo:function(){return"GO"},formatAdvancedSearch:function(){return"Advanced search"},formatAdvancedCloseButton:function(){return"Close"}},t.extend(t.fn.bootstrapTable.defaults,t.fn.bootstrapTable.locales["el-GR"]),t.fn.bootstrapTable.locales["en-US"]={formatLoadingMessage:function(){return"Loading, please wait"},formatRecordsPerPage:function(t){return"".concat(t," rows per page")},formatShowingRows:function(t,n,o,r){return void 0!==r&&r>0&&r>o?"Showing ".concat(t," to ").concat(n," of ").concat(o," rows (filtered from ").concat(r," total rows)"):"Showing ".concat(t," to ").concat(n," of ").concat(o," rows")},formatSRPaginationPreText:function(){return"previous page"},formatSRPaginationPageText:function(t){return"to page ".concat(t)},formatSRPaginationNextText:function(){return"next page"},formatDetailPagination:function(t){return"Showing ".concat(t," rows")},formatClearSearch:function(){return"Clear Search"},formatSearch:function(){return"Search"},formatNoMatches:function(){return"No matching records found"},formatPaginationSwitch:function(){return"Hide/Show pagination"},formatPaginationSwitchDown:function(){return"Show pagination"},formatPaginationSwitchUp:function(){return"Hide pagination"},formatRefresh:function(){return"Refresh"},formatToggle:function(){return"Toggle"},formatToggleOn:function(){return"Show card view"},formatToggleOff:function(){return"Hide card view"},formatColumns:function(){return"Columns"},formatColumnsToggleAll:function(){return"Toggle all"},formatFullscreen:function(){return"Fullscreen"},formatAllRows:function(){return"All"},formatAutoRefresh:function(){return"Auto Refresh"},formatExport:function(){return"Export data"},formatJumpTo:function(){return"GO"},formatAdvancedSearch:function(){return"Advanced search"},formatAdvancedCloseButton:function(){return"Close"}},t.extend(t.fn.bootstrapTable.defaults,t.fn.bootstrapTable.locales["en-US"]),t.fn.bootstrapTable.locales["es-AR"]={formatLoadingMessage:function(){return"Cargando, espere por favor"},formatRecordsPerPage:function(t){return"".concat(t," registros por página")},formatShowingRows:function(t,n,o,r){return void 0!==r&&r>0&&r>o?"Mostrando ".concat(t," a ").concat(n," de ").concat(o," filas (filtered from ").concat(r," total rows)"):"Mostrando ".concat(t," a ").concat(n," de ").concat(o," filas")},formatSRPaginationPreText:function(){return"previous page"},formatSRPaginationPageText:function(t){return"to page ".concat(t)},formatSRPaginationNextText:function(){return"next page"},formatDetailPagination:function(t){return"Showing ".concat(t," rows")},formatClearSearch:function(){return"Limpiar búsqueda"},formatSearch:function(){return"Buscar"},formatNoMatches:function(){return"No se encontraron registros"},formatPaginationSwitch:function(){return"Hide/Show pagination"},formatPaginationSwitchDown:function(){return"Show pagination"},formatPaginationSwitchUp:function(){return"Hide pagination"},formatRefresh:function(){return"Refresh"},formatToggle:function(){return"Toggle"},formatToggleOn:function(){return"Show card view"},formatToggleOff:function(){return"Hide card view"},formatColumns:function(){return"Columns"},formatColumnsToggleAll:function(){return"Toggle all"},formatFullscreen:function(){return"Fullscreen"},formatAllRows:function(){return"Todo"},formatAutoRefresh:function(){return"Auto Refresh"},formatExport:function(){return"Export data"},formatJumpTo:function(){return"GO"},formatAdvancedSearch:function(){return"Advanced search"},formatAdvancedCloseButton:function(){return"Close"}},t.extend(t.fn.bootstrapTable.defaults,t.fn.bootstrapTable.locales["es-AR"]),t.fn.bootstrapTable.locales["es-CL"]={formatLoadingMessage:function(){return"Cargando, espere por favor"},formatRecordsPerPage:function(t){return"".concat(t," filas por página")},formatShowingRows:function(t,n,o,r){return void 0!==r&&r>0&&r>o?"Mostrando ".concat(t," a ").concat(n," de ").concat(o," filas (filtered from ").concat(r," total rows)"):"Mostrando ".concat(t," a ").concat(n," de ").concat(o," filas")},formatSRPaginationPreText:function(){return"previous page"},formatSRPaginationPageText:function(t){return"to page ".concat(t)},formatSRPaginationNextText:function(){return"next page"},formatDetailPagination:function(t){return"Showing ".concat(t," rows")},formatClearSearch:function(){return"Limpiar búsqueda"},formatSearch:function(){return"Buscar"},formatNoMatches:function(){return"No se encontraron registros"},formatPaginationSwitch:function(){return"Ocultar/Mostrar paginación"},formatPaginationSwitchDown:function(){return"Show pagination"},formatPaginationSwitchUp:function(){return"Hide pagination"},formatRefresh:function(){return"Refrescar"},formatToggle:function(){return"Cambiar"},formatToggleOn:function(){return"Show card view"},formatToggleOff:function(){return"Hide card view"},formatColumns:function(){return"Columnas"},formatColumnsToggleAll:function(){return"Toggle all"},formatFullscreen:function(){return"Fullscreen"},formatAllRows:function(){return"Todo"},formatAutoRefresh:function(){return"Auto Refresh"},formatExport:function(){return"Export data"},formatJumpTo:function(){return"GO"},formatAdvancedSearch:function(){return"Advanced search"},formatAdvancedCloseButton:function(){return"Close"}},t.extend(t.fn.bootstrapTable.defaults,t.fn.bootstrapTable.locales["es-CL"]),t.fn.bootstrapTable.locales["es-CR"]={formatLoadingMessage:function(){return"Cargando, por favor espere"},formatRecordsPerPage:function(t){return"".concat(t," registros por página")},formatShowingRows:function(t,n,o,r){return void 0!==r&&r>0&&r>o?"Mostrando de ".concat(t," a ").concat(n," registros de ").concat(o," registros en total (filtered from ").concat(r," total rows)"):"Mostrando de ".concat(t," a ").concat(n," registros de ").concat(o," registros en total")},formatSRPaginationPreText:function(){return"previous page"},formatSRPaginationPageText:function(t){return"to page ".concat(t)},formatSRPaginationNextText:function(){return"next page"},formatDetailPagination:function(t){return"Showing ".concat(t," rows")},formatClearSearch:function(){return"Limpiar búsqueda"},formatSearch:function(){return"Buscar"},formatNoMatches:function(){return"No se encontraron registros"},formatPaginationSwitch:function(){return"Hide/Show pagination"},formatPaginationSwitchDown:function(){return"Show pagination"},formatPaginationSwitchUp:function(){return"Hide pagination"},formatRefresh:function(){return"Refrescar"},formatToggle:function(){return"Alternar"},formatToggleOn:function(){return"Show card view"},formatToggleOff:function(){return"Hide card view"},formatColumns:function(){return"Columnas"},formatColumnsToggleAll:function(){return"Toggle all"},formatFullscreen:function(){return"Fullscreen"},formatAllRows:function(){return"Todo"},formatAutoRefresh:function(){return"Auto Refresh"},formatExport:function(){return"Export data"},formatJumpTo:function(){return"GO"},formatAdvancedSearch:function(){return"Advanced search"},formatAdvancedCloseButton:function(){return"Close"}},t.extend(t.fn.bootstrapTable.defaults,t.fn.bootstrapTable.locales["es-CR"]),t.fn.bootstrapTable.locales["es-ES"]={formatLoadingMessage:function(){return"Por favor espere"},formatRecordsPerPage:function(t){return"".concat(t," resultados por página")},formatShowingRows:function(t,n,o,r){return void 0!==r&&r>0&&r>o?"Mostrando desde ".concat(t," hasta ").concat(n," - En total ").concat(o," resultados (filtered from ").concat(r," total rows)"):"Mostrando desde ".concat(t," hasta ").concat(n," - En total ").concat(o," resultados")},formatSRPaginationPreText:function(){return"previous page"},formatSRPaginationPageText:function(t){return"to page ".concat(t)},formatSRPaginationNextText:function(){return"next page"},formatDetailPagination:function(t){return"Showing ".concat(t," rows")},formatClearSearch:function(){return"Limpiar búsqueda"},formatSearch:function(){return"Buscar"},formatNoMatches:function(){return"No se encontraron resultados"},formatPaginationSwitch:function(){return"Ocultar/Mostrar paginación"},formatPaginationSwitchDown:function(){return"Show pagination"},formatPaginationSwitchUp:function(){return"Hide pagination"},formatRefresh:function(){return"Refrescar"},formatToggle:function(){return"Ocultar/Mostrar"},formatToggleOn:function(){return"Show card view"},formatToggleOff:function(){return"Hide card view"},formatColumns:function(){return"Columnas"},formatColumnsToggleAll:function(){return"Toggle all"},formatFullscreen:function(){return"Fullscreen"},formatAllRows:function(){return"Todos"},formatAutoRefresh:function(){return"Auto Refresh"},formatExport:function(){return"Exportar los datos"},formatJumpTo:function(){return"GO"},formatAdvancedSearch:function(){return"Búsqueda avanzada"},formatAdvancedCloseButton:function(){return"Cerrar"}},t.extend(t.fn.bootstrapTable.defaults,t.fn.bootstrapTable.locales["es-ES"]),t.fn.bootstrapTable.locales["es-MX"]={formatLoadingMessage:function(){return"Cargando, espere por favor"},formatRecordsPerPage:function(t){return"".concat(t," registros por página")},formatShowingRows:function(t,n,o,r){return void 0!==r&&r>0&&r>o?"Mostrando ".concat(t," a ").concat(n," de ").concat(o," filas (filtered from ").concat(r," total rows)"):"Mostrando ".concat(t," a ").concat(n," de ").concat(o," filas")},formatSRPaginationPreText:function(){return"previous page"},formatSRPaginationPageText:function(t){return"to page ".concat(t)},formatSRPaginationNextText:function(){return"next page"},formatDetailPagination:function(t){return"Mostrando ".concat(t," filas")},formatClearSearch:function(){return"Limpiar búsqueda"},formatSearch:function(){return"Buscar"},formatNoMatches:function(){return"No se encontraron registros que coincidan"},formatPaginationSwitch:function(){return"Mostrar/ocultar paginación"},formatPaginationSwitchDown:function(){return"Show pagination"},formatPaginationSwitchUp:function(){return"Hide pagination"},formatRefresh:function(){return"Actualizar"},formatToggle:function(){return"Cambiar vista"},formatToggleOn:function(){return"Show card view"},formatToggleOff:function(){return"Hide card view"},formatColumns:function(){return"Columnas"},formatColumnsToggleAll:function(){return"Toggle all"},formatFullscreen:function(){return"Pantalla completa"},formatAllRows:function(){return"Todo"},formatAutoRefresh:function(){return"Auto Refresh"},formatExport:function(){return"Export data"},formatJumpTo:function(){return"GO"},formatAdvancedSearch:function(){return"Advanced search"},formatAdvancedCloseButton:function(){return"Close"}},t.extend(t.fn.bootstrapTable.defaults,t.fn.bootstrapTable.locales["es-MX"]),t.fn.bootstrapTable.locales["es-NI"]={formatLoadingMessage:function(){return"Cargando, por favor espere"},formatRecordsPerPage:function(t){return"".concat(t," registros por página")},formatShowingRows:function(t,n,o,r){return void 0!==r&&r>0&&r>o?"Mostrando de ".concat(t," a ").concat(n," registros de ").concat(o," registros en total (filtered from ").concat(r," total rows)"):"Mostrando de ".concat(t," a ").concat(n," registros de ").concat(o," registros en total")},formatSRPaginationPreText:function(){return"previous page"},formatSRPaginationPageText:function(t){return"to page ".concat(t)},formatSRPaginationNextText:function(){return"next page"},formatDetailPagination:function(t){return"Showing ".concat(t," rows")},formatClearSearch:function(){return"Limpiar búsqueda"},formatSearch:function(){return"Buscar"},formatNoMatches:function(){return"No se encontraron registros"},formatPaginationSwitch:function(){return"Hide/Show pagination"},formatPaginationSwitchDown:function(){return"Show pagination"},formatPaginationSwitchUp:function(){return"Hide pagination"},formatRefresh:function(){return"Refrescar"},formatToggle:function(){return"Alternar"},formatToggleOn:function(){return"Show card view"},formatToggleOff:function(){return"Hide card view"},formatColumns:function(){return"Columnas"},formatColumnsToggleAll:function(){return"Toggle all"},formatFullscreen:function(){return"Fullscreen"},formatAllRows:function(){return"Todo"},formatAutoRefresh:function(){return"Auto Refresh"},formatExport:function(){return"Export data"},formatJumpTo:function(){return"GO"},formatAdvancedSearch:function(){return"Advanced search"},formatAdvancedCloseButton:function(){return"Close"}},t.extend(t.fn.bootstrapTable.defaults,t.fn.bootstrapTable.locales["es-NI"]),t.fn.bootstrapTable.locales["es-SP"]={formatLoadingMessage:function(){return"Cargando, por favor espera"},formatRecordsPerPage:function(t){return"".concat(t," registros por p&#225;gina.")},formatShowingRows:function(t,n,o,r){return void 0!==r&&r>0&&r>o?"".concat(t," - ").concat(n," de ").concat(o," registros (filtered from ").concat(r," total rows)"):"".concat(t," - ").concat(n," de ").concat(o," registros.")},formatSRPaginationPreText:function(){return"previous page"},formatSRPaginationPageText:function(t){return"to page ".concat(t)},formatSRPaginationNextText:function(){return"next page"},formatDetailPagination:function(t){return"Showing ".concat(t," rows")},formatClearSearch:function(){return"Limpiar búsqueda"},formatSearch:function(){return"Buscar"},formatNoMatches:function(){return"No se han encontrado registros."},formatPaginationSwitch:function(){return"Hide/Show pagination"},formatPaginationSwitchDown:function(){return"Show pagination"},formatPaginationSwitchUp:function(){return"Hide pagination"},formatRefresh:function(){return"Actualizar"},formatToggle:function(){return"Alternar"},formatToggleOn:function(){return"Show card view"},formatToggleOff:function(){return"Hide card view"},formatColumns:function(){return"Columnas"},formatColumnsToggleAll:function(){return"Toggle all"},formatFullscreen:function(){return"Fullscreen"},formatAllRows:function(){return"Todo"},formatAutoRefresh:function(){return"Auto Refresh"},formatExport:function(){return"Export data"},formatJumpTo:function(){return"GO"},formatAdvancedSearch:function(){return"Advanced search"},formatAdvancedCloseButton:function(){return"Close"}},t.extend(t.fn.bootstrapTable.defaults,t.fn.bootstrapTable.locales["es-SP"]),t.fn.bootstrapTable.locales["et-EE"]={formatLoadingMessage:function(){return"Päring käib, palun oota"},formatRecordsPerPage:function(t){return"".concat(t," rida lehe kohta")},formatShowingRows:function(t,n,o,r){return void 0!==r&&r>0&&r>o?"Näitan tulemusi ".concat(t," kuni ").concat(n," - kokku ").concat(o," tulemust (filtered from ").concat(r," total rows)"):"Näitan tulemusi ".concat(t," kuni ").concat(n," - kokku ").concat(o," tulemust")},formatSRPaginationPreText:function(){return"previous page"},formatSRPaginationPageText:function(t){return"to page ".concat(t)},formatSRPaginationNextText:function(){return"next page"},formatDetailPagination:function(t){return"Showing ".concat(t," rows")},formatClearSearch:function(){return"Clear Search"},formatSearch:function(){return"Otsi"},formatNoMatches:function(){return"Päringu tingimustele ei vastanud ühtegi tulemust"},formatPaginationSwitch:function(){return"Näita/Peida lehtedeks jagamine"},formatPaginationSwitchDown:function(){return"Show pagination"},formatPaginationSwitchUp:function(){return"Hide pagination"},formatRefresh:function(){return"Värskenda"},formatToggle:function(){return"Lülita"},formatToggleOn:function(){return"Show card view"},formatToggleOff:function(){return"Hide card view"},formatColumns:function(){return"Veerud"},formatColumnsToggleAll:function(){return"Toggle all"},formatFullscreen:function(){return"Fullscreen"},formatAllRows:function(){return"Kõik"},formatAutoRefresh:function(){return"Auto Refresh"},formatExport:function(){return"Export data"},formatJumpTo:function(){return"GO"},formatAdvancedSearch:function(){return"Advanced search"},formatAdvancedCloseButton:function(){return"Close"}},t.extend(t.fn.bootstrapTable.defaults,t.fn.bootstrapTable.locales["et-EE"]),t.fn.bootstrapTable.locales["eu-EU"]={formatLoadingMessage:function(){return"Itxaron mesedez"},formatRecordsPerPage:function(t){return"".concat(t," emaitza orriko.")},formatShowingRows:function(t,n,o,r){return void 0!==r&&r>0&&r>o?"".concat(o," erregistroetatik ").concat(t,"etik ").concat(n,"erakoak erakusten (filtered from ").concat(r," total rows)"):"".concat(o," erregistroetatik ").concat(t,"etik ").concat(n,"erakoak erakusten.")},formatSRPaginationPreText:function(){return"previous page"},formatSRPaginationPageText:function(t){return"to page ".concat(t)},formatSRPaginationNextText:function(){return"next page"},formatDetailPagination:function(t){return"Showing ".concat(t," rows")},formatClearSearch:function(){return"Clear Search"},formatSearch:function(){return"Bilatu"},formatNoMatches:function(){return"Ez da emaitzarik aurkitu"},formatPaginationSwitch:function(){return"Ezkutatu/Erakutsi orrikatzea"},formatPaginationSwitchDown:function(){return"Show pagination"},formatPaginationSwitchUp:function(){return"Hide pagination"},formatRefresh:function(){return"Eguneratu"},formatToggle:function(){return"Ezkutatu/Erakutsi"},formatToggleOn:function(){return"Show card view"},formatToggleOff:function(){return"Hide card view"},formatColumns:function(){return"Zutabeak"},formatColumnsToggleAll:function(){return"Toggle all"},formatFullscreen:function(){return"Fullscreen"},formatAllRows:function(){return"Guztiak"},formatAutoRefresh:function(){return"Auto Refresh"},formatExport:function(){return"Export data"},formatJumpTo:function(){return"GO"},formatAdvancedSearch:function(){return"Advanced search"},formatAdvancedCloseButton:function(){return"Close"}},t.extend(t.fn.bootstrapTable.defaults,t.fn.bootstrapTable.locales["eu-EU"]),t.fn.bootstrapTable.locales["fa-IR"]={formatLoadingMessage:function(){return"در حال بارگذاری, لطفا صبر کنید"},formatRecordsPerPage:function(t){return"".concat(t," رکورد در صفحه")},formatShowingRows:function(t,n,o,r){return void 0!==r&&r>0&&r>o?"نمایش ".concat(t," تا ").concat(n," از ").concat(o," ردیف (filtered from ").concat(r," total rows)"):"نمایش ".concat(t," تا ").concat(n," از ").concat(o," ردیف")},formatSRPaginationPreText:function(){return"previous page"},formatSRPaginationPageText:function(t){return"to page ".concat(t)},formatSRPaginationNextText:function(){return"next page"},formatDetailPagination:function(t){return"Showing ".concat(t," rows")},formatClearSearch:function(){return"Clear Search"},formatSearch:function(){return"جستجو"},formatNoMatches:function(){return"رکوردی یافت نشد."},formatPaginationSwitch:function(){return"نمایش/مخفی صفحه بندی"},formatPaginationSwitchDown:function(){return"Show pagination"},formatPaginationSwitchUp:function(){return"Hide pagination"},formatRefresh:function(){return"به روز رسانی"},formatToggle:function(){return"تغییر نمایش"},formatToggleOn:function(){return"Show card view"},formatToggleOff:function(){return"Hide card view"},formatColumns:function(){return"سطر ها"},formatColumnsToggleAll:function(){return"Toggle all"},formatFullscreen:function(){return"Fullscreen"},formatAllRows:function(){return"همه"},formatAutoRefresh:function(){return"Auto Refresh"},formatExport:function(){return"Export data"},formatJumpTo:function(){return"GO"},formatAdvancedSearch:function(){return"Advanced search"},formatAdvancedCloseButton:function(){return"Close"}},t.extend(t.fn.bootstrapTable.defaults,t.fn.bootstrapTable.locales["fa-IR"]),t.fn.bootstrapTable.locales["fi-FI"]={formatLoadingMessage:function(){return"Ladataan, ole hyvä ja odota"},formatRecordsPerPage:function(t){return"".concat(t," riviä sivulla")},formatShowingRows:function(t,n,o,r){return void 0!==r&&r>0&&r>o?"Näytetään rivit ".concat(t," - ").concat(n," / ").concat(o," (filtered from ").concat(r," total rows)"):"Näytetään rivit ".concat(t," - ").concat(n," / ").concat(o)},formatSRPaginationPreText:function(){return"previous page"},formatSRPaginationPageText:function(t){return"to page ".concat(t)},formatSRPaginationNextText:function(){return"next page"},formatDetailPagination:function(t){return"Showing ".concat(t," rows")},formatClearSearch:function(){return"Poista suodattimet"},formatSearch:function(){return"Hae"},formatNoMatches:function(){return"Hakuehtoja vastaavia tuloksia ei löytynyt"},formatPaginationSwitch:function(){return"Näytä/Piilota sivutus"},formatPaginationSwitchDown:function(){return"Show pagination"},formatPaginationSwitchUp:function(){return"Hide pagination"},formatRefresh:function(){return"Päivitä"},formatToggle:function(){return"Valitse"},formatToggleOn:function(){return"Show card view"},formatToggleOff:function(){return"Hide card view"},formatColumns:function(){return"Sarakkeet"},formatColumnsToggleAll:function(){return"Toggle all"},formatFullscreen:function(){return"Fullscreen"},formatAllRows:function(){return"Kaikki"},formatAutoRefresh:function(){return"Auto Refresh"},formatExport:function(){return"Vie tiedot"},formatJumpTo:function(){return"GO"},formatAdvancedSearch:function(){return"Advanced search"},formatAdvancedCloseButton:function(){return"Close"}},t.extend(t.fn.bootstrapTable.defaults,t.fn.bootstrapTable.locales["fi-FI"]),t.fn.bootstrapTable.locales["fr-BE"]={formatLoadingMessage:function(){return"Chargement en cours"},formatRecordsPerPage:function(t){return"".concat(t," lignes par page")},formatShowingRows:function(t,n,o,r){return void 0!==r&&r>0&&r>o?"Affiche de ".concat(t," à ").concat(n," sur ").concat(o," lignes (filtrés à partir de ").concat(r," lignes)"):"Affiche de ".concat(t," à ").concat(n," sur ").concat(o," lignes")},formatSRPaginationPreText:function(){return"page précédente"},formatSRPaginationPageText:function(t){return"vers la page ".concat(t)},formatSRPaginationNextText:function(){return"page suivante"},formatDetailPagination:function(t){return"Affiche ".concat(t," lignes")},formatClearSearch:function(){return"Effacer la recherche"},formatSearch:function(){return"Recherche"},formatNoMatches:function(){return"Pas de lignes trouvés"},formatPaginationSwitch:function(){return"Cacher/Afficher pagination"},formatPaginationSwitchDown:function(){return"Afficher pagination"},formatPaginationSwitchUp:function(){return"Cacher pagination"},formatRefresh:function(){return"Rafraichir"},formatToggle:function(){return"Basculer"},formatToggleOn:function(){return"Afficher vue carte"},formatToggleOff:function(){return"Cacher vue carte"},formatColumns:function(){return"Colonnes"},formatColumnsToggleAll:function(){return"Tout basculer"},formatFullscreen:function(){return"Plein écran"},formatAllRows:function(){return"Tout"},formatAutoRefresh:function(){return"Rafraîchissement automatique"},formatExport:function(){return"Exporter les données"},formatJumpTo:function(){return"Aller à"},formatAdvancedSearch:function(){return"Recherche avancée"},formatAdvancedCloseButton:function(){return"Fermer"}},t.extend(t.fn.bootstrapTable.defaults,t.fn.bootstrapTable.locales["fr-BE"]),t.fn.bootstrapTable.locales["fr-CH"]={formatLoadingMessage:function(){return"Chargement en cours"},formatRecordsPerPage:function(t){return"".concat(t," lignes par page")},formatShowingRows:function(t,n,o,r){return void 0!==r&&r>0&&r>o?"Affiche de ".concat(t," à ").concat(n," sur ").concat(o," lignes (filtrés à partir de ").concat(r," lignes)"):"Affiche de ".concat(t," à ").concat(n," sur ").concat(o," lignes")},formatSRPaginationPreText:function(){return"page précédente"},formatSRPaginationPageText:function(t){return"vers la page ".concat(t)},formatSRPaginationNextText:function(){return"page suivante"},formatDetailPagination:function(t){return"Affiche ".concat(t," lignes")},formatClearSearch:function(){return"Effacer la recherche"},formatSearch:function(){return"Recherche"},formatNoMatches:function(){return"Pas de lignes trouvés"},formatPaginationSwitch:function(){return"Cacher/Afficher pagination"},formatPaginationSwitchDown:function(){return"Afficher pagination"},formatPaginationSwitchUp:function(){return"Cacher pagination"},formatRefresh:function(){return"Rafraichir"},formatToggle:function(){return"Basculer"},formatToggleOn:function(){return"Afficher vue carte"},formatToggleOff:function(){return"Cacher vue carte"},formatColumns:function(){return"Colonnes"},formatColumnsToggleAll:function(){return"Tout basculer"},formatFullscreen:function(){return"Plein écran"},formatAllRows:function(){return"Tout"},formatAutoRefresh:function(){return"Rafraîchissement automatique"},formatExport:function(){return"Exporter les données"},formatJumpTo:function(){return"Aller à"},formatAdvancedSearch:function(){return"Recherche avancée"},formatAdvancedCloseButton:function(){return"Fermer"}},t.extend(t.fn.bootstrapTable.defaults,t.fn.bootstrapTable.locales["fr-CH"]),t.fn.bootstrapTable.locales["fr-FR"]={formatLoadingMessage:function(){return"Chargement en cours"},formatRecordsPerPage:function(t){return"".concat(t," lignes par page")},formatShowingRows:function(t,n,o,r){return void 0!==r&&r>0&&r>o?"Affiche de ".concat(t," à ").concat(n," sur ").concat(o," lignes (filtrés à partir de ").concat(r," lignes)"):"Affiche de ".concat(t," à ").concat(n," sur ").concat(o," lignes")},formatSRPaginationPreText:function(){return"page précédente"},formatSRPaginationPageText:function(t){return"vers la page ".concat(t)},formatSRPaginationNextText:function(){return"page suivante"},formatDetailPagination:function(t){return"Affiche ".concat(t," lignes")},formatClearSearch:function(){return"Effacer la recherche"},formatSearch:function(){return"Recherche"},formatNoMatches:function(){return"Pas de lignes trouvés"},formatPaginationSwitch:function(){return"Cacher/Afficher pagination"},formatPaginationSwitchDown:function(){return"Afficher pagination"},formatPaginationSwitchUp:function(){return"Cacher pagination"},formatRefresh:function(){return"Rafraichir"},formatToggle:function(){return"Basculer"},formatToggleOn:function(){return"Afficher vue carte"},formatToggleOff:function(){return"Cacher vue carte"},formatColumns:function(){return"Colonnes"},formatColumnsToggleAll:function(){return"Tout basculer"},formatFullscreen:function(){return"Plein écran"},formatAllRows:function(){return"Tout"},formatAutoRefresh:function(){return"Rafraîchissement automatique"},formatExport:function(){return"Exporter les données"},formatJumpTo:function(){return"Aller à"},formatAdvancedSearch:function(){return"Recherche avancée"},formatAdvancedCloseButton:function(){return"Fermer"}},t.extend(t.fn.bootstrapTable.defaults,t.fn.bootstrapTable.locales["fr-FR"]),t.fn.bootstrapTable.locales["fr-LU"]={formatLoadingMessage:function(){return"Chargement en cours"},formatRecordsPerPage:function(t){return"".concat(t," lignes par page")},formatShowingRows:function(t,n,o,r){return void 0!==r&&r>0&&r>o?"Affiche de ".concat(t," à ").concat(n," sur ").concat(o," lignes (filtrés à partir de ").concat(r," lignes)"):"Affiche de ".concat(t," à ").concat(n," sur ").concat(o," lignes")},formatSRPaginationPreText:function(){return"page précédente"},formatSRPaginationPageText:function(t){return"vers la page ".concat(t)},formatSRPaginationNextText:function(){return"page suivante"},formatDetailPagination:function(t){return"Affiche ".concat(t," lignes")},formatClearSearch:function(){return"Effacer la recherche"},formatSearch:function(){return"Recherche"},formatNoMatches:function(){return"Pas de lignes trouvés"},formatPaginationSwitch:function(){return"Cacher/Afficher pagination"},formatPaginationSwitchDown:function(){return"Afficher pagination"},formatPaginationSwitchUp:function(){return"Cacher pagination"},formatRefresh:function(){return"Rafraichir"},formatToggle:function(){return"Basculer"},formatToggleOn:function(){return"Afficher vue carte"},formatToggleOff:function(){return"Cacher vue carte"},formatColumns:function(){return"Colonnes"},formatColumnsToggleAll:function(){return"Tout basculer"},formatFullscreen:function(){return"Plein écran"},formatAllRows:function(){return"Tout"},formatAutoRefresh:function(){return"Rafraîchissement automatique"},formatExport:function(){return"Exporter les données"},formatJumpTo:function(){return"Aller à"},formatAdvancedSearch:function(){return"Recherche avancée"},formatAdvancedCloseButton:function(){return"Fermer"}},t.extend(t.fn.bootstrapTable.defaults,t.fn.bootstrapTable.locales["fr-LU"]),t.fn.bootstrapTable.locales["he-IL"]={formatLoadingMessage:function(){return"טוען, נא להמתין"},formatRecordsPerPage:function(t){return"".concat(t," שורות בעמוד")},formatShowingRows:function(t,n,o,r){return void 0!==r&&r>0&&r>o?"מציג ".concat(t," עד ").concat(n," מ-").concat(o,"שורות").concat(r," total rows)"):"מציג ".concat(t," עד ").concat(n," מ-").concat(o," שורות")},formatSRPaginationPreText:function(){return"previous page"},formatSRPaginationPageText:function(t){return"to page ".concat(t)},formatSRPaginationNextText:function(){return"next page"},formatDetailPagination:function(t){return"Showing ".concat(t," rows")},formatClearSearch:function(){return"Clear Search"},formatSearch:function(){return"חיפוש"},formatNoMatches:function(){return"לא נמצאו רשומות תואמות"},formatPaginationSwitch:function(){return"הסתר/הצג מספור דפים"},formatPaginationSwitchDown:function(){return"Show pagination"},formatPaginationSwitchUp:function(){return"Hide pagination"},formatRefresh:function(){return"רענן"},formatToggle:function(){return"החלף תצוגה"},formatToggleOn:function(){return"Show card view"},formatToggleOff:function(){return"Hide card view"},formatColumns:function(){return"עמודות"},formatColumnsToggleAll:function(){return"Toggle all"},formatFullscreen:function(){return"Fullscreen"},formatAllRows:function(){return"הכל"},formatAutoRefresh:function(){return"Auto Refresh"},formatExport:function(){return"Export data"},formatJumpTo:function(){return"GO"},formatAdvancedSearch:function(){return"Advanced search"},formatAdvancedCloseButton:function(){return"Close"}},t.extend(t.fn.bootstrapTable.defaults,t.fn.bootstrapTable.locales["he-IL"]),t.fn.bootstrapTable.locales["hr-HR"]={formatLoadingMessage:function(){return"Molimo pričekajte"},formatRecordsPerPage:function(t){return"".concat(t," broj zapisa po stranici")},formatShowingRows:function(t,n,o,r){return void 0!==r&&r>0&&r>o?"Prikazujem ".concat(t,". - ").concat(n,". od ukupnog broja zapisa ").concat(o," (filtered from ").concat(r," total rows)"):"Prikazujem ".concat(t,". - ").concat(n,". od ukupnog broja zapisa ").concat(o)},formatSRPaginationPreText:function(){return"previous page"},formatSRPaginationPageText:function(t){return"to page ".concat(t)},formatSRPaginationNextText:function(){return"next page"},formatDetailPagination:function(t){return"Showing ".concat(t," rows")},formatClearSearch:function(){return"Clear Search"},formatSearch:function(){return"Pretraži"},formatNoMatches:function(){return"Nije pronađen niti jedan zapis"},formatPaginationSwitch:function(){return"Prikaži/sakrij stranice"},formatPaginationSwitchDown:function(){return"Show pagination"},formatPaginationSwitchUp:function(){return"Hide pagination"},formatRefresh:function(){return"Osvježi"},formatToggle:function(){return"Promijeni prikaz"},formatToggleOn:function(){return"Show card view"},formatToggleOff:function(){return"Hide card view"},formatColumns:function(){return"Kolone"},formatColumnsToggleAll:function(){return"Toggle all"},formatFullscreen:function(){return"Fullscreen"},formatAllRows:function(){return"Sve"},formatAutoRefresh:function(){return"Auto Refresh"},formatExport:function(){return"Export data"},formatJumpTo:function(){return"GO"},formatAdvancedSearch:function(){return"Advanced search"},formatAdvancedCloseButton:function(){return"Close"}},t.extend(t.fn.bootstrapTable.defaults,t.fn.bootstrapTable.locales["hr-HR"]),t.fn.bootstrapTable.locales["hu-HU"]={formatLoadingMessage:function(){return"Betöltés, kérem várjon"},formatRecordsPerPage:function(t){return"".concat(t," rekord per oldal")},formatShowingRows:function(t,n,o,r){return void 0!==r&&r>0&&r>o?"Megjelenítve ".concat(t," - ").concat(n," / ").concat(o," összesen (filtered from ").concat(r," total rows)"):"Megjelenítve ".concat(t," - ").concat(n," / ").concat(o," összesen")},formatSRPaginationPreText:function(){return"previous page"},formatSRPaginationPageText:function(t){return"to page ".concat(t)},formatSRPaginationNextText:function(){return"next page"},formatDetailPagination:function(t){return"Showing ".concat(t," rows")},formatClearSearch:function(){return"Clear Search"},formatSearch:function(){return"Keresés"},formatNoMatches:function(){return"Nincs találat"},formatPaginationSwitch:function(){return"Lapozó elrejtése/megjelenítése"},formatPaginationSwitchDown:function(){return"Show pagination"},formatPaginationSwitchUp:function(){return"Hide pagination"},formatRefresh:function(){return"Frissítés"},formatToggle:function(){return"Összecsuk/Kinyit"},formatToggleOn:function(){return"Show card view"},formatToggleOff:function(){return"Hide card view"},formatColumns:function(){return"Oszlopok"},formatColumnsToggleAll:function(){return"Toggle all"},formatFullscreen:function(){return"Fullscreen"},formatAllRows:function(){return"Összes"},formatAutoRefresh:function(){return"Auto Refresh"},formatExport:function(){return"Export data"},formatJumpTo:function(){return"GO"},formatAdvancedSearch:function(){return"Advanced search"},formatAdvancedCloseButton:function(){return"Close"}},t.extend(t.fn.bootstrapTable.defaults,t.fn.bootstrapTable.locales["hu-HU"]),t.fn.bootstrapTable.locales["id-ID"]={formatLoadingMessage:function(){return"Memuat, mohon tunggu"},formatRecordsPerPage:function(t){return"".concat(t," baris per halaman")},formatShowingRows:function(t,n,o,r){return void 0!==r&&r>0&&r>o?"Menampilkan ".concat(t," sampai ").concat(n," dari ").concat(o," baris (filtered from ").concat(r," total rows)"):"Menampilkan ".concat(t," sampai ").concat(n," dari ").concat(o," baris")},formatSRPaginationPreText:function(){return"previous page"},formatSRPaginationPageText:function(t){return"to page ".concat(t)},formatSRPaginationNextText:function(){return"next page"},formatDetailPagination:function(t){return"Showing ".concat(t," rows")},formatClearSearch:function(){return"Bersihkan filter"},formatSearch:function(){return"Pencarian"},formatNoMatches:function(){return"Tidak ditemukan data yang cocok"},formatPaginationSwitch:function(){return"Sembunyikan/Tampilkan halaman"},formatPaginationSwitchDown:function(){return"Show pagination"},formatPaginationSwitchUp:function(){return"Hide pagination"},formatRefresh:function(){return"Muat ulang"},formatToggle:function(){return"Beralih"},formatToggleOn:function(){return"Show card view"},formatToggleOff:function(){return"Hide card view"},formatColumns:function(){return"kolom"},formatColumnsToggleAll:function(){return"Toggle all"},formatFullscreen:function(){return"Fullscreen"},formatAllRows:function(){return"Semua"},formatAutoRefresh:function(){return"Auto Refresh"},formatExport:function(){return"Ekspor data"},formatJumpTo:function(){return"GO"},formatAdvancedSearch:function(){return"Advanced search"},formatAdvancedCloseButton:function(){return"Close"}},t.extend(t.fn.bootstrapTable.defaults,t.fn.bootstrapTable.locales["id-ID"]),t.fn.bootstrapTable.locales["it-IT"]={formatLoadingMessage:function(){return"Caricamento in corso"},formatRecordsPerPage:function(t){return"".concat(t," elementi per pagina")},formatShowingRows:function(t,n,o,r){return void 0!==r&&r>0&&r>o?"Visualizzazione da ".concat(t," a ").concat(n," di ").concat(o," elementi (filtered from ").concat(r," total rows)"):"Visualizzazione da ".concat(t," a ").concat(n," di ").concat(o," elementi")},formatSRPaginationPreText:function(){return"previous page"},formatSRPaginationPageText:function(t){return"to page ".concat(t)},formatSRPaginationNextText:function(){return"next page"},formatDetailPagination:function(t){return"Showing ".concat(t," rows")},formatClearSearch:function(){return"Pulisci filtri"},formatSearch:function(){return"Cerca"},formatNoMatches:function(){return"Nessun elemento trovato"},formatPaginationSwitch:function(){return"Nascondi/Mostra paginazione"},formatPaginationSwitchDown:function(){return"Show pagination"},formatPaginationSwitchUp:function(){return"Hide pagination"},formatRefresh:function(){return"Aggiorna"},formatToggle:function(){return"Attiva/Disattiva"},formatToggleOn:function(){return"Show card view"},formatToggleOff:function(){return"Hide card view"},formatColumns:function(){return"Colonne"},formatColumnsToggleAll:function(){return"Toggle all"},formatFullscreen:function(){return"Fullscreen"},formatAllRows:function(){return"Tutto"},formatAutoRefresh:function(){return"Auto Refresh"},formatExport:function(){return"Esporta dati"},formatJumpTo:function(){return"GO"},formatAdvancedSearch:function(){return"Advanced search"},formatAdvancedCloseButton:function(){return"Close"}},t.extend(t.fn.bootstrapTable.defaults,t.fn.bootstrapTable.locales["it-IT"]),t.fn.bootstrapTable.locales["ja-JP"]={formatLoadingMessage:function(){return"読み込み中です。少々お待ちください。"},formatRecordsPerPage:function(t){return"ページ当たり最大".concat(t,"件")},formatShowingRows:function(t,n,o,r){return void 0!==r&&r>0&&r>o?"全".concat(o,"件から、").concat(t,"から").concat(n,"件目まで表示しています (filtered from ").concat(r," total rows)"):"全".concat(o,"件から、").concat(t,"から").concat(n,"件目まで表示しています")},formatSRPaginationPreText:function(){return"previous page"},formatSRPaginationPageText:function(t){return"to page ".concat(t)},formatSRPaginationNextText:function(){return"next page"},formatDetailPagination:function(t){return"Showing ".concat(t," rows")},formatClearSearch:function(){return"Clear Search"},formatSearch:function(){return"検索"},formatNoMatches:function(){return"該当するレコードが見つかりません"},formatPaginationSwitch:function(){return"ページ数を表示・非表示"},formatPaginationSwitchDown:function(){return"Show pagination"},formatPaginationSwitchUp:function(){return"Hide pagination"},formatRefresh:function(){return"更新"},formatToggle:function(){return"トグル"},formatToggleOn:function(){return"Show card view"},formatToggleOff:function(){return"Hide card view"},formatColumns:function(){return"列"},formatColumnsToggleAll:function(){return"Toggle all"},formatFullscreen:function(){return"Fullscreen"},formatAllRows:function(){return"すべて"},formatAutoRefresh:function(){return"Auto Refresh"},formatExport:function(){return"Export data"},formatJumpTo:function(){return"GO"},formatAdvancedSearch:function(){return"Advanced search"},formatAdvancedCloseButton:function(){return"Close"}},t.extend(t.fn.bootstrapTable.defaults,t.fn.bootstrapTable.locales["ja-JP"]),t.fn.bootstrapTable.locales["ka-GE"]={formatLoadingMessage:function(){return"იტვირთება, გთხოვთ მოიცადოთ"},formatRecordsPerPage:function(t){return"".concat(t," ჩანაწერი თითო გვერდზე")},formatShowingRows:function(t,n,o,r){return void 0!==r&&r>0&&r>o?"ნაჩვენებია ".concat(t,"-დან ").concat(n,"-მდე ჩანაწერი ჯამური ").concat(o,"-დან (filtered from ").concat(r," total rows)"):"ნაჩვენებია ".concat(t,"-დან ").concat(n,"-მდე ჩანაწერი ჯამური ").concat(o,"-დან")},formatSRPaginationPreText:function(){return"previous page"},formatSRPaginationPageText:function(t){return"to page ".concat(t)},formatSRPaginationNextText:function(){return"next page"},formatDetailPagination:function(t){return"Showing ".concat(t," rows")},formatClearSearch:function(){return"Clear Search"},formatSearch:function(){return"ძებნა"},formatNoMatches:function(){return"მონაცემები არ არის"},formatPaginationSwitch:function(){return"გვერდების გადამრთველის დამალვა/გამოჩენა"},formatPaginationSwitchDown:function(){return"Show pagination"},formatPaginationSwitchUp:function(){return"Hide pagination"},formatRefresh:function(){return"განახლება"},formatToggle:function(){return"ჩართვა/გამორთვა"},formatToggleOn:function(){return"Show card view"},formatToggleOff:function(){return"Hide card view"},formatColumns:function(){return"სვეტები"},formatColumnsToggleAll:function(){return"Toggle all"},formatFullscreen:function(){return"Fullscreen"},formatAllRows:function(){return"All"},formatAutoRefresh:function(){return"Auto Refresh"},formatExport:function(){return"Export data"},formatJumpTo:function(){return"GO"},formatAdvancedSearch:function(){return"Advanced search"},formatAdvancedCloseButton:function(){return"Close"}},t.extend(t.fn.bootstrapTable.defaults,t.fn.bootstrapTable.locales["ka-GE"]),t.fn.bootstrapTable.locales["ko-KR"]={formatLoadingMessage:function(){return"데이터를 불러오는 중입니다"},formatRecordsPerPage:function(t){return"페이지 당 ".concat(t,"개 데이터 출력")},formatShowingRows:function(t,n,o,r){return void 0!==r&&r>0&&r>o?"전체 ".concat(o,"개 중 ").concat(t,"~").concat(n,"번째 데이터 출력, (filtered from ").concat(r," total rows)"):"전체 ".concat(o,"개 중 ").concat(t,"~").concat(n,"번째 데이터 출력,")},formatSRPaginationPreText:function(){return"previous page"},formatSRPaginationPageText:function(t){return"to page ".concat(t)},formatSRPaginationNextText:function(){return"next page"},formatDetailPagination:function(t){return"Showing ".concat(t," rows")},formatClearSearch:function(){return"Clear Search"},formatSearch:function(){return"검색"},formatNoMatches:function(){return"조회된 데이터가 없습니다."},formatPaginationSwitch:function(){return"Hide/Show pagination"},formatPaginationSwitchDown:function(){return"Show pagination"},formatPaginationSwitchUp:function(){return"Hide pagination"},formatRefresh:function(){return"새로 고침"},formatToggle:function(){return"전환"},formatToggleOn:function(){return"Show card view"},formatToggleOff:function(){return"Hide card view"},formatColumns:function(){return"컬럼 필터링"},formatColumnsToggleAll:function(){return"Toggle all"},formatFullscreen:function(){return"Fullscreen"},formatAllRows:function(){return"All"},formatAutoRefresh:function(){return"Auto Refresh"},formatExport:function(){return"Export data"},formatJumpTo:function(){return"GO"},formatAdvancedSearch:function(){return"Advanced search"},formatAdvancedCloseButton:function(){return"Close"}},t.extend(t.fn.bootstrapTable.defaults,t.fn.bootstrapTable.locales["ko-KR"]),t.fn.bootstrapTable.locales["ms-MY"]={formatLoadingMessage:function(){return"Permintaan sedang dimuatkan. Sila tunggu sebentar"},formatRecordsPerPage:function(t){return"".concat(t," rekod setiap muka surat")},formatShowingRows:function(t,n,o,r){return void 0!==r&&r>0&&r>o?"Sedang memaparkan rekod ".concat(t," hingga ").concat(n," daripada jumlah ").concat(o," rekod (filtered from ").concat(r," total rows)"):"Sedang memaparkan rekod ".concat(t," hingga ").concat(n," daripada jumlah ").concat(o," rekod")},formatSRPaginationPreText:function(){return"previous page"},formatSRPaginationPageText:function(t){return"to page ".concat(t)},formatSRPaginationNextText:function(){return"next page"},formatDetailPagination:function(t){return"Showing ".concat(t," rows")},formatClearSearch:function(){return"Clear Search"},formatSearch:function(){return"Cari"},formatNoMatches:function(){return"Tiada rekod yang menyamai permintaan"},formatPaginationSwitch:function(){return"Tunjuk/sembunyi muka surat"},formatPaginationSwitchDown:function(){return"Show pagination"},formatPaginationSwitchUp:function(){return"Hide pagination"},formatRefresh:function(){return"Muatsemula"},formatToggle:function(){return"Tukar"},formatToggleOn:function(){return"Show card view"},formatToggleOff:function(){return"Hide card view"},formatColumns:function(){return"Lajur"},formatColumnsToggleAll:function(){return"Toggle all"},formatFullscreen:function(){return"Fullscreen"},formatAllRows:function(){return"Semua"},formatAutoRefresh:function(){return"Auto Refresh"},formatExport:function(){return"Export data"},formatJumpTo:function(){return"GO"},formatAdvancedSearch:function(){return"Advanced search"},formatAdvancedCloseButton:function(){return"Close"}},t.extend(t.fn.bootstrapTable.defaults,t.fn.bootstrapTable.locales["ms-MY"]),t.fn.bootstrapTable.locales["nb-NO"]={formatLoadingMessage:function(){return"Oppdaterer, vennligst vent"},formatRecordsPerPage:function(t){return"".concat(t," poster pr side")},formatShowingRows:function(t,n,o,r){return void 0!==r&&r>0&&r>o?"Viser ".concat(t," til ").concat(n," av ").concat(o," rekker (filtered from ").concat(r," total rows)"):"Viser ".concat(t," til ").concat(n," av ").concat(o," rekker")},formatSRPaginationPreText:function(){return"previous page"},formatSRPaginationPageText:function(t){return"to page ".concat(t)},formatSRPaginationNextText:function(){return"next page"},formatDetailPagination:function(t){return"Showing ".concat(t," rows")},formatClearSearch:function(){return"Clear Search"},formatSearch:function(){return"Søk"},formatNoMatches:function(){return"Ingen poster funnet"},formatPaginationSwitch:function(){return"Hide/Show pagination"},formatPaginationSwitchDown:function(){return"Show pagination"},formatPaginationSwitchUp:function(){return"Hide pagination"},formatRefresh:function(){return"Oppdater"},formatToggle:function(){return"Endre"},formatToggleOn:function(){return"Show card view"},formatToggleOff:function(){return"Hide card view"},formatColumns:function(){return"Kolonner"},formatColumnsToggleAll:function(){return"Toggle all"},formatFullscreen:function(){return"Fullscreen"},formatAllRows:function(){return"All"},formatAutoRefresh:function(){return"Auto Refresh"},formatExport:function(){return"Export data"},formatJumpTo:function(){return"GO"},formatAdvancedSearch:function(){return"Advanced search"},formatAdvancedCloseButton:function(){return"Close"}},t.extend(t.fn.bootstrapTable.defaults,t.fn.bootstrapTable.locales["nb-NO"]),t.fn.bootstrapTable.locales["nl-BE"]={formatLoadingMessage:function(){return"Laden, even geduld"},formatRecordsPerPage:function(t){return"".concat(t," records per pagina")},formatShowingRows:function(t,n,o,r){return void 0!==r&&r>0&&r>o?"Toon ".concat(t," tot ").concat(n," van ").concat(o," record").concat(o>1?"s":""," (gefilterd van ").concat(r," records in totaal)"):"Toon ".concat(t," tot ").concat(n," van ").concat(o," record").concat(o>1?"s":"")},formatSRPaginationPreText:function(){return"vorige pagina"},formatSRPaginationPageText:function(t){return"tot pagina ".concat(t)},formatSRPaginationNextText:function(){return"volgende pagina"},formatDetailPagination:function(t){return"Toon ".concat(t," record").concat(t>1?"s":"")},formatClearSearch:function(){return"Verwijder filters"},formatSearch:function(){return"Zoeken"},formatNoMatches:function(){return"Geen resultaten gevonden"},formatPaginationSwitch:function(){return"Verberg/Toon paginering"},formatPaginationSwitchDown:function(){return"Toon paginering"},formatPaginationSwitchUp:function(){return"Verberg paginering"},formatRefresh:function(){return"Vernieuwen"},formatToggle:function(){return"Omschakelen"},formatToggleOn:function(){return"Toon kaartweergave"},formatToggleOff:function(){return"Verberg kaartweergave"},formatColumns:function(){return"Kolommen"},formatColumnsToggleAll:function(){return"Allen omschakelen"},formatFullscreen:function(){return"Volledig scherm"},formatAllRows:function(){return"Alle"},formatAutoRefresh:function(){return"Automatisch vernieuwen"},formatExport:function(){return"Exporteer gegevens"},formatJumpTo:function(){return"GA"},formatAdvancedSearch:function(){return"Geavanceerd zoeken"},formatAdvancedCloseButton:function(){return"Sluiten"}},t.extend(t.fn.bootstrapTable.defaults,t.fn.bootstrapTable.locales["nl-BE"]),t.fn.bootstrapTable.locales["nl-NL"]={formatLoadingMessage:function(){return"Laden, even geduld"},formatRecordsPerPage:function(t){return"".concat(t," records per pagina")},formatShowingRows:function(t,n,o,r){return void 0!==r&&r>0&&r>o?"Toon ".concat(t," tot ").concat(n," van ").concat(o," record").concat(o>1?"s":""," (gefilterd van ").concat(r," records in totaal)"):"Toon ".concat(t," tot ").concat(n," van ").concat(o," record").concat(o>1?"s":"")},formatSRPaginationPreText:function(){return"vorige pagina"},formatSRPaginationPageText:function(t){return"tot pagina ".concat(t)},formatSRPaginationNextText:function(){return"volgende pagina"},formatDetailPagination:function(t){return"Toon ".concat(t," record").concat(t>1?"s":"")},formatClearSearch:function(){return"Verwijder filters"},formatSearch:function(){return"Zoeken"},formatNoMatches:function(){return"Geen resultaten gevonden"},formatPaginationSwitch:function(){return"Verberg/Toon paginering"},formatPaginationSwitchDown:function(){return"Toon paginering"},formatPaginationSwitchUp:function(){return"Verberg paginering"},formatRefresh:function(){return"Vernieuwen"},formatToggle:function(){return"Omschakelen"},formatToggleOn:function(){return"Toon kaartweergave"},formatToggleOff:function(){return"Verberg kaartweergave"},formatColumns:function(){return"Kolommen"},formatColumnsToggleAll:function(){return"Allen omschakelen"},formatFullscreen:function(){return"Volledig scherm"},formatAllRows:function(){return"Alle"},formatAutoRefresh:function(){return"Automatisch vernieuwen"},formatExport:function(){return"Exporteer gegevens"},formatJumpTo:function(){return"GA"},formatAdvancedSearch:function(){return"Geavanceerd zoeken"},formatAdvancedCloseButton:function(){return"Sluiten"}},t.extend(t.fn.bootstrapTable.defaults,t.fn.bootstrapTable.locales["nl-NL"]),t.fn.bootstrapTable.locales["pl-PL"]={formatLoadingMessage:function(){return"Ładowanie, proszę czekać"},formatRecordsPerPage:function(t){return"".concat(t," rekordów na stronę")},formatShowingRows:function(t,n,o,r){return void 0!==r&&r>0&&r>o?"Wyświetlanie rekordów od ".concat(t," do ").concat(n," z ").concat(o," (filtered from ").concat(r," total rows)"):"Wyświetlanie rekordów od ".concat(t," do ").concat(n," z ").concat(o)},formatSRPaginationPreText:function(){return"previous page"},formatSRPaginationPageText:function(t){return"to page ".concat(t)},formatSRPaginationNextText:function(){return"next page"},formatDetailPagination:function(t){return"Showing ".concat(t," rows")},formatClearSearch:function(){return"Clear Search"},formatSearch:function(){return"Szukaj"},formatNoMatches:function(){return"Niestety, nic nie znaleziono"},formatPaginationSwitch:function(){return"Hide/Show pagination"},formatPaginationSwitchDown:function(){return"Show pagination"},formatPaginationSwitchUp:function(){return"Hide pagination"},formatRefresh:function(){return"Odśwież"},formatToggle:function(){return"Przełącz"},formatToggleOn:function(){return"Show card view"},formatToggleOff:function(){return"Hide card view"},formatColumns:function(){return"Kolumny"},formatColumnsToggleAll:function(){return"Toggle all"},formatFullscreen:function(){return"Fullscreen"},formatAllRows:function(){return"All"},formatAutoRefresh:function(){return"Auto Refresh"},formatExport:function(){return"Export data"},formatJumpTo:function(){return"GO"},formatAdvancedSearch:function(){return"Advanced search"},formatAdvancedCloseButton:function(){return"Close"}},t.extend(t.fn.bootstrapTable.defaults,t.fn.bootstrapTable.locales["pl-PL"]),t.fn.bootstrapTable.locales["pt-BR"]={formatLoadingMessage:function(){return"Carregando, aguarde"},formatRecordsPerPage:function(t){return"".concat(t," registros por página")},formatShowingRows:function(t,n,o,r){return void 0!==r&&r>0&&r>o?"Exibindo ".concat(t," até ").concat(n," de ").concat(o," linhas (filtered from ").concat(r," total rows)"):"Exibindo ".concat(t," até ").concat(n," de ").concat(o," linhas")},formatSRPaginationPreText:function(){return"página anterior"},formatSRPaginationPageText:function(t){return"Para a página ".concat(t)},formatSRPaginationNextText:function(){return"próxima página"},formatDetailPagination:function(t){return"Mostrando ".concat(t," linhas")},formatClearSearch:function(){return"Limpar Pasquisa"},formatSearch:function(){return"Pesquisar"},formatNoMatches:function(){return"Nenhum registro encontrado"},formatPaginationSwitch:function(){return"Ocultar/Exibir paginação"},formatPaginationSwitchDown:function(){return"Mostrar Paginação"},formatPaginationSwitchUp:function(){return"Esconder Paginação"},formatRefresh:function(){return"Recarregar"},formatToggle:function(){return"Alternar"},formatToggleOn:function(){return"Show card view"},formatToggleOff:function(){return"Hide card view"},formatColumns:function(){return"Colunas"},formatColumnsToggleAll:function(){return"Toggle all"},formatFullscreen:function(){return"Tela cheia"},formatAllRows:function(){return"Tudo"},formatAutoRefresh:function(){return"Atualização Automática"},formatExport:function(){return"Exportar dados"},formatJumpTo:function(){return"IR"},formatAdvancedSearch:function(){return"Pesquisa Avançada"},formatAdvancedCloseButton:function(){return"Fechar"}},t.extend(t.fn.bootstrapTable.defaults,t.fn.bootstrapTable.locales["pt-BR"]),t.fn.bootstrapTable.locales["pt-PT"]={formatLoadingMessage:function(){return"A carregar, por favor aguarde"},formatRecordsPerPage:function(t){return"".concat(t," registos por p&aacute;gina")},formatShowingRows:function(t,n,o,r){return void 0!==r&&r>0&&r>o?"A mostrar ".concat(t," at&eacute; ").concat(n," de ").concat(o," linhas (filtered from ").concat(r," total rows)"):"A mostrar ".concat(t," at&eacute; ").concat(n," de ").concat(o," linhas")},formatSRPaginationPreText:function(){return"previous page"},formatSRPaginationPageText:function(t){return"to page ".concat(t)},formatSRPaginationNextText:function(){return"next page"},formatDetailPagination:function(t){return"Showing ".concat(t," rows")},formatClearSearch:function(){return"Clear Search"},formatSearch:function(){return"Pesquisa"},formatNoMatches:function(){return"Nenhum registo encontrado"},formatPaginationSwitch:function(){return"Esconder/Mostrar pagina&ccedil&atilde;o"},formatPaginationSwitchDown:function(){return"Show pagination"},formatPaginationSwitchUp:function(){return"Hide pagination"},formatRefresh:function(){return"Atualizar"},formatToggle:function(){return"Alternar"},formatToggleOn:function(){return"Show card view"},formatToggleOff:function(){return"Hide card view"},formatColumns:function(){return"Colunas"},formatColumnsToggleAll:function(){return"Toggle all"},formatFullscreen:function(){return"Fullscreen"},formatAllRows:function(){return"Tudo"},formatAutoRefresh:function(){return"Auto Refresh"},formatExport:function(){return"Export data"},formatJumpTo:function(){return"GO"},formatAdvancedSearch:function(){return"Advanced search"},formatAdvancedCloseButton:function(){return"Close"}},t.extend(t.fn.bootstrapTable.defaults,t.fn.bootstrapTable.locales["pt-PT"]),t.fn.bootstrapTable.locales["ro-RO"]={formatLoadingMessage:function(){return"Se incarca, va rugam asteptati"},formatRecordsPerPage:function(t){return"".concat(t," inregistrari pe pagina")},formatShowingRows:function(t,n,o,r){return void 0!==r&&r>0&&r>o?"Arata de la ".concat(t," pana la ").concat(n," din ").concat(o," randuri (filtered from ").concat(r," total rows)"):"Arata de la ".concat(t," pana la ").concat(n," din ").concat(o," randuri")},formatSRPaginationPreText:function(){return"previous page"},formatSRPaginationPageText:function(t){return"to page ".concat(t)},formatSRPaginationNextText:function(){return"next page"},formatDetailPagination:function(t){return"Showing ".concat(t," rows")},formatClearSearch:function(){return"Clear Search"},formatSearch:function(){return"Cauta"},formatNoMatches:function(){return"Nu au fost gasite inregistrari"},formatPaginationSwitch:function(){return"Ascunde/Arata paginatia"},formatPaginationSwitchDown:function(){return"Show pagination"},formatPaginationSwitchUp:function(){return"Hide pagination"},formatRefresh:function(){return"Reincarca"},formatToggle:function(){return"Comuta"},formatToggleOn:function(){return"Show card view"},formatToggleOff:function(){return"Hide card view"},formatColumns:function(){return"Coloane"},formatColumnsToggleAll:function(){return"Toggle all"},formatFullscreen:function(){return"Fullscreen"},formatAllRows:function(){return"Toate"},formatAutoRefresh:function(){return"Auto Refresh"},formatExport:function(){return"Export data"},formatJumpTo:function(){return"GO"},formatAdvancedSearch:function(){return"Advanced search"},formatAdvancedCloseButton:function(){return"Close"}},t.extend(t.fn.bootstrapTable.defaults,t.fn.bootstrapTable.locales["ro-RO"]),t.fn.bootstrapTable.locales["ru-RU"]={formatLoadingMessage:function(){return"Пожалуйста, подождите, идёт загрузка"},formatRecordsPerPage:function(t){return"".concat(t," записей на страницу")},formatShowingRows:function(t,n,o,r){return void 0!==r&&r>0&&r>o?"Записи с ".concat(t," по ").concat(n," из ").concat(o," (filtered from ").concat(r," total rows)"):"Записи с ".concat(t," по ").concat(n," из ").concat(o)},formatSRPaginationPreText:function(){return"предыдущая страница"},formatSRPaginationPageText:function(t){return"на страницу ".concat(t)},formatSRPaginationNextText:function(){return"следущая страница"},formatDetailPagination:function(t){return"Showing ".concat(t," rows")},formatClearSearch:function(){return"Очистить фильтры"},formatSearch:function(){return"Поиск"},formatNoMatches:function(){return"Ничего не найдено"},formatPaginationSwitch:function(){return"Скрыть/Показать нумерацию страниц"},formatPaginationSwitchDown:function(){return"Показать пагинацию"},formatPaginationSwitchUp:function(){return"Скрыть пагинацию"},formatRefresh:function(){return"Обновить"},formatToggle:function(){return"Переключить"},formatToggleOn:function(){return"Show card view"},formatToggleOff:function(){return"Hide card view"},formatColumns:function(){return"Колонки"},formatColumnsToggleAll:function(){return"Toggle all"},formatFullscreen:function(){return"Полноэкранный"},formatAllRows:function(){return"Все"},formatAutoRefresh:function(){return"Авто обновление"},formatExport:function(){return"Экспорт данных"},formatJumpTo:function(){return"GO"},formatAdvancedSearch:function(){return"Расширенный поиск"},formatAdvancedCloseButton:function(){return"Закрыть"}},t.extend(t.fn.bootstrapTable.defaults,t.fn.bootstrapTable.locales["ru-RU"]),t.fn.bootstrapTable.locales["sk-SK"]={formatLoadingMessage:function(){return"Prosím čakajte"},formatRecordsPerPage:function(t){return"".concat(t," záznamov na stranu")},formatShowingRows:function(t,n,o,r){return void 0!==r&&r>0&&r>o?"Zobrazená ".concat(t,". - ").concat(n,". položka z celkových ").concat(o," (filtered from ").concat(r," total rows)"):"Zobrazená ".concat(t,". - ").concat(n,". položka z celkových ").concat(o)},formatSRPaginationPreText:function(){return"previous page"},formatSRPaginationPageText:function(t){return"to page ".concat(t)},formatSRPaginationNextText:function(){return"next page"},formatDetailPagination:function(t){return"Showing ".concat(t," rows")},formatClearSearch:function(){return"Odstráň filtre"},formatSearch:function(){return"Vyhľadávanie"},formatNoMatches:function(){return"Nenájdená žiadna vyhovujúca položka"},formatPaginationSwitch:function(){return"Skry/Zobraz stránkovanie"},formatPaginationSwitchDown:function(){return"Show pagination"},formatPaginationSwitchUp:function(){return"Hide pagination"},formatRefresh:function(){return"Obnoviť"},formatToggle:function(){return"Prepni"},formatToggleOn:function(){return"Show card view"},formatToggleOff:function(){return"Hide card view"},formatColumns:function(){return"Stĺpce"},formatColumnsToggleAll:function(){return"Toggle all"},formatFullscreen:function(){return"Fullscreen"},formatAllRows:function(){return"Všetky"},formatAutoRefresh:function(){return"Auto Refresh"},formatExport:function(){return"Exportuj dáta"},formatJumpTo:function(){return"GO"},formatAdvancedSearch:function(){return"Advanced search"},formatAdvancedCloseButton:function(){return"Close"}},t.extend(t.fn.bootstrapTable.defaults,t.fn.bootstrapTable.locales["sk-SK"]),t.fn.bootstrapTable.locales["sr-Cyrl-RS"]={formatLoadingMessage:function(){return"Молим сачекај"},formatRecordsPerPage:function(t){return"".concat(t," редова по страни")},formatShowingRows:function(t,n,o,r){return void 0!==r&&r>0&&r>o?"Приказано ".concat(t,". - ").concat(n,". од укупног броја редова ").concat(o," (филтрирано од ").concat(r,")"):"Приказано ".concat(t,". - ").concat(n,". од укупног броја редова ").concat(o)},formatSRPaginationPreText:function(){return"претходна страна"},formatSRPaginationPageText:function(t){return"на страну ".concat(t)},formatSRPaginationNextText:function(){return"следећа страна"},formatDetailPagination:function(t){return"Приказано ".concat(t," редова")},formatClearSearch:function(){return"Обриши претрагу"},formatSearch:function(){return"Пронађи"},formatNoMatches:function(){return"Није пронађен ни један податак"},formatPaginationSwitch:function(){return"Прикажи/сакриј пагинацију"},formatPaginationSwitchDown:function(){return"Прикажи пагинацију"},formatPaginationSwitchUp:function(){return"Сакриј пагинацију"},formatRefresh:function(){return"Освежи"},formatToggle:function(){return"Промени приказ"},formatToggleOn:function(){return"Прикажи картице"},formatToggleOff:function(){return"Сакриј картице"},formatColumns:function(){return"Колоне"},formatColumnsToggleAll:function(){return"Прикажи/сакриј све"},formatFullscreen:function(){return"Цео екран"},formatAllRows:function(){return"Све"},formatAutoRefresh:function(){return"Аутоматско освежавање"},formatExport:function(){return"Извези податке"},formatJumpTo:function(){return"Иди"},formatAdvancedSearch:function(){return"Напредна претрага"},formatAdvancedCloseButton:function(){return"Затвори"}},t.extend(t.fn.bootstrapTable.defaults,t.fn.bootstrapTable.locales["sr-Cyrl-RS"]),t.fn.bootstrapTable.locales["sr-Latn-RS"]={formatLoadingMessage:function(){return"Molim sačekaj"},formatRecordsPerPage:function(t){return"".concat(t," redova po strani")},formatShowingRows:function(t,n,o,r){return void 0!==r&&r>0&&r>o?"Prikazano ".concat(t,". - ").concat(n,". od ukupnog broja redova ").concat(o," (filtrirano od ").concat(r,")"):"Prikazano ".concat(t,". - ").concat(n,". od ukupnog broja redova ").concat(o)},formatSRPaginationPreText:function(){return"prethodna strana"},formatSRPaginationPageText:function(t){return"na stranu ".concat(t)},formatSRPaginationNextText:function(){return"sledeća strana"},formatDetailPagination:function(t){return"Prikazano ".concat(t," redova")},formatClearSearch:function(){return"Obriši pretragu"},formatSearch:function(){return"Pronađi"},formatNoMatches:function(){return"Nije pronađen ni jedan podatak"},formatPaginationSwitch:function(){return"Prikaži/sakrij paginaciju"},formatPaginationSwitchDown:function(){return"Prikaži paginaciju"},formatPaginationSwitchUp:function(){return"Sakrij paginaciju"},formatRefresh:function(){return"Osveži"},formatToggle:function(){return"Promeni prikaz"},formatToggleOn:function(){return"Prikaži kartice"},formatToggleOff:function(){return"Sakrij kartice"},formatColumns:function(){return"Kolone"},formatColumnsToggleAll:function(){return"Prikaži/sakrij sve"},formatFullscreen:function(){return"Ceo ekran"},formatAllRows:function(){return"Sve"},formatAutoRefresh:function(){return"Automatsko osvežavanje"},formatExport:function(){return"Izvezi podatke"},formatJumpTo:function(){return"Idi"},formatAdvancedSearch:function(){return"Napredna pretraga"},formatAdvancedCloseButton:function(){return"Zatvori"}},t.extend(t.fn.bootstrapTable.defaults,t.fn.bootstrapTable.locales["sr-Latn-RS"]),t.fn.bootstrapTable.locales["sv-SE"]={formatLoadingMessage:function(){return"Laddar, vänligen vänta"},formatRecordsPerPage:function(t){return"".concat(t," rader per sida")},formatShowingRows:function(t,n,o,r){return void 0!==r&&r>0&&r>o?"Visa ".concat(t," till ").concat(n," av ").concat(o," rader (filtered from ").concat(r," total rows)"):"Visa ".concat(t," till ").concat(n," av ").concat(o," rader")},formatSRPaginationPreText:function(){return"previous page"},formatSRPaginationPageText:function(t){return"to page ".concat(t)},formatSRPaginationNextText:function(){return"next page"},formatDetailPagination:function(t){return"Showing ".concat(t," rows")},formatClearSearch:function(){return"Clear Search"},formatSearch:function(){return"Sök"},formatNoMatches:function(){return"Inga matchande resultat funna."},formatPaginationSwitch:function(){return"Hide/Show pagination"},formatPaginationSwitchDown:function(){return"Show pagination"},formatPaginationSwitchUp:function(){return"Hide pagination"},formatRefresh:function(){return"Uppdatera"},formatToggle:function(){return"Skifta"},formatToggleOn:function(){return"Show card view"},formatToggleOff:function(){return"Hide card view"},formatColumns:function(){return"kolumn"},formatColumnsToggleAll:function(){return"Toggle all"},formatFullscreen:function(){return"Fullscreen"},formatAllRows:function(){return"All"},formatAutoRefresh:function(){return"Auto Refresh"},formatExport:function(){return"Export data"},formatJumpTo:function(){return"GO"},formatAdvancedSearch:function(){return"Advanced search"},formatAdvancedCloseButton:function(){return"Close"}},t.extend(t.fn.bootstrapTable.defaults,t.fn.bootstrapTable.locales["sv-SE"]),t.fn.bootstrapTable.locales["th-TH"]={formatLoadingMessage:function(){return"กำลังโหลดข้อมูล, กรุณารอสักครู่"},formatRecordsPerPage:function(t){return"".concat(t," รายการต่อหน้า")},formatShowingRows:function(t,n,o,r){return void 0!==r&&r>0&&r>o?"รายการที่ ".concat(t," ถึง ").concat(n," จากทั้งหมด ").concat(o," รายการ (filtered from ").concat(r," total rows)"):"รายการที่ ".concat(t," ถึง ").concat(n," จากทั้งหมด ").concat(o," รายการ")},formatSRPaginationPreText:function(){return"previous page"},formatSRPaginationPageText:function(t){return"to page ".concat(t)},formatSRPaginationNextText:function(){return"next page"},formatDetailPagination:function(t){return"Showing ".concat(t," rows")},formatClearSearch:function(){return"Clear Search"},formatSearch:function(){return"ค้นหา"},formatNoMatches:function(){return"ไม่พบรายการที่ค้นหา !"},formatPaginationSwitch:function(){return"Hide/Show pagination"},formatPaginationSwitchDown:function(){return"Show pagination"},formatPaginationSwitchUp:function(){return"Hide pagination"},formatRefresh:function(){return"รีเฟรส"},formatToggle:function(){return"สลับมุมมอง"},formatToggleOn:function(){return"Show card view"},formatToggleOff:function(){return"Hide card view"},formatColumns:function(){return"คอลัมน์"},formatColumnsToggleAll:function(){return"Toggle all"},formatFullscreen:function(){return"Fullscreen"},formatAllRows:function(){return"All"},formatAutoRefresh:function(){return"Auto Refresh"},formatExport:function(){return"Export data"},formatJumpTo:function(){return"GO"},formatAdvancedSearch:function(){return"Advanced search"},formatAdvancedCloseButton:function(){return"Close"}},t.extend(t.fn.bootstrapTable.defaults,t.fn.bootstrapTable.locales["th-TH"]),t.fn.bootstrapTable.locales["tr-TR"]={formatLoadingMessage:function(){return"Yükleniyor, lütfen bekleyin"},formatRecordsPerPage:function(t){return"Sayfa başına ".concat(t," kayıt.")},formatShowingRows:function(t,n,o,r){return void 0!==r&&r>0&&r>o?"".concat(o," kayıttan ").concat(t,"-").concat(n," arası gösteriliyor (filtered from ").concat(r," total rows)."):"".concat(o," kayıttan ").concat(t,"-").concat(n," arası gösteriliyor.")},formatSRPaginationPreText:function(){return"previous page"},formatSRPaginationPageText:function(t){return"to page ".concat(t)},formatSRPaginationNextText:function(){return"next page"},formatDetailPagination:function(t){return"Showing ".concat(t," rows")},formatClearSearch:function(){return"Clear Search"},formatSearch:function(){return"Ara"},formatNoMatches:function(){return"Eşleşen kayıt bulunamadı."},formatPaginationSwitch:function(){return"Hide/Show pagination"},formatPaginationSwitchDown:function(){return"Show pagination"},formatPaginationSwitchUp:function(){return"Hide pagination"},formatRefresh:function(){return"Yenile"},formatToggle:function(){return"Değiştir"},formatToggleOn:function(){return"Show card view"},formatToggleOff:function(){return"Hide card view"},formatColumns:function(){return"Sütunlar"},formatColumnsToggleAll:function(){return"Toggle all"},formatFullscreen:function(){return"Fullscreen"},formatAllRows:function(){return"Tüm Satırlar"},formatAutoRefresh:function(){return"Auto Refresh"},formatExport:function(){return"Export data"},formatJumpTo:function(){return"GO"},formatAdvancedSearch:function(){return"Advanced search"},formatAdvancedCloseButton:function(){return"Close"}},t.extend(t.fn.bootstrapTable.defaults,t.fn.bootstrapTable.locales["tr-TR"]),t.fn.bootstrapTable.locales["uk-UA"]={formatLoadingMessage:function(){return"Завантаження, будь ласка, зачекайте"},formatRecordsPerPage:function(t){return"".concat(t," записів на сторінку")},formatShowingRows:function(t,n,o,r){return void 0!==r&&r>0&&r>o?"Показано з ".concat(t," по ").concat(n,". Всього: ").concat(o," (filtered from ").concat(r," total rows)"):"Показано з ".concat(t," по ").concat(n,". Всього: ").concat(o)},formatSRPaginationPreText:function(){return"previous page"},formatSRPaginationPageText:function(t){return"to page ".concat(t)},formatSRPaginationNextText:function(){return"next page"},formatDetailPagination:function(t){return"Showing ".concat(t," rows")},formatClearSearch:function(){return"Очистити фільтри"},formatSearch:function(){return"Пошук"},formatNoMatches:function(){return"Не знайдено жодного запису"},formatPaginationSwitch:function(){return"Hide/Show pagination"},formatPaginationSwitchDown:function(){return"Show pagination"},formatPaginationSwitchUp:function(){return"Hide pagination"},formatRefresh:function(){return"Оновити"},formatToggle:function(){return"Змінити"},formatToggleOn:function(){return"Show card view"},formatToggleOff:function(){return"Hide card view"},formatColumns:function(){return"Стовпці"},formatColumnsToggleAll:function(){return"Toggle all"},formatFullscreen:function(){return"Fullscreen"},formatAllRows:function(){return"All"},formatAutoRefresh:function(){return"Auto Refresh"},formatExport:function(){return"Export data"},formatJumpTo:function(){return"GO"},formatAdvancedSearch:function(){return"Advanced search"},formatAdvancedCloseButton:function(){return"Close"}},t.extend(t.fn.bootstrapTable.defaults,t.fn.bootstrapTable.locales["uk-UA"]),t.fn.bootstrapTable.locales["ur-PK"]={formatLoadingMessage:function(){return"براۓ مہربانی انتظار کیجئے"},formatRecordsPerPage:function(t){return"".concat(t," ریکارڈز فی صفہ ")},formatShowingRows:function(t,n,o,r){return void 0!==r&&r>0&&r>o?"دیکھیں ".concat(t," سے ").concat(n," کے ").concat(o,"ریکارڈز (filtered from ").concat(r," total rows)"):"دیکھیں ".concat(t," سے ").concat(n," کے ").concat(o,"ریکارڈز")},formatSRPaginationPreText:function(){return"previous page"},formatSRPaginationPageText:function(t){return"to page ".concat(t)},formatSRPaginationNextText:function(){return"next page"},formatDetailPagination:function(t){return"Showing ".concat(t," rows")},formatClearSearch:function(){return"Clear Search"},formatSearch:function(){return"تلاش"},formatNoMatches:function(){return"کوئی ریکارڈ نہیں ملا"},formatPaginationSwitch:function(){return"Hide/Show pagination"},formatPaginationSwitchDown:function(){return"Show pagination"},formatPaginationSwitchUp:function(){return"Hide pagination"},formatRefresh:function(){return"تازہ کریں"},formatToggle:function(){return"تبدیل کریں"},formatToggleOn:function(){return"Show card view"},formatToggleOff:function(){return"Hide card view"},formatColumns:function(){return"کالم"},formatColumnsToggleAll:function(){return"Toggle all"},formatFullscreen:function(){return"Fullscreen"},formatAllRows:function(){return"All"},formatAutoRefresh:function(){return"Auto Refresh"},formatExport:function(){return"Export data"},formatJumpTo:function(){return"GO"},formatAdvancedSearch:function(){return"Advanced search"},formatAdvancedCloseButton:function(){return"Close"}},t.extend(t.fn.bootstrapTable.defaults,t.fn.bootstrapTable.locales["ur-PK"]),t.fn.bootstrapTable.locales["uz-Latn-UZ"]={formatLoadingMessage:function(){return"Yuklanyapti, iltimos kuting"},formatRecordsPerPage:function(t){return"".concat(t," qator har sahifada")},formatShowingRows:function(t,n,o,r){return void 0!==r&&r>0&&r>o?"Ko'rsatypati ".concat(t," dan ").concat(n," gacha ").concat(o," qatorlarni (filtered from ").concat(r," total rows)"):"Ko'rsatypati ".concat(t," dan ").concat(n," gacha ").concat(o," qatorlarni")},formatSRPaginationPreText:function(){return"previous page"},formatSRPaginationPageText:function(t){return"to page ".concat(t)},formatSRPaginationNextText:function(){return"next page"},formatDetailPagination:function(t){return"Showing ".concat(t," rows")},formatClearSearch:function(){return"Filtrlarni tozalash"},formatSearch:function(){return"Qidirish"},formatNoMatches:function(){return"Hech narsa topilmadi"},formatPaginationSwitch:function(){return"Sahifalashni yashirish/ko'rsatish"},formatPaginationSwitchDown:function(){return"Show pagination"},formatPaginationSwitchUp:function(){return"Hide pagination"},formatRefresh:function(){return"Yangilash"},formatToggle:function(){return"Ko'rinish"},formatToggleOn:function(){return"Show card view"},formatToggleOff:function(){return"Hide card view"},formatColumns:function(){return"Ustunlar"},formatColumnsToggleAll:function(){return"Toggle all"},formatFullscreen:function(){return"Fullscreen"},formatAllRows:function(){return"Hammasi"},formatAutoRefresh:function(){return"Auto Refresh"},formatExport:function(){return"Eksport"},formatJumpTo:function(){return"GO"},formatAdvancedSearch:function(){return"Advanced search"},formatAdvancedCloseButton:function(){return"Close"}},t.extend(t.fn.bootstrapTable.defaults,t.fn.bootstrapTable.locales["uz-Latn-UZ"]),t.fn.bootstrapTable.locales["vi-VN"]={formatLoadingMessage:function(){return"Đang tải"},formatRecordsPerPage:function(t){return"".concat(t," bản ghi mỗi trang")},formatShowingRows:function(t,n,o,r){return void 0!==r&&r>0&&r>o?"Hiển thị từ trang ".concat(t," đến ").concat(n," của ").concat(o," bảng ghi (filtered from ").concat(r," total rows)"):"Hiển thị từ trang ".concat(t," đến ").concat(n," của ").concat(o," bảng ghi")},formatSRPaginationPreText:function(){return"previous page"},formatSRPaginationPageText:function(t){return"to page ".concat(t)},formatSRPaginationNextText:function(){return"next page"},formatDetailPagination:function(t){return"Showing ".concat(t," rows")},formatClearSearch:function(){return"Clear Search"},formatSearch:function(){return"Tìm kiếm"},formatNoMatches:function(){return"Không có dữ liệu"},formatPaginationSwitch:function(){return"Hide/Show pagination"},formatPaginationSwitchDown:function(){return"Show pagination"},formatPaginationSwitchUp:function(){return"Hide pagination"},formatRefresh:function(){return"Refresh"},formatToggle:function(){return"Toggle"},formatToggleOn:function(){return"Show card view"},formatToggleOff:function(){return"Hide card view"},formatColumns:function(){return"Columns"},formatColumnsToggleAll:function(){return"Toggle all"},formatFullscreen:function(){return"Fullscreen"},formatAllRows:function(){return"All"},formatAutoRefresh:function(){return"Auto Refresh"},formatExport:function(){return"Export data"},formatJumpTo:function(){return"GO"},formatAdvancedSearch:function(){return"Advanced search"},formatAdvancedCloseButton:function(){return"Close"}},t.extend(t.fn.bootstrapTable.defaults,t.fn.bootstrapTable.locales["vi-VN"]),t.fn.bootstrapTable.locales["zh-CN"]={formatLoadingMessage:function(){return"正在努力地加载数据中,请稍候"},formatRecordsPerPage:function(t){return"每页显示 ".concat(t," 条记录")},formatShowingRows:function(t,n,o,r){return void 0!==r&&r>0&&r>o?"显示第 ".concat(t," 到第 ").concat(n," 条记录,总共 ").concat(o," 条记录(从 ").concat(r," 总记录中过滤)"):"显示第 ".concat(t," 到第 ").concat(n," 条记录,总共 ").concat(o," 条记录")},formatSRPaginationPreText:function(){return"上一页"},formatSRPaginationPageText:function(t){return"第".concat(t,"页")},formatSRPaginationNextText:function(){return"下一页"},formatDetailPagination:function(t){return"总共 ".concat(t," 条记录")},formatClearSearch:function(){return"清空过滤"},formatSearch:function(){return"搜索"},formatNoMatches:function(){return"没有找到匹配的记录"},formatPaginationSwitch:function(){return"隐藏/显示分页"},formatPaginationSwitchDown:function(){return"显示分页"},formatPaginationSwitchUp:function(){return"隐藏分页"},formatRefresh:function(){return"刷新"},formatToggle:function(){return"切换"},formatToggleOn:function(){return"显示卡片视图"},formatToggleOff:function(){return"隐藏卡片视图"},formatColumns:function(){return"列"},formatColumnsToggleAll:function(){return"切换所有"},formatFullscreen:function(){return"全屏"},formatAllRows:function(){return"所有"},formatAutoRefresh:function(){return"自动刷新"},formatExport:function(){return"导出数据"},formatJumpTo:function(){return"跳转"},formatAdvancedSearch:function(){return"高级搜索"},formatAdvancedCloseButton:function(){return"关闭"}},t.extend(t.fn.bootstrapTable.defaults,t.fn.bootstrapTable.locales["zh-CN"]),t.fn.bootstrapTable.locales["zh-TW"]={formatLoadingMessage:function(){return"正在努力地載入資料,請稍候"},formatRecordsPerPage:function(t){return"每頁顯示 ".concat(t," 項記錄")},formatShowingRows:function(t,n,o,r){return void 0!==r&&r>0&&r>o?"顯示第 ".concat(t," 到第 ").concat(n," 項記錄,總共 ").concat(o," 項記錄(從 ").concat(r," 總記錄中過濾)"):"顯示第 ".concat(t," 到第 ").concat(n," 項記錄,總共 ").concat(o," 項記錄")},formatSRPaginationPreText:function(){return"上一頁"},formatSRPaginationPageText:function(t){return"第".concat(t,"頁")},formatSRPaginationNextText:function(){return"下一頁"},formatDetailPagination:function(t){return"總共 ".concat(t," 項記錄")},formatClearSearch:function(){return"清空過濾"},formatSearch:function(){return"搜尋"},formatNoMatches:function(){return"沒有找到符合的結果"},formatPaginationSwitch:function(){return"隱藏/顯示分頁"},formatPaginationSwitchDown:function(){return"顯示分頁"},formatPaginationSwitchUp:function(){return"隱藏分頁"},formatRefresh:function(){return"重新整理"},formatToggle:function(){return"切換"},formatToggleOn:function(){return"顯示卡片視圖"},formatToggleOff:function(){return"隱藏卡片視圖"},formatColumns:function(){return"列"},formatColumnsToggleAll:function(){return"切換所有"},formatFullscreen:function(){return"全屏"},formatAllRows:function(){return"所有"},formatAutoRefresh:function(){return"自動刷新"},formatExport:function(){return"導出數據"},formatJumpTo:function(){return"跳轉"},formatAdvancedSearch:function(){return"高級搜尋"},formatAdvancedCloseButton:function(){return"關閉"}},t.extend(t.fn.bootstrapTable.defaults,t.fn.bootstrapTable.locales["zh-TW"])})); \ No newline at end of file
diff --git a/fix-build-bareos.patch b/fix-build-bareos.patch
deleted file mode 100644
index e0b963be4e2e..000000000000
--- a/fix-build-bareos.patch
+++ /dev/null
@@ -1,44 +0,0 @@
---- a/core/src/droplet/libdroplet/src/utils.c 2021-04-16 00:09:37.856912334 +0300
-+++ b/core/src/droplet/libdroplet/src/utils.c 2021-04-16 00:32:28.058300432 +0300
-@@ -33,7 +33,7 @@
- */
- #include <dropletp.h>
- #include <linux/xattr.h>
--#include <attr/xattr.h>
-+#include <sys/xattr.h>
- #include <errno.h>
-
- /** @file */
---- a/core/src/droplet/libdroplet/include/droplet/cdmi/crcmodel.h 2021-04-16 17:25:43.613478257 +0300
-+++ b/core/src/droplet/libdroplet/include/droplet/cdmi/crcmodel.h 2021-04-16 17:31:53.449697759 +0300
-@@ -78,7 +78,7 @@
- #ifndef DONE_STYLE
-
- typedef unsigned long ulong;
--typedef unsigned bool;
-+/*typedef unsigned bool;*/
- typedef unsigned char * p_ubyte_;
-
- #ifndef TRUE
-@@ -107,8 +107,8 @@
- int cm_width; /* Parameter: Width in bits [8,32]. */
- ulong cm_poly; /* Parameter: The algorithm's polynomial. */
- ulong cm_init; /* Parameter: Initial register value. */
-- bool cm_refin; /* Parameter: Reflect input bytes? */
-- bool cm_refot; /* Parameter: Reflect output CRC? */
-+ _Bool cm_refin; /* Parameter: Reflect input bytes? */
-+ _Bool cm_refot; /* Parameter: Reflect output CRC? */
- ulong cm_xorot; /* Parameter: XOR this to output CRC. */
-
- ulong cm_reg; /* Context: Context during execution. */
---- a/core/src/droplet/libdroplet/src/backend/posix/reqbuilder.c 2021-04-16 17:32:41.619204579 +0300
-+++ b/core/src/droplet/libdroplet/src/backend/posix/reqbuilder.c 2021-04-16 17:33:54.938453657 +0300
-@@ -39,7 +39,7 @@
- #include <dirent.h>
- #include <sys/types.h>
- #include <linux/xattr.h>
--#include <attr/xattr.h>
-+#include <sys/xattr.h>
- #include <utime.h>
- #include <pwd.h>
- #include <grp.h>
diff --git a/fix-headlink.patch b/fix-headlink.patch
deleted file mode 100644
index 6830228d03d2..000000000000
--- a/fix-headlink.patch
+++ /dev/null
@@ -1,193 +0,0 @@
---- a/webui/vendor/zendframework/zend-view/src/Helper/HeadLink.php 2021-04-16 20:54:47.655312342 +0300
-+++ b/webui/vendor/zendframework/zend-view/src/Helper/HeadLink.php 2021-04-16 23:17:00.000000000 +0300
-@@ -13,21 +13,23 @@
- use Zend\View;
- use Zend\View\Exception;
-
-+// @codingStandardsIgnoreStart
- /**
- * Zend_Layout_View_Helper_HeadLink
- *
- * @see http://www.w3.org/TR/xhtml1/dtds.html
- *
- * Creates the following virtual methods:
-- * @method HeadLink appendStylesheet($href, $media = 'screen', $conditionalStylesheet = '', $extras = array())
-- * @method HeadLink offsetSetStylesheet($index, $href, $media = 'screen', $conditionalStylesheet = '', $extras = array())
-- * @method HeadLink prependStylesheet($href, $media = 'screen', $conditionalStylesheet = '', $extras = array())
-- * @method HeadLink setStylesheet($href, $media = 'screen', $conditionalStylesheet = '', $extras = array())
-- * @method HeadLink appendAlternate($href, $type, $title, $extras = array())
-- * @method HeadLink offsetSetAlternate($index, $href, $type, $title, $extras = array())
-- * @method HeadLink prependAlternate($href, $type, $title, $extras = array())
-- * @method HeadLink setAlternate($href, $type, $title, $extras = array())
-+ * @method HeadLink appendStylesheet($href, $media = 'screen', $conditionalStylesheet = '', $extras = [])
-+ * @method HeadLink offsetSetStylesheet($index, $href, $media = 'screen', $conditionalStylesheet = '', $extras = [])
-+ * @method HeadLink prependStylesheet($href, $media = 'screen', $conditionalStylesheet = '', $extras = [])
-+ * @method HeadLink setStylesheet($href, $media = 'screen', $conditionalStylesheet = '', $extras = [])
-+ * @method HeadLink appendAlternate($href, $type, $title, $extras = [])
-+ * @method HeadLink offsetSetAlternate($index, $href, $type, $title, $extras = [])
-+ * @method HeadLink prependAlternate($href, $type, $title, $extras = [])
-+ * @method HeadLink setAlternate($href, $type, $title, $extras = [])
- */
-+// @codingStandardsIgnoreEnd
- class HeadLink extends Placeholder\Container\AbstractStandalone
- {
- /**
-@@ -35,7 +37,7 @@
- *
- * @var string[]
- */
-- protected $itemKeys = array(
-+ protected $itemKeys = [
- 'charset',
- 'href',
- 'hreflang',
-@@ -46,8 +48,12 @@
- 'sizes',
- 'type',
- 'title',
-- 'extras'
-- );
-+ 'extras',
-+ 'itemprop',
-+ 'crossorigin',
-+ 'integrity',
-+ 'as',
-+ ];
-
- /**
- * Registry key for placeholder
-@@ -80,7 +86,7 @@
- */
- public function headLink(array $attributes = null, $placement = Placeholder\Container\AbstractContainer::APPEND)
- {
-- return call_user_func_array(array($this, '__invoke'), func_get_args());
-+ return call_user_func_array([$this, '__invoke'], func_get_args());
- }
-
- /**
-@@ -142,7 +148,11 @@
- */
- public function __call($method, $args)
- {
-- if (preg_match('/^(?P<action>set|(ap|pre)pend|offsetSet)(?P<type>Stylesheet|Alternate|Prev|Next)$/', $method, $matches)) {
-+ if (preg_match(
-+ '/^(?P<action>set|(ap|pre)pend|offsetSet)(?P<type>Stylesheet|Alternate|Prev|Next)$/',
-+ $method,
-+ $matches
-+ )) {
- $argc = count($args);
- $action = $matches['action'];
- $type = $matches['type'];
-@@ -190,7 +200,7 @@
- */
- protected function isValid($value)
- {
-- if (!$value instanceof stdClass) {
-+ if (! $value instanceof stdClass) {
- return false;
- }
-
-@@ -213,7 +223,7 @@
- */
- public function append($value)
- {
-- if (!$this->isValid($value)) {
-+ if (! $this->isValid($value)) {
- throw new Exception\InvalidArgumentException(
- 'append() expects a data token; please use one of the custom append*() methods'
- );
-@@ -232,7 +242,7 @@
- */
- public function offsetSet($index, $value)
- {
-- if (!$this->isValid($value)) {
-+ if (! $this->isValid($value)) {
- throw new Exception\InvalidArgumentException(
- 'offsetSet() expects a data token; please use one of the custom offsetSet*() methods'
- );
-@@ -250,7 +260,7 @@
- */
- public function prepend($value)
- {
-- if (!$this->isValid($value)) {
-+ if (! $this->isValid($value)) {
- throw new Exception\InvalidArgumentException(
- 'prepend() expects a data token; please use one of the custom prepend*() methods'
- );
-@@ -268,7 +278,7 @@
- */
- public function set($value)
- {
-- if (!$this->isValid($value)) {
-+ if (! $this->isValid($value)) {
- throw new Exception\InvalidArgumentException(
- 'set() expects a data token; please use one of the custom set*() methods'
- );
-@@ -315,7 +325,7 @@
- }
-
- if (isset($attributes['conditionalStylesheet'])
-- && !empty($attributes['conditionalStylesheet'])
-+ && ! empty($attributes['conditionalStylesheet'])
- && is_string($attributes['conditionalStylesheet'])
- ) {
- // inner wrap with comment end and start if !IE
-@@ -340,7 +350,7 @@
- ? $this->getWhitespace($indent)
- : $this->getIndent();
-
-- $items = array();
-+ $items = [];
- $this->getContainer()->ksort();
- foreach ($this as $item) {
- $items[] = $this->itemToString($item);
-@@ -378,7 +388,7 @@
- return false;
- }
-
-- if (0 < count($args)) {
-+ if ($args) {
- $media = array_shift($args);
- if (is_array($media)) {
- $media = implode(',', $media);
-@@ -386,18 +396,20 @@
- $media = (string) $media;
- }
- }
-- if (0 < count($args)) {
-+ if ($args) {
- $conditionalStylesheet = array_shift($args);
-- if (!empty($conditionalStylesheet) && is_string($conditionalStylesheet)) {
-+ if (! empty($conditionalStylesheet) && is_string($conditionalStylesheet)) {
- $conditionalStylesheet = (string) $conditionalStylesheet;
- } else {
- $conditionalStylesheet = null;
- }
- }
-
-- if (0 < count($args) && is_array($args[0])) {
-+ if ($args && is_array($args[0])) {
- $extras = array_shift($args);
- $extras = (array) $extras;
-+ } else {
-+ $extras = array();
- }
-
- $attributes = compact('rel', 'type', 'href', 'media', 'conditionalStylesheet', 'extras');
-@@ -443,13 +455,15 @@
- $type = array_shift($args);
- $title = array_shift($args);
-
-- if (0 < count($args) && is_array($args[0])) {
-+ if ($args && is_array($args[0])) {
- $extras = array_shift($args);
- $extras = (array) $extras;
-
- if (isset($extras['media']) && is_array($extras['media'])) {
- $extras['media'] = implode(',', $extras['media']);
- }
-+ } else {
-+ $extras = array();
- }
-
- $href = (string) $href;
diff --git a/mysql.patch b/mysql.patch
deleted file mode 100644
index b10f910f6554..000000000000
--- a/mysql.patch
+++ /dev/null
@@ -1,397 +0,0 @@
---- a/core/src/cats/ddl/creates/mysql.sql 2021-06-10 16:14:05.373605979 +0300
-+++ b/core/src/cats/ddl/creates/mysql.sql 2021-06-10 16:33:09.592630760 +0300
-@@ -11,63 +11,6 @@
- INDEX (Path(255))
- );
-
---- We strongly recommend to avoid the temptation to add new indexes.
---- In general, these will cause very significant performance
---- problems in other areas. A better approach is to carefully check
---- that all your memory configuration parameters are
---- suitable for the size of your installation. If you backup
---- millions of files, you need to adapt the database memory
---- configuration parameters concerning sorting, joining and global
---- memory. By default, sort and join parameters are very small
---- (sometimes 8Kb), and having sufficient memory specified by those
---- parameters is extremely important to run fast.
--
---- In File table
---- FileIndex is 0 for FT_DELETED files
---- Name is '' for directories
---- The index INDEX (PathId, JobId, FileIndex) is
---- important for bvfs performance, especially
---- for .bvfs_lsdirs which is used by bareos-webui.
--CREATE TABLE File (
-- FileId BIGINT UNSIGNED NOT NULL AUTO_INCREMENT,
-- FileIndex INTEGER UNSIGNED DEFAULT 0,
-- JobId INTEGER UNSIGNED NOT NULL REFERENCES Job,
-- PathId INTEGER UNSIGNED NOT NULL REFERENCES Path,
-- DeltaSeq SMALLINT UNSIGNED DEFAULT 0,
-- MarkId INTEGER UNSIGNED DEFAULT 0,
-- Fhinfo NUMERIC(20) DEFAULT 0,
-- Fhnode NUMERIC(20) DEFAULT 0,
-- LStat TINYBLOB NOT NULL,
-- MD5 TINYBLOB NOT NULL,
-- Name BLOB NOT NULL,
-- PRIMARY KEY (FileId),
-- INDEX (JobId, PathId, Name(255)),
-- INDEX (PathId, JobId, FileIndex)
--);
--
----
---- Possibly add one or more of the following indexes
---- to the above File table if your Verifies are
---- too slow, but they can slow down backups.
----
---- INDEX (PathId),
--
--CREATE TABLE RestoreObject (
-- RestoreObjectId INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
-- ObjectName BLOB NOT NULL,
-- RestoreObject LONGBLOB NOT NULL,
-- PluginName TINYBLOB NOT NULL,
-- ObjectLength INTEGER DEFAULT 0,
-- ObjectFullLength INTEGER DEFAULT 0,
-- ObjectIndex INTEGER DEFAULT 0,
-- ObjectType INTEGER DEFAULT 0,
-- FileIndex INTEGER UNSIGNED DEFAULT 0,
-- JobId INTEGER UNSIGNED NOT NULL REFERENCES Job,
-- ObjectCompression INTEGER DEFAULT 0,
-- PRIMARY KEY(RestoreObjectId),
-- INDEX (JobId)
--);
--
- CREATE TABLE MediaType (
- MediaTypeId INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
- MediaType TINYBLOB NOT NULL,
-@@ -101,13 +44,65 @@
- PRIMARY KEY(DeviceId)
- );
-
-+CREATE TABLE FileSet (
-+ FileSetId INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
-+ FileSet TINYBLOB NOT NULL,
-+ MD5 TINYBLOB,
-+ CreateTime DATETIME DEFAULT NULL,
-+ FileSetText BLOB NOT NULL,
-+ PRIMARY KEY(FileSetId)
-+);
-+
-+CREATE TABLE Client (
-+ ClientId INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
-+ Name TINYBLOB NOT NULL,
-+ Uname TINYBLOB NOT NULL, /* full uname -a of client */
-+ AutoPrune TINYINT DEFAULT 0,
-+ FileRetention BIGINT UNSIGNED DEFAULT 0,
-+ JobRetention BIGINT UNSIGNED DEFAULT 0,
-+ UNIQUE (Name(128)),
-+ PRIMARY KEY(ClientId)
-+);
-+
-+CREATE TABLE Pool (
-+ PoolId INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
-+ Name TINYBLOB NOT NULL,
-+ NumVols INTEGER UNSIGNED DEFAULT 0,
-+ MaxVols INTEGER UNSIGNED DEFAULT 0,
-+ UseOnce TINYINT DEFAULT 0,
-+ UseCatalog TINYINT DEFAULT 0,
-+ AcceptAnyVolume TINYINT DEFAULT 0,
-+ VolRetention BIGINT UNSIGNED DEFAULT 0,
-+ VolUseDuration BIGINT UNSIGNED DEFAULT 0,
-+ MaxVolJobs INTEGER UNSIGNED DEFAULT 0,
-+ MaxVolFiles INTEGER UNSIGNED DEFAULT 0,
-+ MaxVolBytes BIGINT UNSIGNED DEFAULT 0,
-+ AutoPrune TINYINT DEFAULT 0,
-+ Recycle TINYINT DEFAULT 0,
-+ ActionOnPurge TINYINT DEFAULT 0,
-+ PoolType ENUM('Backup', 'Copy', 'Cloned', 'Archive', 'Migration', 'Scratch') NOT NULL,
-+ LabelType TINYINT DEFAULT 0,
-+ LabelFormat TINYBLOB,
-+ Enabled TINYINT DEFAULT 1,
-+ ScratchPoolId INTEGER UNSIGNED DEFAULT 0,
-+ RecyclePoolId INTEGER UNSIGNED DEFAULT 0,
-+ NextPoolId INTEGER UNSIGNED DEFAULT 0,
-+ MinBlockSize INTEGER UNSIGNED DEFAULT 0,
-+ MaxBlockSize INTEGER UNSIGNED DEFAULT 0,
-+ MigrationHighBytes BIGINT UNSIGNED DEFAULT 0,
-+ MigrationLowBytes BIGINT UNSIGNED DEFAULT 0,
-+ MigrationTime BIGINT UNSIGNED DEFAULT 0,
-+ UNIQUE (Name(128)),
-+ PRIMARY KEY (PoolId)
-+);
-+
- CREATE TABLE Job (
- JobId INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
- Job TINYBLOB NOT NULL,
- Name TINYBLOB NOT NULL,
- Type BINARY(1) NOT NULL,
- Level BINARY(1) NOT NULL,
-- ClientId INTEGER DEFAULT 0 REFERENCES Client(ClientId),
-+ ClientId INTEGER UNSIGNED DEFAULT 0 REFERENCES Client(ClientId),
- JobStatus BINARY(1) NOT NULL,
- SchedTime DATETIME DEFAULT NULL,
- StartTime DATETIME DEFAULT NULL,
-@@ -121,9 +116,9 @@
- ReadBytes BIGINT UNSIGNED DEFAULT 0,
- JobErrors INTEGER UNSIGNED DEFAULT 0,
- JobMissingFiles INTEGER UNSIGNED DEFAULT 0,
-- PoolId INTEGER UNSIGNED DEFAULT 0 REFERENCES Pool(PoolId),
-- FileSetId INTEGER UNSIGNED DEFAULT 0 REFERENCES FileSet(FileSetId),
-- PriorJobId INTEGER UNSIGNED DEFAULT 0 REFERENCES Job(JobId),
-+ PoolId INTEGER UNSIGNED DEFAULT 0,
-+ FileSetId INTEGER UNSIGNED DEFAULT 0,
-+ PriorJobId INTEGER UNSIGNED DEFAULT 0,
- PurgedFiles TINYINT DEFAULT 0,
- HasBase TINYINT DEFAULT 0,
- HasCache TINYINT DEFAULT 0,
-@@ -134,6 +129,63 @@
- INDEX (JobTDate)
- );
-
-+-- We strongly recommend to avoid the temptation to add new indexes.
-+-- In general, these will cause very significant performance
-+-- problems in other areas. A better approach is to carefully check
-+-- that all your memory configuration parameters are
-+-- suitable for the size of your installation. If you backup
-+-- millions of files, you need to adapt the database memory
-+-- configuration parameters concerning sorting, joining and global
-+-- memory. By default, sort and join parameters are very small
-+-- (sometimes 8Kb), and having sufficient memory specified by those
-+-- parameters is extremely important to run fast.
-+
-+-- In File table
-+-- FileIndex is 0 for FT_DELETED files
-+-- Name is '' for directories
-+-- The index INDEX (PathId, JobId, FileIndex) is
-+-- important for bvfs performance, especially
-+-- for .bvfs_lsdirs which is used by bareos-webui.
-+CREATE TABLE File (
-+ FileId BIGINT UNSIGNED NOT NULL AUTO_INCREMENT,
-+ FileIndex INTEGER UNSIGNED DEFAULT 0,
-+ JobId INTEGER UNSIGNED NOT NULL REFERENCES Job,
-+ PathId INTEGER UNSIGNED NOT NULL REFERENCES Path,
-+ DeltaSeq SMALLINT UNSIGNED DEFAULT 0,
-+ MarkId INTEGER UNSIGNED DEFAULT 0,
-+ Fhinfo NUMERIC(20) DEFAULT 0,
-+ Fhnode NUMERIC(20) DEFAULT 0,
-+ LStat TINYBLOB NOT NULL,
-+ MD5 TINYBLOB NOT NULL,
-+ Name BLOB NOT NULL,
-+ PRIMARY KEY (FileId),
-+ INDEX (JobId, PathId, Name(255)),
-+ INDEX (PathId, JobId, FileIndex)
-+);
-+
-+--
-+-- Possibly add one or more of the following indexes
-+-- to the above File table if your Verifies are
-+-- too slow, but they can slow down backups.
-+--
-+-- INDEX (PathId),
-+
-+CREATE TABLE RestoreObject (
-+ RestoreObjectId INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
-+ ObjectName BLOB NOT NULL,
-+ RestoreObject LONGBLOB NOT NULL,
-+ PluginName TINYBLOB NOT NULL,
-+ ObjectLength INTEGER DEFAULT 0,
-+ ObjectFullLength INTEGER DEFAULT 0,
-+ ObjectIndex INTEGER DEFAULT 0,
-+ ObjectType INTEGER DEFAULT 0,
-+ FileIndex INTEGER UNSIGNED DEFAULT 0,
-+ JobId INTEGER UNSIGNED NOT NULL REFERENCES Job,
-+ ObjectCompression INTEGER DEFAULT 0,
-+ PRIMARY KEY(RestoreObjectId),
-+ INDEX (JobId)
-+);
-+
- -- Create a table like Job for long term statistics
- CREATE TABLE JobHisto (
- JobId INTEGER UNSIGNED NOT NULL,
-@@ -175,50 +227,13 @@
- PRIMARY KEY(LocationId)
- );
-
--CREATE TABLE LocationLog (
-- LocLogId INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
-- Date DATETIME DEFAULT NULL,
-- Comment BLOB NOT NULL,
-- MediaId INTEGER UNSIGNED DEFAULT 0 REFERENCES Media(MediaId),
-- LocationId INTEGER UNSIGNED DEFAULT 0 REFERENCES Location(LocationId),
-- NewVolStatus ENUM('Full', 'Archive', 'Append', 'Recycle', 'Purged',
-- 'Read-Only', 'Disabled', 'Error', 'Busy', 'Used', 'Cleaning') NOT NULL,
-- NewEnabled TINYINT,
-- PRIMARY KEY(LocLogId)
--);
--
--CREATE TABLE FileSet (
-- FileSetId INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
-- FileSet TINYBLOB NOT NULL,
-- MD5 TINYBLOB,
-- CreateTime DATETIME DEFAULT NULL,
-- FileSetText BLOB NOT NULL,
-- PRIMARY KEY(FileSetId)
--);
--
--CREATE TABLE JobMedia (
-- JobMediaId INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
-- JobId INTEGER UNSIGNED NOT NULL REFERENCES Job,
-- MediaId INTEGER UNSIGNED NOT NULL REFERENCES Media,
-- FirstIndex INTEGER UNSIGNED DEFAULT 0,
-- LastIndex INTEGER UNSIGNED DEFAULT 0,
-- StartFile INTEGER UNSIGNED DEFAULT 0,
-- EndFile INTEGER UNSIGNED DEFAULT 0,
-- StartBlock INTEGER UNSIGNED DEFAULT 0,
-- EndBlock INTEGER UNSIGNED DEFAULT 0,
-- JobBytes NUMERIC(20) DEFAULT 0,
-- VolIndex INTEGER UNSIGNED DEFAULT 0,
-- PRIMARY KEY(JobMediaId),
-- INDEX (JobId, MediaId)
--);
--
- CREATE TABLE Media (
- MediaId INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
- VolumeName TINYBLOB NOT NULL,
- Slot INTEGER DEFAULT 0,
- PoolId INTEGER UNSIGNED DEFAULT 0 REFERENCES Pool(PoolId),
- MediaType TINYBLOB NOT NULL,
-- MediaTypeId INTEGER UNSIGNED DEFAULT 0 REFERENCES MediaType(MediaTypeId),
-+ MediaTypeId INTEGER UNSIGNED DEFAULT 0,
- LabelType TINYINT DEFAULT 0,
- FirstWritten DATETIME DEFAULT NULL,
- LastWritten DATETIME DEFAULT NULL,
-@@ -244,19 +259,19 @@
- MaxVolBytes BIGINT UNSIGNED DEFAULT 0,
- InChanger TINYINT DEFAULT 0,
- StorageId INTEGER UNSIGNED DEFAULT 0 REFERENCES Storage(StorageId),
-- DeviceId INTEGER UNSIGNED DEFAULT 0 REFERENCES Device(DeviceId),
-+ DeviceId INTEGER UNSIGNED DEFAULT 0,
- MediaAddressing TINYINT DEFAULT 0,
- VolReadTime BIGINT UNSIGNED DEFAULT 0,
- VolWriteTime BIGINT UNSIGNED DEFAULT 0,
- EndFile INTEGER UNSIGNED DEFAULT 0,
- EndBlock INTEGER UNSIGNED DEFAULT 0,
-- LocationId INTEGER UNSIGNED DEFAULT 0 REFERENCES Location(LocationId),
-+ LocationId INTEGER UNSIGNED DEFAULT 0,
- RecycleCount INTEGER UNSIGNED DEFAULT 0,
- MinBlockSize INTEGER UNSIGNED DEFAULT 0,
- MaxBlockSize INTEGER UNSIGNED DEFAULT 0,
- InitialWrite DATETIME DEFAULT NULL,
-- ScratchPoolId INTEGER UNSIGNED DEFAULT 0 REFERENCES Pool(PoolId),
-- RecyclePoolId INTEGER UNSIGNED DEFAULT 0 REFERENCES Pool(PoolId),
-+ ScratchPoolId INTEGER UNSIGNED DEFAULT 0,
-+ RecyclePoolId INTEGER UNSIGNED DEFAULT 0,
- EncryptionKey TINYBLOB,
- Comment BLOB,
- PRIMARY KEY(MediaId),
-@@ -264,47 +279,32 @@
- INDEX (PoolId)
- );
-
--CREATE TABLE Pool (
-- PoolId INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
-- Name TINYBLOB NOT NULL,
-- NumVols INTEGER UNSIGNED DEFAULT 0,
-- MaxVols INTEGER UNSIGNED DEFAULT 0,
-- UseOnce TINYINT DEFAULT 0,
-- UseCatalog TINYINT DEFAULT 0,
-- AcceptAnyVolume TINYINT DEFAULT 0,
-- VolRetention BIGINT UNSIGNED DEFAULT 0,
-- VolUseDuration BIGINT UNSIGNED DEFAULT 0,
-- MaxVolJobs INTEGER UNSIGNED DEFAULT 0,
-- MaxVolFiles INTEGER UNSIGNED DEFAULT 0,
-- MaxVolBytes BIGINT UNSIGNED DEFAULT 0,
-- AutoPrune TINYINT DEFAULT 0,
-- Recycle TINYINT DEFAULT 0,
-- ActionOnPurge TINYINT DEFAULT 0,
-- PoolType ENUM('Backup', 'Copy', 'Cloned', 'Archive', 'Migration', 'Scratch') NOT NULL,
-- LabelType TINYINT DEFAULT 0,
-- LabelFormat TINYBLOB,
-- Enabled TINYINT DEFAULT 1,
-- ScratchPoolId INTEGER UNSIGNED DEFAULT 0 REFERENCES Pool,
-- RecyclePoolId INTEGER UNSIGNED DEFAULT 0 REFERENCES Pool,
-- NextPoolId INTEGER UNSIGNED DEFAULT 0 REFERENCES Pool,
-- MinBlockSize INTEGER UNSIGNED DEFAULT 0,
-- MaxBlockSize INTEGER UNSIGNED DEFAULT 0,
-- MigrationHighBytes BIGINT UNSIGNED DEFAULT 0,
-- MigrationLowBytes BIGINT UNSIGNED DEFAULT 0,
-- MigrationTime BIGINT UNSIGNED DEFAULT 0,
-- UNIQUE (Name(128)),
-- PRIMARY KEY (PoolId)
-+CREATE TABLE JobMedia (
-+ JobMediaId INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
-+ JobId INTEGER UNSIGNED NOT NULL REFERENCES Job,
-+ MediaId INTEGER UNSIGNED NOT NULL REFERENCES Media,
-+ FirstIndex INTEGER UNSIGNED DEFAULT 0,
-+ LastIndex INTEGER UNSIGNED DEFAULT 0,
-+ StartFile INTEGER UNSIGNED DEFAULT 0,
-+ EndFile INTEGER UNSIGNED DEFAULT 0,
-+ StartBlock INTEGER UNSIGNED DEFAULT 0,
-+ EndBlock INTEGER UNSIGNED DEFAULT 0,
-+ JobBytes NUMERIC(20) DEFAULT 0,
-+ VolIndex INTEGER UNSIGNED DEFAULT 0,
-+ PRIMARY KEY(JobMediaId),
-+ INDEX (JobId, MediaId)
- );
-
--CREATE TABLE Client (
-- ClientId INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
-- Name TINYBLOB NOT NULL,
-- Uname TINYBLOB NOT NULL, /* full uname -a of client */
-- AutoPrune TINYINT DEFAULT 0,
-- FileRetention BIGINT UNSIGNED DEFAULT 0,
-- JobRetention BIGINT UNSIGNED DEFAULT 0,
-- UNIQUE (Name(128)),
-- PRIMARY KEY(ClientId)
-+CREATE TABLE LocationLog (
-+ LocLogId INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
-+ Date DATETIME DEFAULT NULL,
-+ Comment BLOB NOT NULL,
-+ MediaId INTEGER UNSIGNED DEFAULT 0 REFERENCES Media(MediaId),
-+ LocationId INTEGER UNSIGNED DEFAULT 0 REFERENCES Location(LocationId),
-+ NewVolStatus ENUM('Full', 'Archive', 'Append', 'Recycle', 'Purged',
-+ 'Read-Only', 'Disabled', 'Error', 'Busy', 'Used', 'Cleaning') NOT NULL,
-+ NewEnabled TINYINT,
-+ PRIMARY KEY(LocLogId)
- );
-
- CREATE TABLE Log (
-@@ -318,9 +318,9 @@
-
- CREATE TABLE BaseFiles (
- BaseId BIGINT UNSIGNED AUTO_INCREMENT,
-- BaseJobId INTEGER UNSIGNED NOT NULL REFERENCES Job,
-- JobId INTEGER UNSIGNED NOT NULL REFERENCES Job,
-- FileId BIGINT UNSIGNED NOT NULL REFERENCES File,
-+ BaseJobId INTEGER UNSIGNED NOT NULL,
-+ JobId INTEGER UNSIGNED NOT NULL REFERENCES Job(JobId),
-+ FileId BIGINT UNSIGNED NOT NULL REFERENCES File(FileId),
- FileIndex INTEGER UNSIGNED,
- PRIMARY KEY(BaseId)
- );
-@@ -360,7 +360,7 @@
- );
-
- CREATE INDEX pathhierarchy_ppathid
-- ON PathHierarchy (PPathId);
-+ ON PathHierarchy (PPathId);
-
- CREATE TABLE PathVisibility
- (
-@@ -376,14 +376,14 @@
- );
-
- CREATE TABLE Quota (
-- ClientId INTEGER DEFAULT 0 REFERENCES Client,
-+ ClientId INTEGER UNSIGNED DEFAULT 0 REFERENCES Client(ClientId),
- GraceTime BIGINT DEFAULT 0,
- QuotaLimit BIGINT UNSIGNED DEFAULT 0,
- PRIMARY KEY (ClientId)
- );
-
- CREATE TABLE NDMPLevelMap (
-- ClientId INTEGER DEFAULT 0 REFERENCES Client(ClientId),
-+ ClientId INTEGER UNSIGNED DEFAULT 0 REFERENCES Client(ClientId),
- FileSetId INTEGER UNSIGNED DEFAULT 0 REFERENCES FileSet(FileSetId),
- FileSystem TINYBLOB NOT NULL,
- DumpLevel INTEGER NOT NULL,
diff --git a/plattforms-archlinux.patch b/plattforms-archlinux.patch
deleted file mode 100644
index caa7bd30530a..000000000000
--- a/plattforms-archlinux.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- bareos/core/platforms/CMakeLists.txt 2020-02-07 22:05:23.436631465 +0100
-+++ bareosb/core/platforms/CMakeLists.txt 2020-02-07 22:19:25.365678836 +0100
-@@ -31,6 +31,8 @@
- add_subdirectory(univention)
- elseif(${DISTNAME} STREQUAL hpux)
- message(STATUS "DISTNAME: " ${DISTNAME})
-+ elseif(${DISTNAME} STREQUAL archlinux)
-+ message(STATUS "DISTNAME: ", ${DISTNAME})
- else()
- add_subdirectory(${DISTNAME})
- endif()
diff --git a/restore-form.patch b/restore-form.patch
deleted file mode 100644
index 986047463b5b..000000000000
--- a/restore-form.patch
+++ /dev/null
@@ -1,12 +0,0 @@
---- bareos/webui/module/Restore/src/Restore/Form/RestoreForm.php 2020-02-21 23:01:23.000000000 +0200
-+++ bareos/webui/module/Restore/src/Restore/Form/RestoreForm.php 2020-04-09 23:28:34.194634728 +0300
-@@ -244,7 +244,8 @@
- ));
- }
- else {
-- if(!empty($this->restore_params['client']) && count($this->getRestoreJobList()) == 1) {
-+ // if(!empty($this->restore_params['client']) && count($this->getRestoreJobList()) == 1) {
-+ if(!empty($this->restore_params['client']) && count($this->getRestoreJobList()) > 0) {
- $this->add(array(
- 'name' => 'restorejob',
- 'type' => 'select',