Bob Mottram пре 9 година
родитељ
комит
d6e4a5159b
1 измењених фајлова са 49 додато и 0 уклоњено
  1. 49
    0
      src/zeronetavahi

+ 49
- 0
src/zeronetavahi Прегледај датотеку

@@ -47,6 +47,7 @@ fi
47 47
 
48 48
 BLOGS_FILE=$ZERONET_INSTALL/freedombone-blogs
49 49
 FORUM_FILE=$ZERONET_INSTALL/freedombone-fora
50
+IPFS_FILE=$ZERONET_INSTALL/freedombone-ipfs
50 51
 TOX_USERS_FILE=$ZERONET_INSTALL/freedombone-tox-users
51 52
 ZERONET_INDEX=/home/$MY_USERNAME/mesh.html
52 53
 ZERONET_CONFIG=$ZERONET_INSTALL/bootstrap
@@ -78,6 +79,7 @@ function create_index {
78 79
     echo "  <li><a href=\"${BLOGS_FILE}.html\">Blogs</a></li>" >> $ZERONET_INDEX
79 80
     echo "  <li><a href=\"${FORUM_FILE}.html\">Fora</a></li>" >> $ZERONET_INDEX
80 81
     echo "  <li><a href=\"${TOX_USERS_FILE}.html\">Tox Users</a></li>" >> $ZERONET_INDEX
82
+    echo "  <li><a href=\"${IPFS_FILE}.html\">File shares</a></li>" >> $ZERONET_INDEX
81 83
     echo '</ol>' >> $ZERONET_INDEX
82 84
     echo '' >> $ZERONET_INDEX
83 85
     echo '</body>' >> $ZERONET_INDEX
@@ -223,6 +225,45 @@ while IFS='' read -r line || [[ -n "$line" ]]; do
223 225
 done < "$TEMPFILE"
224 226
 echo '<ol>' >> $FORUM_FILE.new
225 227
 
228
+
229
+# detect fora in the mesh
230
+if [ -f $IPFS_FILE.new ]; then
231
+    rm -f $IPFS_FILE.new
232
+fi
233
+
234
+cat $TEMPFILE_BASE | grep "IPFS\|hostname =\|address =\|port =\|txt =" > $TEMPFILE
235
+
236
+state=0
237
+address=""
238
+peer=""
239
+echo '<ol type="square">' >> $IPFS_FILE.new
240
+while IFS='' read -r line || [[ -n "$line" ]]; do
241
+    if [ ${state} -eq "3" ]; then
242
+        if [[ $line == *"txt ="* ]]; then
243
+            ipfs_peer_id=$(echo $line | awk -F '[' '{print $2}' | awk -F ']' '{print $1}')
244
+            echo "  <li><a href=http://localhost:5001/ipfs/${ipfs_peer_id}>${peer}</a></li>" >> $IPFS_FILE.new
245
+            state=0
246
+        fi
247
+    fi
248
+    if [ ${state} -eq "2" ]; then
249
+        if [[ $line == *"address ="* ]]; then
250
+            address=$(echo $line | awk -F '[' '{print $2}' | awk -F ']' '{print $1}')
251
+            state=3
252
+        fi
253
+    fi
254
+    if [ ${state} -eq "1" ]; then
255
+        if [[ $line == *"hostname ="* ]]; then
256
+            peer=$(echo $line | awk -F '[' '{print $2}' | awk -F ']' '{print $1}')
257
+            state=2
258
+        fi
259
+    fi
260
+    if [[ $line == *"IPFS"* && $line == "= "* ]]; then
261
+        state=1
262
+    fi
263
+done < "$TEMPFILE"
264
+echo '<ol>' >> $FORUM_FILE.new
265
+
266
+
226 267
 # detect Tox users
227 268
 lstox > $TEMPFILE
228 269
 toxctr=0
@@ -258,6 +299,7 @@ fi
258 299
 create_header $BLOGS_FILE "Blogs"
259 300
 create_header $FORUM_FILE "Fora"
260 301
 create_header $TOX_USERS_FILE "Tox Users"
302
+create_header $IPFS_FILE "File Shares"
261 303
 create_footer $BLOGS_FILE
262 304
 create_footer $FORUM_FILE
263 305
 create_footer $TOX_USERS_FILE
@@ -286,4 +328,11 @@ if [ -d $ZERONET_USER_HOME ]; then
286 328
     sudo chown zeronet:zeronet $TOX_USERS_FILE
287 329
 fi
288 330
 
331
+# create a web page showing the file shares
332
+cat ${IPFS_FILE}-header.html ${IPFS_FILE}.new ${IPFS_FILE}-footer.html > ${IPFS_FILE}.html
333
+rm -f ${IPFS_FILE}.new
334
+if [ -d $ZERONET_USER_HOME ]; then
335
+    sudo chown zeronet:zeronet $IPFS_FILE
336
+fi
337
+
289 338
 exit 0