#!/usr/bin/env bash
###
### arching-kaos-tools
### Tools to interact and build an Arching Kaos Infochain
### Copyright (C) 2021 - 2025 kaotisk
###
### This program is free software: you can redistribute it and/or modify
### it under the terms of the GNU General Public License as published by
### the Free Software Foundation, either version 3 of the License, or
### (at your option) any later version.
###
### This program is distributed in the hope that it will be useful,
### but WITHOUT ANY WARRANTY; without even the implied warranty of
### MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
### GNU General Public License for more details.
###
### You should have received a copy of the GNU General Public License
### along with this program. If not, see .
###
##
## Performs various operations on a zblock. Additionally, it can also pack one
## from given information, which can be added on top of your zchain.
##
## Usage:
## -h, --help Prints this help message
## -s, --show [zblock] Shows the zblock provided. In case
## of no zblock, the latest of your
## zchain is shown.
## -x, --gen-html Generates an HTML document for a
## given zblock
## -c, --cache Caches a zblock
## -p, --pack Packs a zblock
## -r, --repack Repacks a zblock at previous
## -a, --announce Announces a zblock
##
fullprogrampath="$(realpath $0)"
PROGRAM=$(basename $0)
descriptionString="Various zblock operations"
# At least these
source $AK_LIBDIR/_ak_log
source $AK_LIBDIR/_ak_script
source $AK_LIBDIR/_ak_zblock
# Flags to run
if [ ! -z $1 ]; then
case $1 in
-h | --help) _ak_usage; exit;;
-s | --show)
_ak_zblock_show $2
exit
;;
-x | --gen-html)
_ak_zblock_gen_html $2
exit
;;
-c | --cache)
_ak_zblock_cache $2
exit
;;
-p | --pack)
_ak_zblock_pack $2 $3
exit
;;
-r | --repack)
_ak_zblock_repack $2 $3
exit
;;
-a | --announce)
_ak_zblock_announce $2
exit
;;
* ) _ak_usage;;
esac
else _ak_usage
fi