#!/bin/bash PROGRAM=$(basename $0) descriptionString="Articles module for Arching Kaos" source $AK_LIBDIR/logit new_line(){ printf '\n' } description(){ full_title="$(printf '%s - %s' "$PROGRAM" "$descriptionString")" delimiter_count=`echo -n $full_title | wc -c` printf '%s' "$full_title" new_line while [ $delimiter_count -gt 0 ] do printf '=' delimiter_count=$(($delimiter_count-1)) done new_line } ZARTICLESDIR="$AK_WORKDIR/articles" TEMP="/tmp/aktmp" if [ ! -d $ZARTICLESDIR ]; then mkdir $ZARTICLESDIR cd $ZARTICLESDIR #git init echo "Articles repository" > README echo "Qmetc" >> README #git add README #git commit -m "Initiated articles repository" logit "INFO" "zarticlesdir created" else logit "INFO" "zarticlesdir found" fi _ak_modules_articles_create(){ TEMP="$(ak-tempassin)" cd $TEMP export ARTICLES_FILE="$(date +%Y%m%d_%H%M%S)" if [ -z $EDITOR ] then logit "ERROR" "No $EDITOR found. Exiting..." exit 1 fi $EDITOR $ARTICLES_FILE logit "INFO" "Renaming..." TITLE="$(head -n 1 $ARTICLES_FILE)" TO_FILE=$ARTICLES_FILE-$(echo $TITLE | tr '[:upper:]' '[:lower:]' | sed -e 's/ /\_/g' ) IPFS_FILE=$(ak-ipfs-add $ARTICLES_FILE) mv $ARTICLES_FILE $ZARTICLESDIR/$TO_FILE sed -e 's,Qm.*,'"$IPFS_FILE"',g' $ZARTICLESDIR/README _ak_modules_articles_add $ZARTICLESDIR/$TO_FILE logit "INFO" "Adding to git repo..." cd $ZARTICLESDIR # git add $TO_FILE README # git commit -m "Added $TO_FILE with $(head -n 1 $ZARTICLESDIR/$TO_FILE)" # git clean --force rm -rf $TEMP } _ak_modules_articles_index(){ FILES="$(ls -1 $ZARTICLESDIR)" i=0 for FILE in $FILES do DATE=$(echo $FILE | cut -d - -f 1 | awk '{print $1}') TITLE=$(head -n 1 $ZARTICLESDIR/$FILE) echo $i \| $DATE \| $TITLE let i+=1 done } _ak_modules_articles_title(){ description } _ak_modules_articles_import(){ echo "#TODO" if [ ! -z $1 ] then if [ ! -d $1 ] then echo "Folder does not exists" exit 4 else echo "Folder $1 exists" fl="$(ls -1 $1)" for f in $fl do _ak_modules_articles_add $1/$f done fi else echo "No value" exit 6 fi exit 224 } _ak_modules_articles_add(){ TEMP="$(ak-tempassin)" cd $TEMP if [ -f $1 ]; then FILE="$1" echo "Adding articles from " $FILE DATETIME=$(echo $FILE | cut -d - -f 1 | awk '{print $1}') TITLE=$(head -n 1 $FILE) FILE_IPFS_HASH=$(ak-ipfs-add $FILE) FILE_SIGN_FILE=$FILE".asc" gpg2 --homedir $AK_GPGHOME --detach-sign --sign-with $AK_FINGERPRINT --armor --output $FILE_SIGN_FILE $FILE FILE_SIGNATURE=$(ak-ipfs-add $FILE_SIGN_FILE) cat > data < #TODO" echo " add Creates a data file from the articles file you point to" echo " create Vim is going to pop up, you will write and save your" echo " articlesletter and it's going to be saved" exit 0 } _ak_modules_articles_title if [ ! -z $1 ]; then case $1 in -h | --help) _ak_modules_articles_usage; exit;; index) _ak_modules_articles_index; exit;; import) _ak_modules_articles_import $2; exit;; add) _ak_modules_articles_add $2; exit;; create) _ak_modules_articles_create; exit;; * ) _ak_modules_articles_usage;; esac else _ak_modules_articles_usage fi