2023-12-15 18:21:47 +01:00
|
|
|
#!/bin/bash
|
|
|
|
################################################################################
|
|
|
|
# Author: Fred (support@qo-op.com)
|
|
|
|
# Version: 0.1
|
|
|
|
# License: AGPL-3.0 (https://choosealicense.com/licenses/agpl-3.0/)
|
|
|
|
################################################################################
|
|
|
|
################################################################################
|
|
|
|
MY_PATH="`dirname \"$0\"`" # relative
|
|
|
|
MY_PATH="`( cd \"${MY_PATH}\" && pwd )`" # absolutized and normalized
|
|
|
|
. "${MY_PATH}/my.sh"
|
|
|
|
|
2023-12-15 18:25:20 +01:00
|
|
|
G1PUB="$1"
|
2023-12-15 18:21:47 +01:00
|
|
|
MOATS="$2"
|
|
|
|
echo "#################################################"
|
|
|
|
echo "WARNING NOT TESTED. PASS A G1PUBKEY AS PARAMETER."
|
|
|
|
echo "#################################################
|
|
|
|
# GIVEN A PUBKEY -
|
|
|
|
# This program scan for presence in GChange & Cesium Elastic Search Databases
|
2023-12-15 18:25:20 +01:00
|
|
|
# So it detect attributes attached to actual key $G1PUB
|
2023-12-15 18:21:47 +01:00
|
|
|
#################################################"
|
|
|
|
|
2023-12-15 18:25:20 +01:00
|
|
|
QRNS=$(${MY_PATH}/g1_to_ipfs.py ${G1PUB})
|
2023-12-15 18:21:47 +01:00
|
|
|
[[ ! ${QRNS} ]] && echo "PROVIDED KEY IS NOT CONVERTIBLE." && exit 1
|
|
|
|
|
|
|
|
[[ ! ${MOATS} ]] && MOATS=$(date -u +"%Y%m%d%H%M%S%4N")
|
|
|
|
mkdir -p ~/.zen/tmp/${MOATS}
|
|
|
|
|
2023-12-15 18:25:20 +01:00
|
|
|
VISITORCOINS=$(${MY_PATH}/COINScheck.sh ${G1PUB} | tail -n 1)
|
2023-12-15 18:21:47 +01:00
|
|
|
ZEN=$(echo "($VISITORCOINS - 1) * 10" | bc | cut -d '.' -f 1)
|
|
|
|
|
|
|
|
## EMPTY WALLET ? PREPARE PALPE WELCOME
|
|
|
|
if [[ $VISITORCOINS == "null" ]]; then
|
|
|
|
PALPE=1
|
|
|
|
echo "PALPE=1"
|
|
|
|
else
|
|
|
|
PALPE=0
|
|
|
|
fi
|
|
|
|
|
|
|
|
echo "VISITOR POSSESS ${VISITORCOINS} G1 / ${ZEN} ZEN"
|
|
|
|
|
|
|
|
## GET G1 WALLET HISTORY
|
|
|
|
if [[ ${VISITORCOINS} != "null" && ${VISITORCOINS} -gt 0 ]]; then
|
|
|
|
|
2023-12-15 18:25:20 +01:00
|
|
|
[[ ! -s ~/.zen/tmp/${MOATS}/${G1PUB}.g1history.json ]] \
|
|
|
|
&& ${MY_PATH}/timeout.sh -t 20 $MY_PATH/jaklis/jaklis.py history -p ${G1PUB} -j > ~/.zen/tmp/${MOATS}/${G1PUB}.g1history.json
|
2023-12-15 18:21:47 +01:00
|
|
|
|
2023-12-15 18:25:20 +01:00
|
|
|
HISTOLNK=$myIPFS/ipfs/$(ipfs add -q ~/.zen/tmp/${MOATS}/${G1PUB}.g1history.json)
|
2023-12-15 18:21:47 +01:00
|
|
|
|
|
|
|
echo "<a href=${HISTOLNK}>HISTORY</a>" > ~/.zen/tmp/${MOATS}/response
|
|
|
|
echo "<h1>Solde $VISITORCOINS Ǧ1</h1>" >> ~/.zen/tmp/${MOATS}/response
|
|
|
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
## SCAN GCHANGE +
|
2023-12-15 18:25:20 +01:00
|
|
|
[[ ! -s ~/.zen/tmp/${MOATS}/${G1PUB}.gchange.json ]] \
|
|
|
|
&& ${MY_PATH}/timeout.sh -t 20 curl -s ${myDATA}/user/profile/${G1PUB} > ~/.zen/tmp/${MOATS}/${G1PUB}.gchange.json &
|
2023-12-15 18:21:47 +01:00
|
|
|
|
2023-12-15 18:25:20 +01:00
|
|
|
GFOUND=$(cat ~/.zen/tmp/${MOATS}/${G1PUB}.gchange.json | jq -r '.found')
|
2023-12-15 18:21:47 +01:00
|
|
|
echo "FOUND IN GCHANGE+ ? $GFOUND"
|
|
|
|
|
|
|
|
if [[ $GFOUND == "false" ]]; then
|
|
|
|
echo "NO GCHANGE YET. REDIRECT" >> ~/.zen/tmp/${MOATS}/response
|
|
|
|
else
|
|
|
|
[[ $VISITORCOINS == "null" ]] && PALPE=10 \
|
2023-12-15 18:25:20 +01:00
|
|
|
&& echo "~/.zen/tmp/${MOATS}/${G1PUB}.gchange.json CHECK : PALPE=10"
|
2023-12-15 18:21:47 +01:00
|
|
|
fi
|
|
|
|
|
|
|
|
## SCAN CESIUM +
|
2023-12-15 18:25:20 +01:00
|
|
|
[[ ! -s ~/.zen/tmp/${MOATS}/${G1PUB}.gplus.json ]] \
|
|
|
|
&& ${MY_PATH}/timeout.sh -t 10 curl -s ${myCESIUM}/user/profile/${G1PUB} > ~/.zen/tmp/${MOATS}/${G1PUB}.gplus.json 2>/dev/null &
|
2023-12-15 18:21:47 +01:00
|
|
|
|
2023-12-15 18:25:20 +01:00
|
|
|
GCFOUND=$(cat ~/.zen/tmp/${MOATS}/${G1PUB}.gplus.json | jq -r '.found')
|
2023-12-15 18:21:47 +01:00
|
|
|
echo "FOUND IN CESIUM+ ? $GCFOUND"
|
|
|
|
|
|
|
|
if [[ $GCFOUND == "false" ]]; then
|
|
|
|
echo "PAS DE COMPTE CESIUM POUR CETTE CLEF" >> ~/.zen/tmp/${MOATS}/response
|
|
|
|
else
|
2023-12-15 18:25:20 +01:00
|
|
|
echo "~/.zen/tmp/${MOATS}/${G1PUB}.gplus.json CHECK : PALPE=50" >> ~/.zen/tmp/${MOATS}/response
|
2023-12-15 18:21:47 +01:00
|
|
|
fi
|
|
|
|
|
|
|
|
## CHECK IF GCHANGE IS LINKED TO "A DECLARED CESIUM"
|
2023-12-15 18:25:20 +01:00
|
|
|
CPLUS=$(cat ~/.zen/tmp/${MOATS}/${G1PUB}.gchange.json | jq -r '._source.pubkey' 2>/dev/null)
|
2023-12-15 18:21:47 +01:00
|
|
|
echo "CPLUS=$CPLUS" >> ~/.zen/tmp/${MOATS}/response
|
|
|
|
## SCAN GPUB CESIUM +
|
|
|
|
|
|
|
|
##### DO WE HAVE A DIFFERENT KEY LINKED TO GCHANGE ??
|
2023-12-15 18:25:20 +01:00
|
|
|
if [[ $CPLUS != "" && $CPLUS != 'null' && $CPLUS != $G1PUB ]]; then
|
2023-12-15 18:21:47 +01:00
|
|
|
|
|
|
|
## SCAN FOR CPLUS CESIUM + ACCOUNT
|
2023-12-15 18:25:20 +01:00
|
|
|
[[ ! -s ~/.zen/tmp/${MOATS}/${G1PUB}.cplus.json ]] \
|
|
|
|
&& ${MY_PATH}/timeout.sh -t 10 curl -s ${myCESIUM}/user/profile/${CPLUS} > ~/.zen/tmp/${MOATS}/${G1PUB}.cplus.json 2>/dev/null &
|
2023-12-15 18:21:47 +01:00
|
|
|
|
2023-12-15 18:25:20 +01:00
|
|
|
CCFOUND=$(cat ~/.zen/tmp/${MOATS}/${G1PUB}.cplus.json | jq -r '.found')
|
2023-12-15 18:21:47 +01:00
|
|
|
|
|
|
|
if [[ $CCFOUND == "false" ]]; then
|
|
|
|
echo "AUCUN CCPLUS : NO MEMBER LINK" >> ~/.zen/tmp/${MOATS}/response
|
|
|
|
else
|
|
|
|
CPLUSCOIN=$(${MY_PATH}/COINScheck.sh ${CPLUS} | tail -n 1)
|
2023-12-15 18:25:20 +01:00
|
|
|
echo "${G1PUB} IS LINKED TO MEMBER ${CPLUS} POSSESSING ${CPLUSCOIN} G1" >> ~/.zen/tmp/${MOATS}/response
|
2023-12-15 18:21:47 +01:00
|
|
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
cat ~/.zen/tmp/${MOATS}/response
|