blob: 9e7c7b4b8c18fb21fe7e58d2dbaef0d39508e1eb (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
|
#!/bin/bash
PROGRAM=$(basename $0)
descriptionString="Articles module for Arching Kaos"
logit(){
ak-logthis "$PROGRAM" "$1" "$2"
}
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
pwd
export ARTICLES_FILE="$(date +%Y%m%d_%H%M%S)"
vi $ARTICLES_FILE
echo "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
echo "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 <<EOF
{
"datetime":"$DATETIME",
"title":"$TITLE",
"filename":"$FILE",
"ipfs":"$FILE_IPFS_HASH",
"detach":"$FILE_SIGNATURE"
}
EOF
else
echo "File $FILE doesn't exist";
exit 2
fi
ak-zblock-pack "articles/add" $(pwd)/data
if [ $? == 0 ]
then
echo "Articles added successfully"
else
echo "error??"
exit 1
fi
}
_ak_modules_articles_usage(){
echo " -h, --help Prints this help message"
echo " index Prints an indexed table of your articles files"
echo " import <file> #TODO"
echo " add <file> 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
|