Fix adding hashes, add file_by_filename
This commit is contained in:
		
							
								
								
									
										24
									
								
								tag.sh
									
									
									
									
									
								
							
							
						
						
									
										24
									
								
								tag.sh
									
									
									
									
									
								
							@ -161,12 +161,13 @@ add_path() {
 | 
			
		||||
 | 
			
		||||
add_hash() {
 | 
			
		||||
    # $FILE $HASH 
 | 
			
		||||
    TABLE="hashes"
 | 
			
		||||
    COLUMN="fid,md5"
 | 
			
		||||
    local TABLE="hashes"
 | 
			
		||||
    local COLUMN="fid,md5"
 | 
			
		||||
    local FILENAME="${1:-}"
 | 
			
		||||
    [ -z "$FILENAME" ] && fail "No file specified."
 | 
			
		||||
    ! file_exists_in_db "$FILENAME" && fail "File \"$FILENAME\" does not exist in database."
 | 
			
		||||
    sqlite_insert_multi "$TABLE" "$COLUMN" $RESULT "'$2'" 
 | 
			
		||||
    local FID=$(file_by_filename "$FILENAME")
 | 
			
		||||
    [[ "$FID" -eq 0 ]] && fail "File \"$FILENAME\" does not exist in database."
 | 
			
		||||
    sqlite_insert_multi "$TABLE" "$COLUMN" $FID "'$2'" 
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
add_path_auto() {
 | 
			
		||||
@ -187,16 +188,23 @@ tag_exists_in_db() {
 | 
			
		||||
 | 
			
		||||
file_exists_in_db() {
 | 
			
		||||
    # $FILENAME
 | 
			
		||||
    local FILENAME=$(basename "${1:-}")
 | 
			
		||||
    local FILEPATH=$(dirname "${1:-}")
 | 
			
		||||
    local RESULT=$(sqlite_query "SELECT id FROM files WHERE filename = '$FILENAME' AND path = '$FILEPATH'")
 | 
			
		||||
    if [[ -z "$RESULT" ]]; then
 | 
			
		||||
    local RESULT=$(file_by_filename "$1")
 | 
			
		||||
    if [[ "$RESULT" -eq 0 ]]; then
 | 
			
		||||
        return 1
 | 
			
		||||
    else
 | 
			
		||||
        return 0
 | 
			
		||||
    fi
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
file_by_filename() {
 | 
			
		||||
    # FILENAME
 | 
			
		||||
    local FILENAME=$(basename "${1:-}")
 | 
			
		||||
    local FILEPATH=$(realpath $(dirname "${1:-}"))
 | 
			
		||||
    local RESULT=0
 | 
			
		||||
    RESULT=$(sqlite_query "SELECT id FROM files WHERE filename = '$FILENAME' AND path = '$FILEPATH'")
 | 
			
		||||
    echo $RESULT
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
dbfile_exists() {
 | 
			
		||||
    if [[ ! -f "$DB_FILE" ]]; then
 | 
			
		||||
        return 1
 | 
			
		||||
 | 
			
		||||
		Reference in New Issue
	
	Block a user