# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>

pkgname=nextcloud-app-contacts
pkgver=4.0.3
_name=contacts
pkgrel=1
pkgdesc="Contacts app for nextcloud"
arch=('any')
url="https://github.com/nextcloud/contacts/"
license=('GPL')
depends=('nextcloud')
makedepends=('ripgrep' 'yq')
groups=('nextcloud-apps')
options=('!strip')
#source=("$pkgname-$pkgver.tar.gz::https://github.com/nextcloud/contacts/releases/download/v$pkgver/contacts.tar.gz")
source=("$pkgname-$pkgver.tar.gz::https://github.com/nextcloud-releases/contacts/releases/download/v$pkgver/contacts.tar.gz")
sha256sums=('c4081cfd148cdb46950cd375709c7efe5dc9aeea701a8da5dbb5e95ea2d285de')

_get_nextcloud_versions() {
  _app_min_major_version="$(xq '.info.dependencies.nextcloud["@min-version"]' "${_name}/appinfo/info.xml"| sed 's/"//g')"
  _app_max_major_version="$(xq '.info.dependencies.nextcloud["@max-version"]' "${_name}/appinfo/info.xml"| sed 's/"//g')"
  _app_max_major_version=$(expr ${_app_max_major_version} + 1)
}

check() {
  local _app_min_major_version
  local _app_max_major_version
  _get_nextcloud_versions

  local _nextcloud_major_version="$(rg "OC_Version = " /usr/share/webapps/nextcloud/version.php |cut -d'(' -f2| cut -d ',' -f1)"
  if [[ "$(vercmp "${_nextcloud_major_version}" "${_app_min_major_version}")" -lt 0 ]] || [[ "$(vercmp "${_nextcloud_major_version}" "${_app_max_major_version}")" -gt 0 ]] ; then
    printf "%s requires nextcloud >= %s/ nextcloud <= %s, but nextcloud %s is provided.\n" "$pkgname" "${_app_min_major_version}" "${_app_max_major_version}" "${_nextcloud_major_version}"
    exit 1
  fi
}

package() {
  _get_nextcloud_versions
  depends=("nextcloud>=${_app_min_major_version}" "nextcloud<${_app_max_major_version}")
  install -d "$pkgdir"/usr/share/webapps/nextcloud/apps
  cp -a "$srcdir"/${_name} "$pkgdir"/usr/share/webapps/nextcloud/apps/contacts
}
