0xddfc2e10…3e91sent to0x165cd37b…5e14·#16,015,815·view on Etherscan
in reply to: 0xfa7a65b6f582c5b76b054b2c921550d457e44bc33f8812b61f11a7a33572edf5.
https://github.com/Floflis/Floflis-Central_scripts.git
---------------------------------------------------------------------------------------------------------------------------
/media/daniell/B/git/Floflis/HTML5/Central/c2export/scripts/Tasks.txt ---->
---------------------------------------------------------------------------------------------------------------------------
nfts-parse.sh: improve looping, based in get-c2-proj-addons.sh
nfts-parse.sh: don't repeat loop for different networks
for ensname.sh/ethaddress-sybil_verify.sh: don't work if no ens/twitter handle comes
for C2: don't add elements if there's no ENS name/Twitter sybil
---------------------------------------------------------------------------------------------------------------------------
<---- /media/daniell/B/git/Floflis/HTML5/Central/c2export/scripts/Tasks.txt
---------------------------------------------------------------------------------------------------------------------------
---------------------------------------------------------------------------------------------------------------------------
/media/daniell/B/git/Floflis/HTML5/Central/c2export/scripts/tokenbalance.sh ---->
---------------------------------------------------------------------------------------------------------------------------
#!/bin/bash -e
ethaddress="$(jq -r '.eth' /1/config/user.json)"
ethuser="$(ethereal ens domain get --address=$ethaddress)"
rpc_polygon="https://rpc-mainnet.maticvigil.com/"
rpc_xdai="https://rpc.gnosischain.com/"
tokenFULLbalancematic="$(ethereal --connection=$rpc_polygon token balance --holder=$ethaddress --token=0xea2746be6cf47f376e9b9d6b78a47707559c3a8e)"
tokenbalancematic="$(printf "%.2f\n" $(echo "$tokenFULLbalancematic" | bc -l))"
tokenFULLbalancexdai="$(ethereal --connection=$rpc_xdai token balance --holder=$ethaddress --token=0x4a59AD9993d763B6125A52dAc5A44f4aE570E793)"
tokenbalancexdai="$(printf "%.2f\n" $(echo "$tokenFULLbalancexdai" | bc -l))"
#tokentotalbalance="$((tokenbalancematic + tokenbalancexdai))"
#tokentotalbalance="$(expr $tokenbalancematic - $tokenbalancexdai)"
#((count = tokenbalancematic - tokenbalancexdai))
tokentotalbalance=$(echo "$tokenbalancematic + $tokenbalancexdai"|bc)
echo "User: $ethuser ($ethaddress)"
echo "----"
if [ "$tokenbalancematic" != "0" ]; then
echo "FLOF balance @ Polygon: $tokenbalancematic"
fi
if [ "$tokenbalancexdai" != "0" ]; then
echo "FLOF balance @ XDai: $tokenbalancexdai"
fi
echo "----"
echo "FLOF total balance: $tokentotalbalance"
#echo "FLOF total balance: $count"
if [ "$(jq -r '.flof' /1/config/tokens.json)" = "null" ] || [ "$(jq -r '.flof' /1/config/tokens.json)" = "" ]; then
echo "Its your first time using tokenbalance.sh!"
echo "Initializing..."
cat > /1/config/tokens.json << ENDOFFILE
{
"flof": {
"polygon": "",
"xdai": "",
"total": "",
"totalusd":""
}
}
ENDOFFILE
fi
contents="$(jq ".flof.polygon = \"$tokenbalancematic\"" /1/config/tokens.json)" && \
echo "${contents}" > /1/config/tokens.json
contents="$(jq ".flof.xdai = \"$tokenbalancexdai\"" /1/config/tokens.json)" && \
echo "${contents}" > /1/config/tokens.json
contents="$(jq ".flof.total = \"$tokentotalbalance\"" /1/config/tokens.json)" && \
echo "${contents}" > /1/config/tokens.json
tokenUSDtotalbalanceget="$(curl -s "https://api.coingecko.com/api/v3/simple/price?ids=floflis&vs_currencies=usd" | jq -r ".floflis.usd")"
tokenUSDtotalbalance=$(echo "$tokentotalbalance * $tokenUSDtotalbalanceget"|bc)
contents="$(jq ".flof.totalusd = \"$tokenUSDtotalbalance\"" /1/config/tokens.json)" && \
echo "${contents}" > /1/config/tokens.json
bash tokenbalance-others.sh
---------------------------------------------------------------------------------------------------------------------------
<---- /media/daniell/B/git/Floflis/HTML5/Central/c2export/scripts/tokenbalance.sh
---------------------------------------------------------------------------------------------------------------------------
---------------------------------------------------------------------------------------------------------------------------
/media/daniell/B/git/Floflis/HTML5/Central/c2export/scripts/tokenbalance-others.sh ---->
---------------------------------------------------------------------------------------------------------------------------
#!/bin/bash -e
ethaddress="$(jq -r '.eth' /1/config/user.json)"
#rpc_ethereum="https://main-light.eth.linkpool.io/"
rpc_polygon="https://rpc-mainnet.maticvigil.com/"
rpc_xdai="https://rpc.gnosischain.com/"
#rpc_ronin=""
#cat /1/config/tokens.json | jq '. + {"eth":{"ethereum":"","polygon":"","xdai":"","ronin":"","total":""}}' | tee /1/config/tokens.json
if [ "$(jq -r '.eth' /1/config/tokens.json)" = "null" ]; then
echo "Its your first time using tokenbalance-others.sh!"
echo "Initializing for ETH token..."
tmp="$(mktemp)"; cat /1/config/tokens.json | jq '. + {"eth":{"ethereum":"","polygon":"","xdai":"","ronin":"","total":"","totalusd":""}}' >"$tmp" && mv "$tmp" /1/config/tokens.json
fi
#cat /1/config/tokens.json | jq '. + {"pla":{"polygon":"","xdai":"","total":""}}' | tee /1/config/tokens.json
if [ "$(jq -r '.pla' /1/config/tokens.json)" = "null" ]; then
echo "Initializing for PLA token..."
tmp="$(mktemp)"; cat /1/config/tokens.json | jq '. + {"pla":{"polygon":"","xdai":"","total":"","totalusd":""}}' >"$tmp" && mv "$tmp" /1/config/tokens.json
fi
#game polygon
if [ "$(jq -r '.game' /1/config/tokens.json)" = "null" ]; then
echo "Initializing for GAME token..."
tmp="$(mktemp)"; cat /1/config/tokens.json | jq '. + {"game":{"polygon":"","xdai":"","total":"","totalusd":""}}' >"$tmp" && mv "$tmp" /1/config/tokens.json
fi
#cat /1/config/tokens.json | jq '. + {"mana":{"ethereum":"","polygon":"","xdai":"","total":""}}' | tee /1/config/tokens.json
if [ "$(jq -r '.mana' /1/config/tokens.json)" = "null" ]; then
echo "Initializing for MANA token..."
tmp="$(mktemp)"; cat /1/config/tokens.json | jq '. + {"mana":{"ethereum":"","polygon":"","xdai":"","total":"","totalusd":""}}' >"$tmp" && mv "$tmp" /1/config/tokens.json
fi
if [ "$(jq -r '.sand' /1/config/tokens.json)" = "null" ]; then
echo "Initializing for SAND token..."
tmp="$(mktemp)"; cat /1/config/tokens.json | jq '. + {"sand":{"ethereum":"","polygon":"","total":"","totalusd":""}}' >"$tmp" && mv "$tmp" /1/config/tokens.json
fi
if [ "$(jq -r '.dai' /1/config/tokens.json)" = "null" ]; then
echo "Initializing for DAI token..."
tmp="$(mktemp)"; cat /1/config/tokens.json | jq '. + {"dai":{"ethereum":"","polygon":"","xdai":"","total":"","totalusd":""}}' >"$tmp" && mv "$tmp" /1/config/tokens.json
fi
if [ "$(jq -r '.gno' /1/config/tokens.json)" = "null" ]; then
echo "Initializing for GNO token..."
tmp="$(mktemp)"; cat /1/config/tokens.json | jq '. + {"gno":{"ethereum":"","polygon":"","xdai":"","total":"","totalusd":""}}' >"$tmp" && mv "$tmp" /1/config/tokens.json
fi
if [ "$(jq -r '.matic' /1/config/tokens.json)" = "null" ]; then
echo "Initializing for MATIC token..."
tmp="$(mktemp)"; cat /1/config/tokens.json | jq '. + {"matic":{"ethereum":"","polygon":"","xdai":"","total":"","totalusd":""}}' >"$tmp" && mv "$tmp" /1/config/tokens.json
fi
if [ "$(jq -r '.slp' /1/config/tokens.json)" = "null" ]; then
echo "Initializing for SLP token..."
tmp="$(mktemp)"; cat /1/config/tokens.json | jq '. + {"slp":{"ethereum":"","polygon":"","xdai":"","ronin":"","total":"","totalusd":""}}' >"$tmp" && mv "$tmp" /1/config/tokens.json
fi
if [ "$(jq -r '.axs' /1/config/tokens.json)" = "null" ]; then
echo "Initializing for AXS token..."
tmp="$(mktemp)"; cat /1/config/tokens.json | jq '. + {"axs":{"ethereum":"","polygon":"","xdai":"","total":"","totalusd":""}}' >"$tmp" && mv "$tmp" /1/config/tokens.json
fi
if [ "$(jq -r '.usdc' /1/config/tokens.json)" = "null" ]; then
echo "Initializing for USDC token..."
tmp="$(mktemp)"; cat /1/config/tokens.json | jq '. + {"usdc":{"ethereum":"","polygon":"","xdai":"","total":"","totalusd":""}}' >"$tmp" && mv "$tmp" /1/config/tokens.json
fi
#cat /1/config/tokens.json | jq '. + {"dai":{"ethereum":"","polygon":"","xdai":"","total":""}}' | tee /1/config/tokens.json
#cat /1/config/tokens.json | jq '. + {"matic":{"ethereum":"","polygon":"","total":""}}' | tee /1/config/tokens.json
#cat /1/config/tokens.json | jq '. + {"slp":{"ethereum":"","ronin":"","total":""}}' | tee /1/config/tokens.json
#slp ethereum 0xCC8Fa225D80b9c7D42F96e9570156c65D6cAAa25
#slp ronin 0xa8754b9fa15fc18bb59458815510e40a12cd2014
#cat /1/config/tokens.json | jq '. + {"axs":{"ethereum":"","ronin":"","total":""}}' | tee /1/config/tokens.json
#axs ethereum
#axs ronin
#cat /1/config/tokens.json | jq '. + {"usdc":{"ethereum":"","polygon":"","xdai":"","ronin":"","total":""}}' | tee /1/config/tokens.json
#usdc ethereum
#usdc polygon
#usdc xdai
#usdc ronin
if [ "$(jq -r '.usd' /1/config/tokens.json)" = "null" ]; then
echo "Initializing for USD..."
tmp="$(mktemp)"; cat /1/config/tokens.json | jq '. + {"usd":{"total":""}}' >"$tmp" && mv "$tmp" /1/config/tokens.json
fi
processtoken () {
if [ "$currenttoken" = "eth" ]; then
currenttoken_ethereum=""
currenttoken_polygon="0x7ceb23fd6bc0add59e62ac25578270cff1b9f619"
currenttoken_xdai="0x6A023CCd1ff6F2045C3309768eAd9E68F978f6e1"
currenttoken_coingeckoname="ethereum"
echo "Updating ETH token..."
fi
if [ "$currenttoken" = "pla" ]; then
currenttoken_ethereum=""
currenttoken_polygon="0x1b07d1ae73fa0601e15ac6bd71807469d9d650c6"
currenttoken_xdai="0x32F13A6585D38e14D4F70c481e58A23767964a07"
currenttoken_coingeckoname=""
echo "Updating PLA token..."
fi
if [ "$currenttoken" = "game" ]; then
currenttoken_ethereum=""
currenttoken_polygon="0xa9d47498125dff1647957cf211ea9a010cc0953e"
currenttoken_xdai="0x4a1901b120e777a2c3d0A19ef41B264cdBCdEe69"
currenttoken_coingeckoname=""
echo "Updating GAME token..."
fi
if [ "$currenttoken" = "mana" ]; then
currenttoken_ethereum="0x0f5d2fb29fb7d3cfee444a200298f468908cc942"
currenttoken_polygon="0xa1c57f48f0deb89f569dfbe6e2b7f46d33606fd4"
currenttoken_xdai="0x7838796B6802B18D7Ef58fc8B757705D6c9d12b3"
currenttoken_coingeckoname="decentraland"
echo "Updating MANA token..."
fi
if [ "$currenttoken" = "sand" ]; then
currenttoken_ethereum="0x3845badade8e6dff049820680d1f14bd3903a5d0"
currenttoken_polygon="0xbbba073c31bf03b8acf7c28ef0738decf3695683"
currenttoken_xdai=""
currenttoken_coingeckoname="the-sandbox"
echo "Updating SAND token..."
fi
if [ "$currenttoken" = "dai" ]; then
currenttoken_ethereum="0x6b175474e89094c44da98b954eedeac495271d0f"
currenttoken_polygon="0x8f3cf7ad23cd3cadbd9735aff958023239c6a063"
currenttoken_xdai=""
currenttoken_coingeckoname="dai"
echo "Updating DAI token..."
fi
if [ "$currenttoken" = "gno" ]; then
currenttoken_ethereum="0x6810e776880c02933d47db1b9fc05908e5386b96"
currenttoken_polygon="0x5ffd62d3c3ee2e81c00a7b9079fb248e7df024a8"
currenttoken_xdai="0x9c58bacc331c9aa871afd802db6379a98e80cedb"
currenttoken_coingeckoname="gnosis"
echo "Updating GNO token..."
fi
if [ "$currenttoken" = "matic" ]; then
currenttoken_ethereum="0x7d1afa7b718fb893db30a3abc0cfc608aacfebb0"
currenttoken_polygon=""
currenttoken_xdai="0x7122d7661c4564b7C6Cd4878B06766489a6028A2"
currenttoken_coingeckoname="matic-network"
echo "Updating MATIC token..."
fi
if [ "$currenttoken" = "slp" ]; then
currenttoken_ethereum="0xCC8Fa225D80b9c7D42F96e9570156c65D6cAAa25"
currenttoken_polygon=""
currenttoken_xdai=""
# currenttoken_ronin="0xa8754b9fa15fc18bb59458815510e40a12cd2014"
currenttoken_coingeckoname="smooth-love-potion"
echo "Updating SLP token..."
fi
if [ "$currenttoken" = "axs" ]; then
currenttoken_ethereum="0xbb0e17ef65f82ab018d8edd776e8dd940327b28b"
currenttoken_polygon=""
currenttoken_xdai=""
# currenttoken_ronin="0x97a9107c1793bc407d6f527b77e7fff4d812bece"
currenttoken_coingeckoname="axie-infinity"
echo "Updating AXS token..."
fi
if [ "$currenttoken" = "usdc" ]; then
currenttoken_ethereum="0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48"
currenttoken_polygon="0x2791bca1f2de4661ed88a30c99a7a9449aa84174"
currenttoken_xdai="0xddafbb505ad214d7b80b1f830fccc89b60fb7a83"
# currenttoken_ronin="0x0b7007c13325c48911f73a2dad5fa5dcbf808adc"
currenttoken_coingeckoname="usd-coin"
echo "Updating USDC token..."
fi
#if [ "$currenttoken_ethereum" != "" ]; then
# tokenFULLbalanceeth="$(ethereal token balance --holder=$ethaddress --token=$currenttoken_ethereum)"
# tokenbalanceeth="$(printf "%.2f\n" $(echo "$tokenFULLbalanceeth" | bc -l))"
#fi
tokenFULLbalanceeth="$(ethereal token balance --holder=$ethaddress --token=$currenttoken_ethereum)"
tokenbalanceeth="$(printf "%.2f\n" $(echo "$tokenFULLbalanceeth" | bc -l))"
tokenFULLbalancematic="$(ethereal --connection=$rpc_polygon token balance --holder=$ethaddress --token=$currenttoken_polygon)"
tokenbalancematic="$(printf "%.2f\n" $(echo "$tokenFULLbalancematic" | bc -l))"
tokenFULLbalancexdai="$(ethereal --connection=$rpc_xdai token balance --holder=$ethaddress --token=$currenttoken_xdai)"
tokenbalancexdai="$(printf "%.2f\n" $(echo "$tokenFULLbalancexdai" | bc -l))"
#tokenFULLbalanceron="$(ethereal --connection=$rpc_ronin token balance --holder=$ethaddress --token=$currenttoken_ronin)"
#tokenbalanceron="$(printf "%.2f\n" $(echo "$tokenFULLbalanceron" | bc -l))"
tokentotalbalance=$(echo "$tokenbalanceeth + $tokenbalancematic + $tokenbalancexdai"|bc)
tokenUSDtotalbalanceget="$(curl -s "https://api.coingecko.com/api/v3/simple/price?ids=$currenttoken_coingeckoname&vs_currencies=usd" | jq -r ".\"$currenttoken_coingeckoname\".usd")"
tokenUSDtotalbalance=$(echo "$tokentotalbalance * $tokenUSDtotalbalanceget"|bc)
#echo "USD: $tokenUSDtotalbalance. Used: $tokentotalbalance and $tokenUSDtotalbalanceget"
}
currenttoken="eth"
processtoken
#-
ethbalanceprepare="$(ethereal ether balance --address=$ethaddress)"
ethbalance="$(echo "$ethbalanceprepare" | sed 's/ Ether//g')"
# https://askubuntu.com/a/1007368/1255788
contents="$(jq ".eth.ethereum = \"$ethbalance\"" /1/config/tokens.json)" && \
echo "${contents}" > /1/config/tokens.json
#-
contents="$(jq ".eth.polygon = \"$tokenbalancematic\"" /1/config/tokens.json)" && \
echo "${contents}" > /1/config/tokens.json
contents="$(jq ".eth.xdai = \"$tokenbalancexdai\"" /1/config/tokens.json)" && \
echo "${contents}" > /1/config/tokens.json
#-
tokentotalbalance=$(echo "$ethbalance + $tokenbalancematic + $tokenbalancexdai"|bc)
tokenUSDtotalbalance=$(echo "$tokentotalbalance * $tokenUSDtotalbalanceget"|bc)
#-
contents="$(jq ".eth.total = \"$tokentotalbalance\"" /1/config/tokens.json)" && \
echo "${contents}" > /1/config/tokens.json
contents="$(jq ".eth.totalusd = \"$tokenUSDtotalbalance\"" /1/config/tokens.json)" && \
echo "${contents}" > /1/config/tokens.json
currenttoken="pla"
processtoken
contents="$(jq ".pla.polygon = \"$tokenbalancematic\"" /1/config/tokens.json)" && \
echo "${contents}" > /1/config/tokens.json
contents="$(jq ".pla.xdai = \"$tokenbalancexdai\"" /1/config/tokens.json)" && \
echo "${contents}" > /1/config/tokens.json
contents="$(jq ".pla.total = \"$tokentotalbalance\"" /1/config/tokens.json)" && \
echo "${contents}" > /1/config/tokens.json
contents="$(jq ".pla.totalusd = \"$tokenUSDtotalbalance\"" /1/config/tokens.json)" && \
echo "${contents}" > /1/config/tokens.json
currenttoken="game"
processtoken
contents="$(jq ".game.polygon = \"$tokenbalancematic\"" /1/config/tokens.json)" && \
echo "${contents}" > /1/config/tokens.json
contents="$(jq ".game.xdai = \"$tokenbalancexdai\"" /1/config/tokens.json)" && \
echo "${contents}" > /1/config/tokens.json
contents="$(jq ".game.total = \"$tokentotalbalance\"" /1/config/tokens.json)" && \
echo "${contents}" > /1/config/tokens.json
contents="$(jq ".game.totalusd = \"$tokenUSDtotalbalance\"" /1/config/tokens.json)" && \
echo "${contents}" > /1/config/tokens.json
currenttoken="mana"
processtoken
contents="$(jq ".mana.ethereum = \"$tokenbalanceeth\"" /1/config/tokens.json)" && \
echo "${contents}" > /1/config/tokens.json
contents="$(jq ".mana.polygon = \"$tokenbalancematic\"" /1/config/tokens.json)" && \
echo "${contents}" > /1/config/tokens.json
contents="$(jq ".mana.xdai = \"$tokenbalancexdai\"" /1/config/tokens.json)" && \
echo "${contents}" > /1/config/tokens.json
contents="$(jq ".mana.total = \"$tokentotalbalance\"" /1/config/tokens.json)" && \
echo "${contents}" > /1/config/tokens.json
contents="$(jq ".mana.totalusd = \"$tokenUSDtotalbalance\"" /1/config/tokens.json)" && \
echo "${contents}" > /1/config/tokens.json
currenttoken="sand"
processtoken
contents="$(jq ".sand.ethereum = \"$tokenbalanceeth\"" /1/config/tokens.json)" && \
echo "${contents}" > /1/config/tokens.json
contents="$(jq ".sand.polygon = \"$tokenbalancematic\"" /1/config/tokens.json)" && \
echo "${contents}" > /1/config/tokens.json
contents="$(jq ".sand.total = \"$tokentotalbalance\"" /1/config/tokens.json)" && \
echo "${contents}" > /1/config/tokens.json
contents="$(jq ".sand.totalusd = \"$tokenUSDtotalbalance\"" /1/config/tokens.json)" && \
echo "${contents}" > /1/config/tokens.json
currenttoken="dai"
processtoken
contents="$(jq ".dai.ethereum = \"$tokenbalanceeth\"" /1/config/tokens.json)" && \
echo "${contents}" > /1/config/tokens.json
contents="$(jq ".dai.polygon = \"$tokenbalancematic\"" /1/config/tokens.json)" && \
echo "${contents}" > /1/config/tokens.json
#-
daibalanceprepare="$(ethereal --connection=$rpc_xdai ether balance --address=$ethaddress)"
daibalance="$(echo "$daibalanceprepare" | sed 's/ Ether//g')"
contents="$(jq ".dai.xdai = \"$daibalance\"" /1/config/tokens.json)" && \
echo "${contents}" > /1/config/tokens.json
tokentotalbalance=$(echo "$tokenbalanceeth + $tokenbalancematic + $daibalance"|bc)
tokenUSDtotalbalance=$(echo "$tokentotalbalance * $tokenUSDtotalbalanceget"|bc)
#-
contents="$(jq ".dai.total = \"$tokentotalbalance\"" /1/config/tokens.json)" && \
echo "${contents}" > /1/config/tokens.json
contents="$(jq ".dai.totalusd = \"$tokenUSDtotalbalance\"" /1/config/tokens.json)" && \
echo "${contents}" > /1/config/tokens.json
currenttoken="gno"
processtoken
contents="$(jq ".gno.ethereum = \"$tokenbalanceeth\"" /1/config/tokens.json)" && \
echo "${contents}" > /1/config/tokens.json
contents="$(jq ".gno.polygon = \"$tokenbalancematic\"" /1/config/tokens.json)" && \
echo "${contents}" > /1/config/tokens.json
contents="$(jq ".gno.xdai = \"$tokenbalancexdai\"" /1/config/tokens.json)" && \
echo "${contents}" > /1/config/tokens.json
contents="$(jq ".gno.total = \"$tokentotalbalance\"" /1/config/tokens.json)" && \
echo "${contents}" > /1/config/tokens.json
contents="$(jq ".gno.totalusd = \"$tokenUSDtotalbalance\"" /1/config/tokens.json)" && \
echo "${contents}" > /1/config/tokens.json
currenttoken="matic"
processtoken
contents="$(jq ".matic.ethereum = \"$tokenbalanceeth\"" /1/config/tokens.json)" && \
echo "${contents}" > /1/config/tokens.json
#-
maticbalanceprepare="$(ethereal --connection=$rpc_polygon ether balance --address=$ethaddress)"
maticbalance="$(echo "$maticbalanceprepare" | sed 's/ Ether//g')"
contents="$(jq ".matic.polygon = \"$maticbalance\"" /1/config/tokens.json)" && \
echo "${contents}" > /1/config/tokens.json
#-
contents="$(jq ".matic.xdai = \"$tokenbalancexdai\"" /1/config/tokens.json)" && \
echo "${contents}" > /1/config/tokens.json
#-
tokentotalbalance=$(echo "$tokenbalanceeth + $maticbalance + $tokenbalancexdai"|bc)
tokenUSDtotalbalance=$(echo "$tokentotalbalance * $tokenUSDtotalbalanceget"|bc)
#-
contents="$(jq ".matic.total = \"$tokentotalbalance\"" /1/config/tokens.json)" && \
echo "${contents}" > /1/config/tokens.json
contents="$(jq ".matic.totalusd = \"$tokenUSDtotalbalance\"" /1/config/tokens.json)" && \
echo "${contents}" > /1/config/tokens.json
currenttoken="slp"
processtoken
contents="$(jq ".slp.ethereum = \"$tokenbalanceeth\"" /1/config/tokens.json)" && \
echo "${contents}" > /1/config/tokens.json
contents="$(jq ".slp.polygon = \"$tokenbalancematic\"" /1/config/tokens.json)" && \
echo "${contents}" > /1/config/tokens.json
contents="$(jq ".slp.xdai = \"$tokenbalancexdai\"" /1/config/tokens.json)" && \
echo "${contents}" > /1/config/tokens.json
#contents="$(jq ".slp.ronin = \"$tokenbalanceronin\"" /1/config/tokens.json)" && \
#echo "${contents}" > /1/config/tokens.json
contents="$(jq ".slp.total = \"$tokentotalbalance\"" /1/config/tokens.json)" && \
echo "${contents}" > /1/config/tokens.json
contents="$(jq ".slp.totalusd = \"$tokenUSDtotalbalance\"" /1/config/tokens.json)" && \
echo "${contents}" > /1/config/tokens.json
currenttoken="axs"
processtoken
contents="$(jq ".axs.ethereum = \"$tokenbalanceeth\"" /1/config/tokens.json)" && \
echo "${contents}" > /1/config/tokens.json
contents="$(jq ".axs.polygon = \"$tokenbalancematic\"" /1/config/tokens.json)" && \
echo "${contents}" > /1/config/tokens.json
contents="$(jq ".axs.xdai = \"$tokenbalancexdai\"" /1/config/tokens.json)" && \
echo "${contents}" > /1/config/tokens.json
#contents="$(jq ".axs.ronin = \"$tokenbalanceronin\"" /1/config/tokens.json)" && \
#echo "${contents}" > /1/config/tokens.json
contents="$(jq ".axs.total = \"$tokentotalbalance\"" /1/config/tokens.json)" && \
echo "${contents}" > /1/config/tokens.json
contents="$(jq ".axs.totalusd = \"$tokenUSDtotalbalance\"" /1/config/tokens.json)" && \
echo "${contents}" > /1/config/tokens.json
currenttoken="usdc"
processtoken
contents="$(jq ".usdc.ethereum = \"$tokenbalanceeth\"" /1/config/tokens.json)" && \
echo "${contents}" > /1/config/tokens.json
contents="$(jq ".usdc.polygon = \"$tokenbalancematic\"" /1/config/tokens.json)" && \
echo "${contents}" > /1/config/tokens.json
contents="$(jq ".usdc.xdai = \"$tokenbalancexdai\"" /1/config/tokens.json)" && \
echo "${contents}" > /1/config/tokens.json
#contents="$(jq ".usdc.ronin = \"$tokenbalanceronin\"" /1/config/tokens.json)" && \
#echo "${contents}" > /1/config/tokens.json
contents="$(jq ".usdc.total = \"$tokentotalbalance\"" /1/config/tokens.json)" && \
echo "${contents}" > /1/config/tokens.json
contents="$(jq ".usdc.totalusd = \"$tokenUSDtotalbalance\"" /1/config/tokens.json)" && \
echo "${contents}" > /1/config/tokens.json
tmp1="$(jq -r '.flof.totalusd' /1/config/tokens.json)"
tmp2="$(jq -r '.eth.totalusd' /1/config/tokens.json)"
tmp3="$(jq -r '.pla.totalusd' /1/config/tokens.json)"
tmp4="$(jq -r '.game.totalusd' /1/config/tokens.json)"
tmp5="$(jq -r '.mana.totalusd' /1/config/tokens.json)"
tmp6="$(jq -r '.sand.totalusd' /1/config/tokens.json)"
tmp7="$(jq -r '.dai.totalusd' /1/config/tokens.json)"
tmp8="$(jq -r '.gno.totalusd' /1/config/tokens.json)"
tmp9="$(jq -r '.matic.totalusd' /1/config/tokens.json)"
tmp10="$(jq -r '.slp.totalusd' /1/config/tokens.json)"
tmp11="$(jq -r '.axs.totalusd' /1/config/tokens.json)"
tmp12="$(jq -r '.usdc.totalusd' /1/config/tokens.json)"
alltokensUSDtotalbalance=$(echo "$tmp1 + $tmp2 + $tmp3 + $tmp4 + $tmp5 + $tmp6 + $tmp7 + $tmp8 + $tmp9 + $tmp10 + $tmp11 + $tmp12"|bc)
contents="$(jq ".usd.total = \"$alltokensUSDtotalbalance\"" /1/config/tokens.json)" && \
echo "${contents}" > /1/config/tokens.json
---------------------------------------------------------------------------------------------------------------------------
<---- /media/daniell/B/git/Floflis/HTML5/Central/c2export/scripts/tokenbalance-others.sh
---------------------------------------------------------------------------------------------------------------------------
---------------------------------------------------------------------------------------------------------------------------
/media/daniell/B/git/Floflis/HTML5/Central/c2export/scripts/test.sh ---->
---------------------------------------------------------------------------------------------------------------------------
#!/bin/bash -e
localcurrency="brl"
#usdlocal_rates="$(curl -s "https://api.coingecko.com/api/v3/simple/price?ids=dai&vs_currencies=$localcurrency" | jq -r '.dai.$localcurrency')"
usdlocal_ratestmp="$(curl -s "https://api.coingecko.com/api/v3/simple/price?ids=dai&vs_currencies=$localcurrency")"
usdlocal_rates="$(echo "$usdlocal_ratestmp" | jq -r ".dai.$localcurrency")"
totalbalance_usd="1000"
totalbalance_local=$(echo "$totalbalance_usd * $usdlocal_rates"|bc)
echo "Total BRL: $totalbalance_local"
---------------------------------------------------------------------------------------------------------------------------
<---- /media/daniell/B/git/Floflis/HTML5/Central/c2export/scripts/test.sh
---------------------------------------------------------------------------------------------------------------------------
---------------------------------------------------------------------------------------------------------------------------
/media/daniell/B/git/Floflis/HTML5/Central/c2export/scripts/personalization-update.sh ---->
---------------------------------------------------------------------------------------------------------------------------
#!/bin/bash -e
background=$(gsettings get org.cinnamon.desktop.background picture-uri | tr -d "'")
cat > /1/config/personalization.json << ENDOFFILE
{
"background": ""
}
ENDOFFILE
contents="$(jq ".background = \"$background\"" /1/config/personalization.json)" && \
echo "${contents}" > /1/config/personalization.json
---------------------------------------------------------------------------------------------------------------------------
<---- /media/daniell/B/git/Floflis/HTML5/Central/c2export/scripts/personalization-update.sh
---------------------------------------------------------------------------------------------------------------------------
---------------------------------------------------------------------------------------------------------------------------
/media/daniell/B/git/Floflis/HTML5/Central/c2export/scripts/fullname.sh ---->
---------------------------------------------------------------------------------------------------------------------------
#!/bin/sh
echo "Getting user's full name..."
user_name="$(logname)"
user_record="$(getent passwd $user_name)"
user_gecos_field="$(echo "$user_record" | cut -d ':' -f 5)"
user_full_name="$(echo "$user_gecos_field" | cut -d ',' -f 1)"
#echo "$user_full_name"
# https://stackoverflow.com/a/833256/5623661 (sorry for crediting the answer from someone who say "hysterical")
echo "It is: $user_full_name"
if [ "$(jq -r '.fullname' /1/config/user.json)" = "null" ]; then
echo "Its your first time using fullname.sh!"
echo "Initializing..."
tmp="$(mktemp)"; cat /1/config/user.json | jq '. + {fullname: ""}' >"$tmp" && mv "$tmp" /1/config/user.json
fi
contents="$(jq ".fullname = \"$user_full_name\"" /1/config/user.json)" && \
echo "${contents}" > /1/config/user.json
if [ "$(jq -r '.fullname' /1/config/user.json)" != "null" ]; then
if [ "$(jq -r '.fullname' /1/config/user.json)" = "$user_full_name" ]; then
echo "Done!"
fi
fi
---------------------------------------------------------------------------------------------------------------------------
<---- /media/daniell/B/git/Floflis/HTML5/Central/c2export/scripts/fullname.sh
---------------------------------------------------------------------------------------------------------------------------
---------------------------------------------------------------------------------------------------------------------------
/media/daniell/B/git/Floflis/HTML5/Central/c2export/scripts/ethaddress-sybil_verify.sh ---->
---------------------------------------------------------------------------------------------------------------------------
#!/bin/sh
if [ "$(jq -r '.sybiltwitter' /1/config/user.json)" = "null" ]; then
echo "Its your first time using 'ethaddress-sybil_verify'!"
echo "Initializing..."
#cat /1/config/user.json | jq '. + {"sybiltwitter": ""}' | tee /1/config/user.json
tmp="$(mktemp)"; cat /1/config/user.json | jq '. + {sybiltwitter: ""}' >"$tmp" && mv "$tmp" /1/config/user.json
fi
letsgo () {
ethaddress="$(jq -r '.eth' /1/config/user.json)"
twitterprofile="$(curl -s "https://raw.githubusercontent.com/Uniswap/sybil-list/master/verified.json" | jq -r ".\"$ethaddress\".twitter.handle")"
if [ "$twitterprofile" = "null" ]; then
contents="$(jq '.sybiltwitter = "no"' /1/config/user.json)" && \
echo "${contents}" > /1/config/user.json
echo "⚠ Account $ethaddress have no verified Twitter profile at Sybil.org"
echo "You can verify your ETH address with your Twitter account, here: https://sybil.org/#/delegates/uniswap"
else
contents="$(jq ".sybiltwitter = \"$twitterprofile\"" /1/config/user.json)" && \
echo "${contents}" > /1/config/user.json
echo "✅ $ethaddress's verified Twitter profile at Sybil.org is:"
echo "$twitterprofile"
fi
}
if online -s; then letsgo; else echo "📶❌ Cannot verify Twitter profile. Your device is offline."; fi
---------------------------------------------------------------------------------------------------------------------------
<---- /media/daniell/B/git/Floflis/HTML5/Central/c2export/scripts/ethaddress-sybil_verify.sh
---------------------------------------------------------------------------------------------------------------------------
---------------------------------------------------------------------------------------------------------------------------
/media/daniell/B/git/Floflis/HTML5/Central/c2export/scripts/ensname.sh ---->
---------------------------------------------------------------------------------------------------------------------------
#!/bin/sh
echo "Getting user's ENS name..."
ethaddress="$(jq -r '.eth' /1/config/user.json)"
ensname="$(ethereal ens domain get --address=$ethaddress)"
echo "It is: $ethaddress"
if [ "$(jq -r '.ens' /1/config/user.json)" = "null" ]; then
echo "Its your first time using ensname.sh!"
echo "Initializing..."
tmp="$(mktemp)"; cat /1/config/user.json | jq '. + {ens: ""}' >"$tmp" && mv "$tmp" /1/config/user.json
fi
contents="$(jq ".ens = \"$ensname\"" /1/config/user.json)" && \
echo "${contents}" > /1/config/user.json
if [ "$(jq -r '.ens' /1/config/user.json)" != "null" ]; then
if [ "$(jq -r '.ens' /1/config/user.json)" = "$ensname" ]; then
echo "Done!"
fi
fi
---------------------------------------------------------------------------------------------------------------------------
<---- /media/daniell/B/git/Floflis/HTML5/Central/c2export/scripts/ensname.sh
---------------------------------------------------------------------------------------------------------------------------
---------------------------------------------------------------------------------------------------------------------------
/media/daniell/B/git/Floflis/HTML5/Central/c2export/scripts/bashc2-communication_ethgas.sh ---->
---------------------------------------------------------------------------------------------------------------------------
#!/bin/bash -e
if [ ! -f /tmp/bashc2-communication_ethgas.json ]; then
echo "Starting bashc2-communication_ethgas.sh..."
cat > /tmp/bashc2-communication_ethgas.json << ENDOFFILE
{
"ethgas_gasno": "",
"ethgas_icon": "",
"ethgas_oneline": ""
}
ENDOFFILE
fi
ethgas_gasno="$(ethgas gasno)"
contents="$(jq ".ethgas_gasno = \"$ethgas_gasno\"" /tmp/bashc2-communication_ethgas.json)" && \
echo "${contents}" > /tmp/bashc2-communication_ethgas.json
ethgas_icon="$(ethgas icon)"
contents="$(jq ".ethgas_icon = \"$ethgas_icon\"" /tmp/bashc2-communication_ethgas.json)" && \
echo "${contents}" > /tmp/bashc2-communication_ethgas.json
ethgas_oneline="$(ethgas oneline)"
contents="$(jq ".ethgas_oneline = \"$ethgas_oneline\"" /tmp/bashc2-communication_ethgas.json)" && \
echo "${contents}" > /tmp/bashc2-communication_ethgas.json
---------------------------------------------------------------------------------------------------------------------------
<---- /media/daniell/B/git/Floflis/HTML5/Central/c2export/scripts/bashc2-communication_ethgas.sh
---------------------------------------------------------------------------------------------------------------------------
---------------------------------------------------------------------------------------------------------------------------
/media/daniell/B/git/Floflis/HTML5/Central/c2export/scripts/nfts-parse.sh ---->
---------------------------------------------------------------------------------------------------------------------------
#!/bin/bash -e
ethaddress="$(jq -r '.eth' /1/config/user.json)"
rpc_polygon="https://rpc-mainnet.maticvigil.com/"
rpc_xdai="https://rpc.gnosischain.com/"
if [ "$(jq -r '.danimesqart' /1/config/nfts.json)" = "null" ] || [ "$(jq -r '.danimesqart' /1/config/nfts.json)" = "" ]; then
echo "Its your first time using nfts-parse.sh!"
echo "Initializing..."
cat > /1/config/nfts.json << ENDOFFILE
{
"danimesqart": {
"balance": "",
"items": [{}]
}
}
ENDOFFILE
fi
if [ "$(jq -r '.expansionpunks' /1/config/nfts.json)" = "null" ]; then
echo "Initializing for ExpansionPunks NFT..."
#tmp="$(mktemp)"; cat /1/config/nfts.json | jq '. + "x":{"1":[{"balance":"","metadata":"","name":"","description":"","image":""}]}' >"$tmp" && mv "$tmp" /1/config/nfts.json
#tmp0="$(mktemp)"; cat /1/config/nfts.json | jq '. + "x":{"1":[{"balance":"","metadata":"","name":"","description":"","image":""}]}' >"$tmp" && mv "$tmp" /1/config/nfts.json
#tmp="$(mktemp)"; cat /1/config/nfts.json | jq '. + "x":{"1":[{"balance":"","metadata":"","name":"","description":"","image":""}]}' >"$tmp" && mv "$tmp" /1/config/nfts.json
#tmp="$(mktemp)"; cat /1/config/nfts.json | jq '. + {"x":{"1":[{"balance":"","metadata":"","name":"","description":"","image":""}]}' >"$tmp" && mv "$tmp" /1/config/nfts.json
#tmp="$(mktemp)"; cat /1/config/nfts.json | jq '. + {"x":{"1":[{"balance":"","metadata":"","name":"","description":"","image":""}]}}' >"$tmp" && mv "$tmp" /1/config/nfts.json
tmp="$(mktemp)"; cat /1/config/nfts.json | jq '. + {"expansionpunks":{"balance":"","items": [{}]}}' >"$tmp" && mv "$tmp" /1/config/nfts.json
fi
if [ "$(jq -r '.axiepet' /1/config/nfts.json)" = "null" ]; then
echo "Initializing for Axie pet NFT..."
tmp="$(mktemp)"; cat /1/config/nfts.json | jq '. + {"axiepet":{"balance":"","items": [{}]}}' >"$tmp" && mv "$tmp" /1/config/nfts.json
fi
if [ "$(jq -r '.rockstarsofepns' /1/config/nfts.json)" = "null" ]; then
echo "Initializing for Rockstars of EPNS NFT..."
tmp="$(mktemp)"; cat /1/config/nfts.json | jq '. + {"rockstarsofepns":{"balance":"","items": [{}]}}' >"$tmp" && mv "$tmp" /1/config/nfts.json
fi
if [ "$(jq -r '.poap' /1/config/nfts.json)" = "null" ]; then
echo "Initializing for Proof of Attendance (PoAP) badges NFT..."
tmp="$(mktemp)"; cat /1/config/nfts.json | jq '. + {"poap":{"balance":"","items": [{}]}}' >"$tmp" && mv "$tmp" /1/config/nfts.json
fi
if [ "$(jq -r '.ens' /1/config/nfts.json)" = "null" ]; then
echo "Initializing for ENS domains NFT..."
tmp="$(mktemp)"; cat /1/config/nfts.json | jq '. + {"ens":{"balance":"","items": [{}]}}' >"$tmp" && mv "$tmp" /1/config/nfts.json
fi
if [ "$(jq -r '.cryptokitties' /1/config/nfts.json)" = "null" ]; then
echo "Initializing for CryptoKitties NFT..."
tmp="$(mktemp)"; cat /1/config/nfts.json | jq '. + {"cryptokitties":{"balance":"","items": [{}]}}' >"$tmp" && mv "$tmp" /1/config/nfts.json
fi
processbalances () {
if [ "$currentnft" = "danimesqart" ]; then
currentnft_ethereum="0x1b6b3026B7F5531086f3B8e6CC31C6564BBE2849"
currentnft_polygon=""
currentnft_xdai=""
currentnft_abi="universal-abi.json"
echo "Updating Daniell Mesquita's Arts NFT..."
fi
if [ "$currentnft" = "expansionpunks" ]; then
currentnft_ethereum="0x0d0167a823c6619d430b1a96ad85b888bcf97c37"
currentnft_polygon=""
currentnft_xdai=""
currentnft_abi="universal-abi.json"
echo "Updating ExpansionPunks NFT..."
fi
if [ "$currentnft" = "axiepet" ]; then
currentnft_ethereum="0xf5b0a3efb8e8e4c201e2a935f110eaaf3ffecb8d"
currentnft_polygon=""
currentnft_xdai=""
currentnft_abi="abi-axie.json"
echo "Updating Axie pet NFT..."
fi
if [ "$currentnft" = "rockstarsofepns" ]; then
currentnft_ethereum="0x3f8C2152b79276b78315CAF66cCF951780580A8a"
currentnft_polygon=""
currentnft_xdai=""
currentnft_abi="abi-rockstars_of_epns.json"
echo "Updating Rockstars of EPNS NFT..."
fi
if [ "$currentnft" = "poap" ]; then
currentnft_ethereum=""
currentnft_polygon=""
currentnft_xdai="0x22C1f6050E56d2876009903609a2cC3fEf83B415"
currentnft_abi="universal-abi.json"
echo "Updating Proof of Attendance (PoAP) badges NFT..."
fi
if [ "$currentnft" = "ens" ]; then
currentnft_ethereum="0x57f1887a8bf19b14fc0df6fd9b2acc9af147ea85"
currentnft_polygon=""
currentnft_xdai=""
currentnft_abi="universal-abi.json"
echo "Updating ENS domains NFT..."
fi
if [ "$currentnft" = "cryptokitties" ]; then
currentnft_ethereum="0x06012c8cf97bead5deae237070f9587f8e7a266d"
currentnft_polygon=""
currentnft_xdai=""
currentnft_abi="universal-abi.json"
echo "Updating CryptoKitties NFT..."
fi
if [ "$currentnft_ethereum" != "" ]; then
nftFULLbalanceeth="$(ethereal contract call --contract=$currentnft_ethereum --abi=abis/$currentnft_abi --call="balanceOf($ethaddress)" --from=$ethaddress)"
#nftbalanceethprepare="$(printf "%.2f\n" $(echo "$nftFULLbalanceeth" | bc -l))"
#nftbalanceeth="$(echo "$nftbalanceethprepare" | tr -d "[" | tr -d "]")"
nftbalanceeth="$(echo "$nftFULLbalanceeth" | tr -d "[" | tr -d "]")"
echo "Balance: $nftbalanceeth"
else
if [ "$currentnft_polygon" != "" ]; then
nftFULLbalancematic="$(ethereal --connection=$rpc_polygon contract call --contract=$currentnft_polygon --abi=abis/$currentnft_abi --call="balanceOf($ethaddress)" --from=$ethaddress)"
#nftbalancematicprepare="$(printf "%.2f\n" $(echo "$nftFULLbalancematic" | bc -l))"
#nftbalancematic="$(echo "$nftbalancematicprepare" | tr -d "[" | tr -d "]")"
nftbalancematic="$(echo "$nftFULLbalancematic" | tr -d "[" | tr -d "]")"
echo "Balance: $nftbalancematic"
fi
if [ "$currentnft_xdai" != "" ]; then
nftFULLbalancexdai="$(ethereal --connection=$rpc_xdai contract call --contract=$currentnft_xdai --abi=abis/$currentnft_abi --call="balanceOf($ethaddress)" --from=$ethaddress)"
#nftbalancexdaiprepare="$(printf "%.2f\n" $(echo "$nftFULLbalancexdai" | bc -l))"
#nftbalancexdai="$(echo "$nftbalancexdaiprepare" | tr -d "[" | tr -d "]")"
nftbalancexdai="$(echo "$nftFULLbalancexdai" | tr -d "[" | tr -d "]")"
echo "Balance: $nftbalancexdai"
fi
fi
#nfttotalbalance=$(echo "$nftbalanceeth + $nftbalancematic + $nftbalancexdai"|bc)
#echo "total bal: $nfttotalbalance"
}
currentnft="danimesqart"
processbalances
contents="$(jq ".danimesqart.balance = \"$nftbalanceeth\"" /1/config/nfts.json)" && \
echo "${contents}" > /1/config/nfts.json
currentnft="expansionpunks"
processbalances
contents="$(jq ".expansionpunks.balance = \"$nftbalanceeth\"" /1/config/nfts.json)" && \
echo "${contents}" > /1/config/nfts.json
currentnft="axiepet"
processbalances
contents="$(jq ".axiepet.balance = \"$nftbalanceeth\"" /1/config/nfts.json)" && \
echo "${contents}" > /1/config/nfts.json
currentnft="rockstarsofepns"
processbalances
contents="$(jq ".rockstarsofepns.balance = \"$nftbalanceeth\"" /1/config/nfts.json)" && \
echo "${contents}" > /1/config/nfts.json
currentnft="poap"
processbalances
contents="$(jq ".poap.balance = \"$nftbalancexdai\"" /1/config/nfts.json)" && \
echo "${contents}" > /1/config/nfts.json
currentnft="ens"
processbalances
contents="$(jq ".ens.balance = \"$nftbalanceeth\"" /1/config/nfts.json)" && \
echo "${contents}" > /1/config/nfts.json
currentnft="cryptokitties"
processbalances
contents="$(jq ".cryptokitties.balance = \"$nftbalanceeth\"" /1/config/nfts.json)" && \
echo "${contents}" > /1/config/nfts.json
#----
process_individual_nfts () {
if [ "$currentnft" = "danimesqart" ]; then
currentnft_ethereum="0x1b6b3026B7F5531086f3B8e6CC31C6564BBE2849"
currentnft_polygon=""
currentnft_xdai=""
currentnft_abi="universal-abi.json"
echo "Updating Daniell Mesquita's Arts NFT..."
fi
if [ "$currentnft" = "expansionpunks" ]; then
currentnft_ethereum="0x0d0167a823c6619d430b1a96ad85b888bcf97c37"
currentnft_polygon=""
currentnft_xdai=""
currentnft_abi="universal-abi.json"
echo "Updating ExpansionPunks NFT..."
fi
if [ "$currentnft" = "axiepet" ]; then
currentnft_ethereum="0xf5b0a3efb8e8e4c201e2a935f110eaaf3ffecb8d"
currentnft_polygon=""
currentnft_xdai=""
currentnft_abi="abi-axie.json"
echo "Updating Axie pet NFT..."
fi
if [ "$currentnft" = "rockstarsofepns" ]; then
currentnft_ethereum="0x3f8C2152b79276b78315CAF66cCF951780580A8a"
currentnft_polygon=""
currentnft_xdai=""
currentnft_abi="abi-rockstars_of_epns.json"
echo "Updating Rockstars of EPNS NFT..."
fi
if [ "$currentnft" = "poap" ]; then
currentnft_ethereum=""
currentnft_polygon=""
currentnft_xdai="0x22C1f6050E56d2876009903609a2cC3fEf83B415"
currentnft_abi="universal-abi.json"
echo "Updating Proof of Attendance (PoAP) badges NFT..."
fi
if [ "$currentnft" = "ens" ]; then
currentnft_ethereum="0x57f1887a8bf19b14fc0df6fd9b2acc9af147ea85"
currentnft_polygon=""
currentnft_xdai=""
currentnft_abi="universal-abi.json"
echo "Updating ENS domains NFT..."
fi
if [ "$currentnft" = "cryptokitties" ]; then
currentnft_ethereum="0x06012c8cf97bead5deae237070f9587f8e7a266d"
currentnft_polygon=""
currentnft_xdai=""
currentnft_abi="universal-abi.json"
echo "Updating CryptoKitties NFT..."
fi
if [ "$currentnft_ethereum" != "" ]; then
nftIDprepare="$(ethereal contract call --contract=$currentnft_ethereum --abi=abis/$currentnft_abi --call="tokenOfOwnerByIndex($ethaddress,0)" --from=$ethaddress)"
echo "first test: $nftIDprepare"
loopmile="0"
# until [ "$nftFULLbalanceeth" = "Failed to call tokenOfOwnerByIndex: execution reverted" ] || [ "$nftFULLbalanceeth" = "Failed to call tokenOfOwnerByIndex: execution reverted: ERC721Enumerable: owner index out of bounds" ]
until [[ "$nftIDprepare" != "["*"]" ]]
do
echo "Test: $nftIDprepare"
loopmile="$(($loopmile + 1))"
echo "Current loop: $loopmile"
echo "-"
ethindex="$(($loopmile - 1))"
echo "Current index: $ethindex"
echo "-"
nftIDprepare="$(ethereal contract call --contract=$currentnft_ethereum --abi=abis/$currentnft_abi --call="tokenOfOwnerByIndex($ethaddress,$ethindex)" --from=$ethaddress)"
nftID="$(echo "$nftIDprepare" | tr -d "[" | tr -d "]")"
echo "$nftID"
if [[ "$nftIDprepare" = "["*"]" ]]; then
#tmp="$(mktemp)"; cat /1/config/nfts.json | jq ".\"$currentnft\" + {\"$loopmile\":[{"id": "","metadata":"","name":"","description":"","image":""}]}" >"$tmp" && mv "$tmp" /1/config/nfts.json
#tmp="$(mktemp)"; cat /1/config/nfts.json | jq ".\"$currentnft\" + {\"$loopmile\":[{\"id\": \"\",\"metadata\":\"\",\"name\":\"\",\"description\":\"\",\"image\":\"\"}]}" >"$tmp" && mv "$tmp" /1/config/nfts.json
#tmp="$(mktemp)"; cat /1/config/nfts.json | jq '.danimesqart + {"2":[{"id": "","metadata":"","name":"","description":"","image":""}]}' >"$tmp" && mv "$tmp" /1/config/nfts.json
#tmp="$(mktemp)"; cat /1/config/nfts.json | jq '.danimesqart + "2":[{"id": "","metadata":"","name":"","description":"","image":""}]' >"$tmp" && mv "$tmp" /1/config/nfts.json
#tmp="$(mktemp)"; cat /1/config/nfts.json | jq '. + {"danimesqart":{"balance":"","1":[{"id": "","metadata":"","name":"","description":"","image":""}]}}' >"$tmp" && mv "$tmp" /1/config/nfts.json
#tmp="$(mktemp)"; cat /1/config/nfts.json | jq ". + {"danimesqart":{"balance":"","1":[{"id": "","metadata":"","name":"","description":"","image":""}]}}" >"$tmp" && mv "$tmp" /1/config/nfts.json
#tmp="$(mktemp)"; cat /1/config/nfts.json | jq ". + {\"danimesqart\":{\"balance\":\"\",\"1\":[{\"id\": \"\",\"metadata\":\"\",\"name\":\"\",\"description\":\"\",\"image\":\"\"}]}}" >"$tmp" && mv "$tmp" /1/config/nfts.json #worked
#tmp="$(mktemp)"; cat /1/config/nfts.json | jq '.danimesqart + {"balance":"","1":[{"id": "","metadata":"","name":"","description":"","image":""}]}' >"$tmp" && mv "$tmp" /1/config/nfts.json
#tmp="$(mktemp)"; cat /1/config/nfts.json | jq '.{danimesqart} + {"balance":"","1":[{"id": "","metadata":"","name":"","description":"","image":""}]}' >"$tmp" && mv "$tmp" /1/config/nfts.json
#tmp="$(mktemp)"; cat /1/config/nfts.json | jq '.danimesqart + {"1":[{"id": "","metadata":"","name":"","description":"","image":""}]}' >"$tmp" && mv "$tmp" /1/config/nfts.json
#tmp="$(mktemp)"; cat /1/config/nfts.json | jq '.danimesqart += {other_key: "new_val"}' >"$tmp" && mv "$tmp" /1/config/nfts.json #worked, thanks to https://gist.github.com/joar/776b7d176196592ed5d8?permalink_comment_id=3185021#gistcomment-3185021
#tmp="$(mktemp)"; cat /1/config/nfts.json | jq '.danimesqart += {"2":[{"id": "","metadata":"","name":"","description":"","image":""}]}' >"$tmp" && mv "$tmp" /1/config/nfts.json #worked
#tmp="$(mktemp)"; cat /1/config/nfts.json | jq ".danimesqart += {\"2\":[{\"id\": \"\",\"metadata\":\"\",\"name\":\"\",\"description\":\"\",\"image\":\"\"}]}" >"$tmp" && mv "$tmp" /1/config/nfts.json #worked
#tmp="$(mktemp)"; cat /1/config/nfts.json | jq ".\"$currentnft\" += {\"2\":[{\"id\": \"\",\"metadata\":\"\",\"name\":\"\",\"description\":\"\",\"image\":\"\"}]}" >"$tmp" && mv "$tmp" /1/config/nfts.json #worked
#tmp="$(mktemp)"; cat /1/config/nfts.json | jq ".\"$currentnft\" += {\"$loopmile\":[{\"id\": \"\",\"metadata\":\"\",\"name\":\"\",\"description\":\"\",\"image\":\"\"}]}" >"$tmp" && mv "$tmp" /1/config/nfts.json #worked, but I'll now insert items into a "items" array
tmp="$(mktemp)"; cat /1/config/nfts.json | jq ".\"$currentnft\".items[] += {\"$loopmile\":[{\"id\": \"\",\"metadata\":\"\",\"name\":\"\",\"description\":\"\",\"image\":\"\",\"blockchain\":\"\"}]}" >"$tmp" && mv "$tmp" /1/config/nfts.json
#contents="$(jq ".\"$currentnft\".\"$loopmile\"[].id = \"$nftID\"" /1/config/nfts.json)" && \
contents="$(jq ".\"$currentnft\".items[].\"$loopmile\"[].id = \"$nftID\"" /1/config/nfts.json)" && \
echo "${contents}" > /1/config/nfts.json
contents="$(jq ".\"$currentnft\".items[].\"$loopmile\"[].blockchain = \"1\"" /1/config/nfts.json)" && \
echo "${contents}" > /1/config/nfts.json
fi
done
loopmile="0"
else
if [ "$currentnft_polygon" != "" ]; then
nftIDprepare="$(ethereal --connection=$rpc_polygon contract call --contract=$currentnft_polygon --abi=abis/$currentnft_abi --call="tokenOfOwnerByIndex($ethaddress,0)" --from=$ethaddress)"
echo "first test: $nftIDprepare"
loopmile="0"
until [[ "$nftIDprepare" != "["*"]" ]]
do
echo "Test: $nftIDprepare"
loopmile="$(($loopmile + 1))"
echo "Current loop: $loopmile"
echo "-"
ethindex="$(($loopmile - 1))"
echo "Current index: $ethindex"
echo "-"
nftIDprepare="$(ethereal --connection=$rpc_polygon contract call --contract=$currentnft_polygon --abi=abis/$currentnft_abi --call="tokenOfOwnerByIndex($ethaddress,$ethindex)" --from=$ethaddress)"
nftID="$(echo "$nftIDprepare" | tr -d "[" | tr -d "]")"
echo "$nftID"
if [[ "$nftIDprepare" = "["*"]" ]]; then
tmp="$(mktemp)"; cat /1/config/nfts.json | jq ".\"$currentnft\".items[] += {\"$loopmile\":[{\"id\": \"\",\"metadata\":\"\",\"name\":\"\",\"description\":\"\",\"image\":\"\",\"blockchain\":\"\"}]}" >"$tmp" && mv "$tmp" /1/config/nfts.json
contents="$(jq ".\"$currentnft\".items[].\"$loopmile\"[].id = \"$nftID\"" /1/config/nfts.json)" && \
echo "${contents}" > /1/config/nfts.json
contents="$(jq ".\"$currentnft\".items[].\"$loopmile\"[].blockchain = \"137\"" /1/config/nfts.json)" && \
echo "${contents}" > /1/config/nfts.json
fi
done
loopmile="0"
fi
if [ "$currentnft_xdai" != "" ]; then
nftIDprepare="$(ethereal --connection=$rpc_xdai contract call --contract=$currentnft_xdai --abi=abis/$currentnft_abi --call="tokenOfOwnerByIndex($ethaddress,0)" --from=$ethaddress)"
echo "first test: $nftIDprepare"
loopmile="0"
until [[ "$nftIDprepare" != "["*"]" ]]
do
echo "Test: $nftIDprepare"
loopmile="$(($loopmile + 1))"
echo "Current loop: $loopmile"
echo "-"
ethindex="$(($loopmile - 1))"
echo "Current index: $ethindex"
echo "-"
nftIDprepare="$(ethereal --connection=$rpc_xdai contract call --contract=$currentnft_xdai --abi=abis/$currentnft_abi --call="tokenOfOwnerByIndex($ethaddress,$ethindex)" --from=$ethaddress)"
nftID="$(echo "$nftIDprepare" | tr -d "[" | tr -d "]")"
echo "$nftID"
if [[ "$nftIDprepare" = "["*"]" ]]; then
tmp="$(mktemp)"; cat /1/config/nfts.json | jq ".\"$currentnft\".items[] += {\"$loopmile\":[{\"id\": \"\",\"metadata\":\"\",\"name\":\"\",\"description\":\"\",\"image\":\"\",\"blockchain\":\"\"}]}" >"$tmp" && mv "$tmp" /1/config/nfts.json
contents="$(jq ".\"$currentnft\".items[].\"$loopmile\"[].id = \"$nftID\"" /1/config/nfts.json)" && \
echo "${contents}" > /1/config/nfts.json
contents="$(jq ".\"$currentnft\".items[].\"$loopmile\"[].blockchain = \"100\"" /1/config/nfts.json)" && \
echo "${contents}" > /1/config/nfts.json
fi
done
loopmile="0"
fi
fi
}
currentnft="danimesqart"
process_individual_nfts
#contents="$(jq ".danimesqart.\"1\"[].balance = \"$nftbalanceeth\"" /1/config/nfts.json)" && \
#echo "${contents}" > /1/config/nfts.json
currentnft="expansionpunks"
process_individual_nfts
currentnft="axiepet"
process_individual_nfts
currentnft="rockstarsofepns"
process_individual_nfts
currentnft="poap"
process_individual_nfts
currentnft="ens"
process_individual_nfts
currentnft="cryptokitties"
process_individual_nfts
---------------------------------------------------------------------------------------------------------------------------
<---- /media/daniell/B/git/Floflis/HTML5/Central/c2export/scripts/nfts-parse.sh
---------------------------------------------------------------------------------------------------------------------------