ACTION=$1
FILE=$2
-TIMESTAMP=$(date +%s)
c_yellow='\033[0;93m'
c_green='\033[0;92m'
S3_BUCKET='s3://agg/'
S3_URL='http://agg.s3.amazonaws.com/'
DB='agg.db'
+db_schema="
+CREATE TABLE IF NOT EXISTS entries(
+id INTEGER PRIMARY KEY AUTOINCREMENT,
+added DEFAULT CURRENT_TIMESTAMP,
+link TEXT,
+title TEXT,
+desc TEXT,
+url TEXT,
+mimetype TEXT)"
+
video_folder='v/'
image_folder='i/'
declare -a video_types=('video/mp4' 'video/avi' 'video/fla');
declare -a image_types=('image/jpg' 'image/jpeg' 'image/png' 'image/gif');
-db_schema="CREATE TABLE IF NOT EXISTS entries(id INTEGER PRIMARY KEY AUTOINCREMENT, added DEFAULT CURRENT_TIMESTAMP, link TEXT, title TEXT, desc TEXT, url TEXT, mimetype TEXT)"
-if [ -z $ACTION ]
-then
+if [ -z $ACTION ]; then
exit
-fi
-
-if [ "dl" = $ACTION ] ;then
- echo "downloading $FILE"
-# ~/_code/youtube-dl/youtube-dl -o "%(stitle)s-%(id)s-%(autonumber)s.%(ext)s" $FILE
-fi
-if [[ "ul" = $ACTION && $FILE ]]; then
+elif [[ "ul" = $ACTION && $FILE ]]; then
# get mime type
mimetype=$(file -b --mime-type $FILE)
echo -e $c_yellow"type\t$c_end"$mimetype
- # determine mimetype and thus the appropriate folder
- case "${video_types[@]}" in *"$mimetype"*) FOLDER=$video_folder ;; esac
- case "${image_types[@]}" in *"$mimetype"*) FOLDER=$image_folder ;; esac
+ # depending on mimetype, choose either video or image folder
+ case "${video_types[@]}" in *"$mimetype"*) FOLDER=$video_folder;; esac
+ case "${image_types[@]}" in *"$mimetype"*) FOLDER=$image_folder;; esac
if [ -z "$FOLDER" ]; then
echo -e $c_red"Unsupported mime-type"$c_end
exit
fi
- # prepare database
- # if [ ! -f "$DB" ]; then
- # echo -e "$c_red"No database"$c_end"
- # else
- sqlite3 "$DB" "$db_schema"
- # fi
-
# get user input for data
- echo -ne $c_yellow"link\t"$c_end; read -r LINK
- echo -ne $c_yellow"title\t"$c_end; read -r TITLE
- echo -ne $c_yellow"desc\t"$c_end; read -r DESC
+ echo -ne $c_yellow"link\t"$c_end; read -r link
+ echo -ne $c_yellow"title\t"$c_end; read -r title
+ echo -ne $c_yellow"desc\t"$c_end; read -r desc
#printf -v DESC "%q" "$DESC"
- # get filename
FILENAME=$(basename $FILE)
- URL="$S3_URL$FOLDER$FILENAME"
- sqlite3 "$DB" "INSERT INTO entries (link, title, desc, url, mimetype) VALUES ('$LINK','$TITLE','$DESC', '$URL', '$mimetype')";
+ url="$S3_URL$FOLDER$FILENAME"
+
+ # update database
+ insert="INSERT INTO entries (link, title, desc, url, mimetype) VALUES ('$link','$title','$desc', '$url', '$mimetype')";
+ sqlite3 "$DB" "$db_schema"
+ sqlite3 "$DB" "$insert"
- # upload file to s3
- echo -e $c_green"Uploading to s3..."$c_end
# put file on s3
+ echo -e $c_green"Put file on s3..."$c_end
s3cmd put -v --acl-public --guess-mime-type "$FILE" "$S3_BUCKET$FOLDER$FILENAME"
-fi
-if [ "pull-data" = $ACTION ]; then
+elif [ "pull-data" = $ACTION ]; then
s3cmd get -v "$S3_BUCKET$DB"
-fi
-if [ "push-data" = $ACTION ]; then
- echo -e "$c_green"Uploading data to s3"$c_end"
- s3cmd put -v --acl-public --guess-mime-type "$DB" "$S3_BUCKET$DB"
+elif [ "push-data" = $ACTION ]; then
+ s3cmd put -v --acl-public "$DB" "$S3_BUCKET$DB"
echo -e "$c_green"Pulling new DB to quilime"$c_end"
+elif [ "push-remote" = $ACTION ]; then
ssh quilime@quilime.com "cd ~/media.quilime.com/vid/; curl -O http://agg.s3.amazonaws.com/agg.db"
+elif [ "dl" = $ACTION ]; then
+ echo "downloading $FILE"
+# ~/_code/youtube-dl/youtube-dl -o "%(stitle)s-%(id)s-%(autonumber)s.%(ext)s" $FILE
fi