forked from STI/Astroport.ONE
Upload your file to Astroport
This commit is contained in:
parent
1e74e8ad87
commit
a48fd636ee
11
12345.sh
11
12345.sh
|
@ -297,8 +297,8 @@ echo "" > ~/.zen/tmp/.ipfsgw.bad.twt # TODO move in 20h12.sh
|
||||||
[[ $(cat ~/.zen/tmp/.ipfsgw.bad.twt | grep -w $nicegw) ]] && echo "<<< BAD GATEWAY >>> $nicegw" && continue
|
[[ $(cat ~/.zen/tmp/.ipfsgw.bad.twt | grep -w $nicegw) ]] && echo "<<< BAD GATEWAY >>> $nicegw" && continue
|
||||||
gum=$(echo "$nicegw" | sed "s~:hash~$DATAID~g")
|
gum=$(echo "$nicegw" | sed "s~:hash~$DATAID~g")
|
||||||
echo "LOADING $gum"
|
echo "LOADING $gum"
|
||||||
curl -m 3 -so ~/.zen/tmp/${IPFSNODEID}/${ASTRONAUTENS}/${APPNAME}/${MOATS}.data.${WHAT} "$gum"
|
curl -m 5 -so ~/.zen/tmp/${IPFSNODEID}/${ASTRONAUTENS}/${APPNAME}/${MOATS}.data.${WHAT} "$gum"
|
||||||
[[ $? != 0 ]] && echo "(✜‿‿✜) $nicegw BYPASSING"; echo
|
[[ $? != 0 ]] && echo "(✜‿‿✜) BYPASSING"; echo
|
||||||
|
|
||||||
if [[ -s ~/.zen/tmp/${IPFSNODEID}/${ASTRONAUTENS}/${APPNAME}/${MOATS}.data.${WHAT} ]]; then
|
if [[ -s ~/.zen/tmp/${IPFSNODEID}/${ASTRONAUTENS}/${APPNAME}/${MOATS}.data.${WHAT} ]]; then
|
||||||
|
|
||||||
|
@ -306,8 +306,9 @@ echo "" > ~/.zen/tmp/.ipfsgw.bad.twt # TODO move in 20h12.sh
|
||||||
GOAL=$(ipfs add -q ~/.zen/tmp/${IPFSNODEID}/${ASTRONAUTENS}/${APPNAME}/${MOATS}.data.${WHAT})
|
GOAL=$(ipfs add -q ~/.zen/tmp/${IPFSNODEID}/${ASTRONAUTENS}/${APPNAME}/${MOATS}.data.${WHAT})
|
||||||
|
|
||||||
if [[ ${GOAL} != ${DATAID} ]]; then
|
if [[ ${GOAL} != ${DATAID} ]]; then
|
||||||
echo " (╥☁╥ ) - $nicegw ${WHAT} FORMAT ERROR - (╥☁╥ )"
|
echo " (╥☁╥ ) - BAD ${WHAT} FORMAT ERROR ${MIME} - (╥☁╥ )"
|
||||||
ipfs pin rm /ipfs/${GOAL}
|
ipfs pin rm /ipfs/${GOAL}
|
||||||
|
rm ~/.zen/tmp/${IPFSNODEID}/${ASTRONAUTENS}/${APPNAME}/${MOATS}.data.${WHAT}
|
||||||
# NOT A JSON AVOID BANISHMENT
|
# NOT A JSON AVOID BANISHMENT
|
||||||
echo $nicegw >> ~/.zen/tmp/.ipfsgw.bad.twt
|
echo $nicegw >> ~/.zen/tmp/.ipfsgw.bad.twt
|
||||||
continue
|
continue
|
||||||
|
@ -317,12 +318,12 @@ echo "" > ~/.zen/tmp/.ipfsgw.bad.twt # TODO move in 20h12.sh
|
||||||
ipfs pin add /ipfs/${GOAL}
|
ipfs pin add /ipfs/${GOAL}
|
||||||
## + TW ADD (new_file_in_astroport.sh)
|
## + TW ADD (new_file_in_astroport.sh)
|
||||||
|
|
||||||
echo "(♥‿‿♥) $nicegw OK"; echo
|
echo "(♥‿‿♥) FILE UPLOAD OK"; echo
|
||||||
break
|
break
|
||||||
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
echo " (⇀‿‿↼) - $nicegw TIMEOUT - (⇀‿‿↼)"
|
echo " (⇀‿‿↼) - TIMEOUT - (⇀‿‿↼)"
|
||||||
continue
|
continue
|
||||||
|
|
||||||
fi
|
fi
|
||||||
|
|
|
@ -484,15 +484,13 @@ fi
|
||||||
mkdir -p ~/astroport/${CAT}/${MEDIAID}/
|
mkdir -p ~/astroport/${CAT}/${MEDIAID}/
|
||||||
mv /tmp/screen.png ~/astroport/${CAT}/${MEDIAID}/screen.png
|
mv /tmp/screen.png ~/astroport/${CAT}/${MEDIAID}/screen.png
|
||||||
|
|
||||||
mv -f "${FILE_PATH}/${FILE_NAME}" "$HOME/astroport/${CAT}/${MEDIAID}/${TITLE}.${FILE_EXT}"
|
mv -f "${FILE_PATH}/${FILE_NAME}" "$HOME/astroport/${CAT}/${MEDIAID}/${TITLE}${SAISON}.${FILE_EXT}"
|
||||||
|
|
||||||
if [ $? == 0 ]; then
|
if [ $? != 0 ]; then
|
||||||
zenity --warning --width ${large} --text "Votre fichier ~/astroport/${CAT}/${MEDIAID}/${TITLE}.${FILE_EXT} est prêt à embarquer. Cliquez sur OK, nous allons préparer son script d'ajout à Astroport..."
|
|
||||||
else
|
|
||||||
zenity --warning --width ${large} --text "Impossible de déplacer votre fichier ${FILE_PATH}/${FILE_NAME} vers ~/astroport - EXIT -"
|
zenity --warning --width ${large} --text "Impossible de déplacer votre fichier ${FILE_PATH}/${FILE_NAME} vers ~/astroport - EXIT -"
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
FILE_NAME="${TITLE}.${FILE_EXT}"
|
FILE_NAME="${TITLE}${SAISON}.${FILE_EXT}"
|
||||||
|
|
||||||
|
|
||||||
## CREATE "~/astroport/${CAT}/${MEDIAID}/ajouter_video.txt"
|
## CREATE "~/astroport/${CAT}/${MEDIAID}/ajouter_video.txt"
|
||||||
|
@ -538,7 +536,7 @@ echo "${CAT};${MEDIAID};${YEAR};${TITLE};${SAISON};${GENRES};_IPNSKEY_;${RES};/i
|
||||||
## CREATE SIMPLE JSON (REMOVE== it ?
|
## CREATE SIMPLE JSON (REMOVE== it ?
|
||||||
jq -n --arg ts "$MEDIAID" --arg title "$TITLE" --arg desc "$DESCRIPTION" --arg htag "$HASHTAG" '{"timestamp":$ts,"ipfs":"_IPFSREPFILEID_","ipns":"_IPNSKEY_","title":$title,"desc":$desc,"tag":$htag}' > ~/astroport/${CAT}/${MEDIAID}/video.json
|
jq -n --arg ts "$MEDIAID" --arg title "$TITLE" --arg desc "$DESCRIPTION" --arg htag "$HASHTAG" '{"timestamp":$ts,"ipfs":"_IPFSREPFILEID_","ipns":"_IPNSKEY_","title":$title,"desc":$desc,"tag":$htag}' > ~/astroport/${CAT}/${MEDIAID}/video.json
|
||||||
## MOVE FILE TO IMPORT ZONE
|
## MOVE FILE TO IMPORT ZONE
|
||||||
mv -f "${FILE_PATH}/${FILE_NAME}" "$HOME/astroport/${CAT}/${MEDIAID}/${TITLE}.${FILE_EXT}"
|
mv -f "${FILE_PATH}/${FILE_NAME}" "$HOME/astroport/${CAT}/${MEDIAID}/${TITLE}${SAISON}.${FILE_EXT}"
|
||||||
FILE_NAME="${TITLE}.${FILE_EXT}"
|
FILE_NAME="${TITLE}.${FILE_EXT}"
|
||||||
|
|
||||||
;;
|
;;
|
||||||
|
@ -556,9 +554,9 @@ echo "${CAT};${MEDIAID};${YEAR};${TITLE};${SAISON};${GENRES};_IPNSKEY_;${RES};/i
|
||||||
esac
|
esac
|
||||||
|
|
||||||
## Extract thumbnail
|
## Extract thumbnail
|
||||||
MIME=$(file --mime-type -b $HOME/astroport/${CAT}/${MEDIAID}/${TITLE}.${FILE_EXT})
|
MIME=$(file --mime-type -b $HOME/astroport/${CAT}/${MEDIAID}/${TITLE}${SAISON}.${FILE_EXT})
|
||||||
|
|
||||||
[[ $(echo $MIME | grep video) ]] && ffmpeg -i $HOME/astroport/${CAT}/${MEDIAID}/${TITLE}.${FILE_EXT} -r 1/300 -vf scale=-1:120 -vcodec png $HOME/astroport/${CAT}/${MEDIAID}/thumbnail.png
|
[[ $(echo $MIME | grep video) ]] && ffmpeg -i $HOME/astroport/${CAT}/${MEDIAID}/${TITLE}${SAISON}.${FILE_EXT} -r 1/300 -vf scale=-1:120 -vcodec png $HOME/astroport/${CAT}/${MEDIAID}/thumbnail.png
|
||||||
[[ ! -f ~/astroport/${CAT}/${MEDIAID}/thumbnail.png ]] && echo "DEFAULT THUMBNAIL NEEDED"
|
[[ ! -f ~/astroport/${CAT}/${MEDIAID}/thumbnail.png ]] && echo "DEFAULT THUMBNAIL NEEDED"
|
||||||
|
|
||||||
########################################################################
|
########################################################################
|
||||||
|
|
|
@ -456,6 +456,9 @@ then
|
||||||
[[ $CAT == "Film" ]] && tdb="movie"
|
[[ $CAT == "Film" ]] && tdb="movie"
|
||||||
[[ $CAT == "Serie" ]] && tdb="tv"
|
[[ $CAT == "Serie" ]] && tdb="tv"
|
||||||
|
|
||||||
|
# CapitalGluedTitle
|
||||||
|
CapitalGluedTitle=$(echo "${TITLE}" | sed -r 's/\<./\U&/g' | sed 's/ //g')
|
||||||
|
|
||||||
GENRE=$(cat ~/astroport/${TyPE}/${REFERENCE}/ajouter_video.txt | cut -d ';' -f 6 | sed 's/|/ /g' | jq -r '@csv' | sed 's/ /_/g' | sed 's/,/ /g' | sed 's/\"//g' )
|
GENRE=$(cat ~/astroport/${TyPE}/${REFERENCE}/ajouter_video.txt | cut -d ';' -f 6 | sed 's/|/ /g' | jq -r '@csv' | sed 's/ /_/g' | sed 's/,/ /g' | sed 's/\"//g' )
|
||||||
echo $GENRE
|
echo $GENRE
|
||||||
|
|
||||||
|
@ -474,9 +477,9 @@ then
|
||||||
if [[ $(echo "$MIME" | grep 'video') ]]; then
|
if [[ $(echo "$MIME" | grep 'video') ]]; then
|
||||||
|
|
||||||
TEXT="<video controls width=100% poster='/ipfs/"${ANIMH}"'><source src='/ipfs/"${IPFSID}"' type='"${MIME}"'>
|
TEXT="<video controls width=100% poster='/ipfs/"${ANIMH}"'><source src='/ipfs/"${IPFSID}"' type='"${MIME}"'>
|
||||||
</video><h1><a href='https://www.themoviedb.org/"${tdb}"/"${REFERENCE}"'>"${TITLE}"</a></h1>
|
</video><h1><a target='tmdb' href='https://www.themoviedb.org/"${tdb}"/"${REFERENCE}"'>"${CapitalGluedTitle}"</a></h1>
|
||||||
<h2>"$DESCRIPTION"</h2>
|
<h2>"$DESCRIPTION"</h2>
|
||||||
<img src='/ipfs/"${POSTER}"' width=72%></img><br>
|
<img src='/ipfs/"${POSTER}"' width=33%><br>
|
||||||
<\$button class='tc-tiddlylink'>
|
<\$button class='tc-tiddlylink'>
|
||||||
<\$list filter='[tag[G1${CAT}]]'>
|
<\$list filter='[tag[G1${CAT}]]'>
|
||||||
<\$action-navigate \$to=<<currentTiddler>> \$scroll=no/>
|
<\$action-navigate \$to=<<currentTiddler>> \$scroll=no/>
|
||||||
|
@ -484,14 +487,14 @@ then
|
||||||
Afficher tous les G1${CAT}
|
Afficher tous les G1${CAT}
|
||||||
</\$button>"
|
</\$button>"
|
||||||
TidType="text/vnd.tiddlywiki" ## MAYBE REAL ONCE TW CAN SHOW ATTACHED IPFS VIDEO (TODO: TESTINGS)
|
TidType="text/vnd.tiddlywiki" ## MAYBE REAL ONCE TW CAN SHOW ATTACHED IPFS VIDEO (TODO: TESTINGS)
|
||||||
TAGS="G1${CAT} ${PLAYER} $GENRE ipfs ${HASHTAG}"
|
TAGS="G1${CAT} ${PLAYER} ${CapitalGluedTitle} $GENRE ipfs ${HASHTAG}"
|
||||||
# TyPE="$MIME"
|
# TyPE="$MIME"
|
||||||
# CANON="/ipfs/"${IPFSID}
|
# CANON="/ipfs/"${IPFSID}
|
||||||
CANON=''
|
CANON=''
|
||||||
else
|
else
|
||||||
TidType="${MIME}"
|
TidType="${MIME}"
|
||||||
TEXT='${MEDIAKEY}'
|
TEXT='${MEDIAKEY}'
|
||||||
TAGS="'$:/isAttachment $:/isIpfs G1${CAT} $GENRE"
|
TAGS="'$:/isAttachment $:/isIpfs G1${CAT} ${PLAYER} ${CapitalGluedTitle} $GENRE ${HASHTAG}"
|
||||||
CANON="/ipfs/"${IPFSID}
|
CANON="/ipfs/"${IPFSID}
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
@ -499,7 +502,7 @@ then
|
||||||
echo '[
|
echo '[
|
||||||
{
|
{
|
||||||
"text": "'${TEXT}'",
|
"text": "'${TEXT}'",
|
||||||
"title": "'${TITLE}'",
|
"title": "'${CapitalGluedTitle}'",
|
||||||
"created": "'${MOATS}'",
|
"created": "'${MOATS}'",
|
||||||
"resolution": "'${RES}'",
|
"resolution": "'${RES}'",
|
||||||
"gifanime": "'/ipfs/${ANIMH}'",
|
"gifanime": "'/ipfs/${ANIMH}'",
|
||||||
|
|
264
www/index.html
264
www/index.html
|
@ -1 +1,263 @@
|
||||||
<head><meta http-equiv='Refresh' content='0; URL=_REDIRLINK_'></head>
|
<html class=" rrghhqet idc0_344 cadefrffwk ftnryedt"><head>
|
||||||
|
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
|
||||||
|
<title>Upload files to Astroport</title>
|
||||||
|
<style>
|
||||||
|
a, a:hover, a:visited, a:active {
|
||||||
|
color: #fff;
|
||||||
|
text-decoration: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
body {
|
||||||
|
border: 0;
|
||||||
|
margin: 0;
|
||||||
|
|
||||||
|
font-family: -apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;
|
||||||
|
|
||||||
|
background-color: #041d2f;
|
||||||
|
color: #fff;
|
||||||
|
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
min-height: 100vh;
|
||||||
|
}
|
||||||
|
|
||||||
|
input[type=text] {
|
||||||
|
width: 500px;
|
||||||
|
height: 50px;
|
||||||
|
text-align: center;
|
||||||
|
margin: 5px;
|
||||||
|
}
|
||||||
|
|
||||||
|
input[type=file] {
|
||||||
|
width: 0.1px;
|
||||||
|
height: 0.1px;
|
||||||
|
opacity: 0;
|
||||||
|
overflow: hidden;
|
||||||
|
position: absolute;
|
||||||
|
z-index: -1;
|
||||||
|
}
|
||||||
|
|
||||||
|
input[type=file] + label {
|
||||||
|
display: inline-block;
|
||||||
|
|
||||||
|
font-size: 1.25em;
|
||||||
|
font-weight: 700;
|
||||||
|
|
||||||
|
color: #333;
|
||||||
|
background-color: #fff;
|
||||||
|
border-radius: 5px;
|
||||||
|
|
||||||
|
padding: 20px;
|
||||||
|
}
|
||||||
|
|
||||||
|
input[type=file]:focus + label,
|
||||||
|
input[type=file] + label:hover {
|
||||||
|
background-color: #fff;
|
||||||
|
}
|
||||||
|
|
||||||
|
label {
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
|
||||||
|
button {
|
||||||
|
width: 500px;
|
||||||
|
height: 50px;
|
||||||
|
text-align: center;
|
||||||
|
margin: 5px;
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
|
||||||
|
.content {
|
||||||
|
flex: 1;
|
||||||
|
margin: 10px;
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
.informations {
|
||||||
|
font-size: 24px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.image {
|
||||||
|
display: block;
|
||||||
|
margin: 0 auto;
|
||||||
|
height: 300px;
|
||||||
|
margin-bottom: 40px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.wrapWithDirectoryContainer {
|
||||||
|
font-size: 16px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.footer {
|
||||||
|
text-align: center;
|
||||||
|
margin: 10px;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
<script src="ipfs.js"></script>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<div class="content">
|
||||||
|
<img src="./logo-astroport.png" class="image">
|
||||||
|
|
||||||
|
<div id="informations" class="informations">
|
||||||
|
Téléverser un fichier vers Astroport
|
||||||
|
</div>
|
||||||
|
<br>
|
||||||
|
<br>
|
||||||
|
|
||||||
|
<form>
|
||||||
|
<input id="file" type="file">
|
||||||
|
<label for="file">Choose a file</label>
|
||||||
|
<br>
|
||||||
|
<br>
|
||||||
|
|
||||||
|
<div class="wrapWithDirectoryContainer">
|
||||||
|
<input id="wrapWithDirectory" type="checkbox">
|
||||||
|
<label for="wrapWithDirectory">Wrap with a directory (recommended)</label>
|
||||||
|
</div>
|
||||||
|
</form>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<script>
|
||||||
|
function cacheIt (appName, hash, nodeId = '') {
|
||||||
|
|
||||||
|
var gatewayProtocol = 'https';
|
||||||
|
|
||||||
|
var gatewayDomain = 'tube.copylaradio.com';
|
||||||
|
|
||||||
|
var gatewayPort = '1234';
|
||||||
|
|
||||||
|
var salt = 'totodu56';
|
||||||
|
var pepper = 'totodu56';
|
||||||
|
|
||||||
|
var query = 'salt='+ salt
|
||||||
|
query += '&pepper='+ pepper
|
||||||
|
query += '&' + appName
|
||||||
|
query += '&nodeid=' + nodeId
|
||||||
|
query += '&dataid=' + hash;
|
||||||
|
|
||||||
|
var URL1234 = 'http://'+ gatewayDomain +':'+ gatewayPort + '/?' + query;
|
||||||
|
console.log(URL1234)
|
||||||
|
|
||||||
|
var fullURL = 'https://'+ gatewayDomain +'/'+ gatewayPort + '/?' + query;
|
||||||
|
console.log(fullURL)
|
||||||
|
|
||||||
|
const controller = new AbortController()
|
||||||
|
const timeoutId = setTimeout( () => {
|
||||||
|
controller.abort()
|
||||||
|
}, 15000)
|
||||||
|
var fetchOpts = {
|
||||||
|
method: 'GET',
|
||||||
|
headers: {
|
||||||
|
'Accept': 'text/html'
|
||||||
|
// ,'Content-Type': 'text/html'
|
||||||
|
// // ,'Access-Control-Allow-Origin': '*',
|
||||||
|
// ,'Origin': 'la-bureautique'
|
||||||
|
// ,'Referrer-Policy': 'unsafe-url'
|
||||||
|
// ,'Redirect': 'manual'
|
||||||
|
},
|
||||||
|
signal: controller.signal
|
||||||
|
}
|
||||||
|
|
||||||
|
fetch(fullURL, fetchOpts)
|
||||||
|
.then(reponse => {
|
||||||
|
return reponse.text()
|
||||||
|
})
|
||||||
|
.then(html => {
|
||||||
|
// console.log(html)
|
||||||
|
|
||||||
|
var regex = /url='([^']+)/i;
|
||||||
|
var redirectURL = html.match(regex)[1]
|
||||||
|
|
||||||
|
return redirectURL
|
||||||
|
})
|
||||||
|
.then(url => {
|
||||||
|
|
||||||
|
console.log(url)
|
||||||
|
})
|
||||||
|
|
||||||
|
// JSON.stringify(json)
|
||||||
|
}
|
||||||
|
|
||||||
|
async function ipfs_init() {
|
||||||
|
|
||||||
|
const node = await window.IpfsCore.create(
|
||||||
|
|
||||||
|
{
|
||||||
|
config: {
|
||||||
|
Addresses: {
|
||||||
|
Swarm: [
|
||||||
|
'/dns4/wrtc-star1.par.dwebops.pub/tcp/443/wss/p2p-webrtc-star',
|
||||||
|
'/dns4/wrtc-star2.sjc.dwebops.pub/tcp/443/wss/p2p-webrtc-star'
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
);
|
||||||
|
|
||||||
|
let nodeId = await node.id();
|
||||||
|
console.log('node id :', nodeId)
|
||||||
|
nodeId = nodeId.id
|
||||||
|
console.log(nodeId)
|
||||||
|
const version = await node.version();
|
||||||
|
console.log('Version:', version.version);
|
||||||
|
|
||||||
|
async function ipfs_upload(file, wrapWithDirectory) {
|
||||||
|
|
||||||
|
const fileAdded = await node.add(
|
||||||
|
{
|
||||||
|
path: file.name,
|
||||||
|
content: file
|
||||||
|
},
|
||||||
|
{
|
||||||
|
wrapWithDirectory,
|
||||||
|
progress: bytesAdded => document.getElementById('informations').innerHTML = `Sending... ${Math.round((bytesAdded / file.size) * 100)}%`
|
||||||
|
}
|
||||||
|
);
|
||||||
|
|
||||||
|
const cid = fileAdded.cid.toString();
|
||||||
|
document.getElementById('informations').innerHTML = [
|
||||||
|
'The file has been added to IPFS!',
|
||||||
|
'',
|
||||||
|
'Its hash (CID) is:',
|
||||||
|
`<a href="https://download-a-file-from-ipfs.com/?cid=${cid}" target="_blank">${cid}</a>`,
|
||||||
|
'(click to download it)'
|
||||||
|
].join('<br />');
|
||||||
|
|
||||||
|
cacheIt('testcraft=on', cid, nodeId)
|
||||||
|
}
|
||||||
|
|
||||||
|
document.getElementById('file').disabled = false;
|
||||||
|
|
||||||
|
document.getElementById('file').addEventListener('change', async event => {
|
||||||
|
|
||||||
|
event.preventDefault();
|
||||||
|
document.getElementById('file').disabled = true;
|
||||||
|
|
||||||
|
const fileInput = document.getElementById('file');
|
||||||
|
|
||||||
|
if (!fileInput.files.length) {
|
||||||
|
|
||||||
|
alert('You have to select a file first');
|
||||||
|
|
||||||
|
} else {
|
||||||
|
|
||||||
|
const wrapWithDirectory = document.getElementById('wrapWithDirectory').checked;
|
||||||
|
|
||||||
|
await ipfs_upload(fileInput.files[0], wrapWithDirectory)
|
||||||
|
.catch(error => alert(error.toString()));
|
||||||
|
}
|
||||||
|
|
||||||
|
document.getElementById('file').disabled = false;
|
||||||
|
});
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
ipfs_init();
|
||||||
|
|
||||||
|
|
||||||
|
</script>
|
||||||
|
|
||||||
|
</body></html>
|
||||||
|
|
Loading…
Reference in New Issue