Data is now in ~/ccoop/
[ccoop.git] / ccoop-update.sh
index ce9a6d3d14c4dfce15de7b6bb9e21b1f04c26a0d..57c526c6c2cf6a0e6bb64d3b47adaa8803fc4e2d 100755 (executable)
@@ -9,9 +9,10 @@
 
 set -e
 
 
 set -e
 
-LOGFILE=coop.log # unsued unless --log option is used
-COOKIEJAR=cookiejar # cookies, deleted on exit
-TMP=lastpage.html # last html page, deleted on exit
+export CCPATH=~/ccoop
+LOGFILE=$CCPATH/coop.log # unsued unless --log option is used
+COOKIEJAR=$CCPATH/cookiejar # cookies, deleted on exit
+TMP=$CCPATH/lastpage.html # last html page, deleted on exit
 
 function parsearg() {
     _OPT="${1%=?*}"
 
 function parsearg() {
     _OPT="${1%=?*}"
@@ -87,16 +88,18 @@ function fetch() {
 function makeconfig() {
     read -p "Coopanet login: " COOPLOGIN
     read -p "Coopanet password: " -s COOPPASSWORD
 function makeconfig() {
     read -p "Coopanet login: " COOPLOGIN
     read -p "Coopanet password: " -s COOPPASSWORD
-    echo "# coopanet configuration">config
-    echo "COOPLOGIN=$COOPLOGIN">>config
-    echo "COOPPASSWORD=$COOPPASSWORD">>config
+    echo "# coopanet configuration">$CCPATH/config
+    echo "COOPLOGIN=$COOPLOGIN">>$CCPATH/config
+    echo "COOPPASSWORD=$COOPPASSWORD">>$CCPATH/config
     echo >&2
     echo "config file writen" >&2
 }
 
 function fetchall() {
     echo> $COOKIEJAR
     echo >&2
     echo "config file writen" >&2
 }
 
 function fetchall() {
     echo> $COOKIEJAR
-    echo> $LOGFILE
+    if [[ -n "$log" ]]; then
+        echo> $LOGFILE
+    fi
     
     inform "WGET login form"
     fetch https://www.coopanet.com/banque/cpt/
     
     inform "WGET login form"
     fetch https://www.coopanet.com/banque/cpt/
@@ -133,9 +136,9 @@ function fetchall() {
         inform "WGET telechargement.do"
         ppath=`grep path $TMP | cut -d \" -f 6`
         fetch "--post-data=path=$ppath&zip=2&btConfirmer=Confirmer" https://www.coopanet.com/banque/cpt/cpt/telechargement.do
         inform "WGET telechargement.do"
         ppath=`grep path $TMP | cut -d \" -f 6`
         fetch "--post-data=path=$ppath&zip=2&btConfirmer=Confirmer" https://www.coopanet.com/banque/cpt/cpt/telechargement.do
-        tail -n +2 $TMP > $account.`date +%Y%m%d`.csv
-        rm -f $account.last.csv
-        ln -s $account.`date +%Y%m%d`.csv $account.last.csv
+        tail -n +2 $TMP > $CCPATH/$account.`date +%Y%m%d`.csv
+        rm -f $CCPATH/$account.last.csv
+        ln -s $CCPATH/$account.`date +%Y%m%d`.csv $CCPATH/$account.last.csv
     done
     
     # logout
     done
     
     # logout
@@ -158,13 +161,13 @@ function updatehistory() {
         balance=${accountsBalances[$idx]}
 
         # get new lines into $account.new.csv
         balance=${accountsBalances[$idx]}
 
         # get new lines into $account.new.csv
-        diff -Nau $account.last.csv $account.csv | grep "^-" | grep -v "^---" | cut -c 2- > $account.new.csv
+        diff -Nau $CCPATH/$account.last.csv $CCPATH/$account.csv | grep "^-" | grep -v "^---" | cut -c 2- > $CCPATH/$account.new.csv
     
         # print new entries
     
         # print new entries
-        cat $account.new.csv
+        cat $CCPATH/$account.new.csv
     
     
-        cat $account.csv >>$account.new.csv
-        mv $account.new.csv $account.csv
+        cat $CCPATH/$account.csv >>$CCPATH/$account.new.csv
+        mv $CCPATH/$account.new.csv $CCPATH/$account.csv
     done
 }
 
     done
 }
 
@@ -175,14 +178,11 @@ function atomize() {
         name=${accountsNames[$idx]}
         balance=${accountsBalances[$idx]}
 
         name=${accountsNames[$idx]}
         balance=${accountsBalances[$idx]}
 
-        ./ccoop-atomize.py "$account" "$name" "$balance" > $account.atom
+        "`dirname $0`/ccoop-atomize.py" "$account" "$name" "$balance" > $CCPATH/$account.atom
     done
 }
 
 
     done
 }
 
 
-cd `dirname $0`
-
-
 umask 0077 # make sure the generated files are only readable by the user
 
 if [[ -n $ismakeconfig ]]; then
 umask 0077 # make sure the generated files are only readable by the user
 
 if [[ -n $ismakeconfig ]]; then
@@ -192,10 +192,10 @@ fi
 # Make sure our temporary files are deleted on error and on exit
 trap "rm -f $COOKIEJAR $TMP; exit" INT TERM EXIT
 
 # Make sure our temporary files are deleted on error and on exit
 trap "rm -f $COOKIEJAR $TMP; exit" INT TERM EXIT
 
-if [[ `ls -l config | cut -c 8-10` != "---" ]]; then
+if [[ `ls -l $CCPATH/config | cut -c 8-10` != "---" ]]; then
     echo "Security warning: config file should be chmod o-rwx" >&2
 fi
     echo "Security warning: config file should be chmod o-rwx" >&2
 fi
-source config
+source $CCPATH/config
 
 if [[ -n $log ]]; then
     inform "Warning, $LOGFILE will contain sensitive information. You should delete it."
 
 if [[ -n $log ]]; then
     inform "Warning, $LOGFILE will contain sensitive information. You should delete it."