12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970 |
- #!/bin/bash
- # start script from it's folder
- cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null || exit
- # Standard file locations
- homedir='../../'
- . ../env.sh
- # Temp Files
- tmpreadme1=$(mktemp)
- tmpreadme2=$(mktemp)
- # Delete TempFiles on exit
- CleanExit () {
- rm -f "$tmpreadme1"
- rm -f "$tmpreadme2"
- }
- trap CleanExit 0 1
- insertTable () {
- searchstr="$1"
- basefile="$2"
- tableline=$( grep -n "$searchstr" "$basefile" | cut -d: -f1)
- head -n $(( tableline - 1 )) "$basefile" > "$tmpreadme1"
- echo -e "$table" >> "$tmpreadme1"
- tail -n +$(( tableline + 1 )) "$basefile" >> "$tmpreadme1"
- mv "$tmpreadme1" "$tmpreadme2"
- }
- ## Generate YouTube Video Table
- unset table
- nVideos=$( jq '.youtube | length' "$appinfo")
- for vid in $(seq 0 $(( nVideos - 1 ))); do
- info=$( jq ".youtube[$vid]" "$appinfo" )
- # Get Video ID
- ID=$( echo "$info" | jq '.ID' | tr -d '"' )
- # Channel Info
- ChID=$( echo "$info" | jq '.Channel' )
- ChTitle=$( jq ".channels[] | select(.ID==${ChID}) | .Title" "$appinfo" | tr -d '"' )
- ChURL=$( jq ".channels[] | select(.ID==${ChID}) | .URL" "$appinfo" | tr -d '"' )
- ChIcon="https://pi-hosted.com/images/${ChID:1:-1}-logo.png"
- # Get Video URL
- URL=$( echo "$info" | jq '.URL' | tr -d '"' )
- # Get Video Title
- TITLE=$( echo "$info" | jq '.Title' | tr -d '"' )
- # Get Video Documentation
- Doc=$( echo "$info" | jq '.Doc' | tr -d '"' )
- if [ "$Doc" != "null" ] ; then
- DocMD="[Install Doc]($Docs$Doc)"
- else
- unset DocMD
- fi
- line="|$ID|[]($ChURL)|[$TITLE]($URL)|$DocMD|"
- if [ "$vid" == "0" ] ; then
- table=$line
- else
- table=$( echo -e "$table\n$line")
- fi
- done
- insertTable '<<<<< YOUTUBE TABLE HERE >>>>>' "$README_TEMPLATE"
- cp -f "$tmpreadme2" "$README"
|