#!/bin/bash

function fix_column {
    echo "UPDATE $1 SET $2 = REPLACE($2, '$3', '$4');"
    echo "UPDATE $1 SET $2 = REPLACE($2, '$3', '$4');" | mysql SCHEMA_NAME
}

function fix_columns {
    # A
    fix_column $1 $2 'Ã„' 'Ä'
    fix_column $1 $2 'Ã' 'Á'
    fix_column $1 $2 'Ã€' 'À'
    fix_column $1 $2 'Ã¡' 'á'
    fix_column $1 $2 'Ã ' 'á'
    fix_column $1 $2 'ÃƒÂ¡' 'á'
    fix_column $1 $2 'Ã¤' 'ä'
    fix_column $1 $2 'Ã¢' 'â'

    # C
    fix_column $1 $2 'Ã§' 'ç'

    # E
    fix_column $1 $2 'Ã‰' 'É'
    fix_column $1 $2 'Ãˆ' 'È'
    fix_column $1 $2 'Ã©' 'é'
    fix_column $1 $2 'â€š' 'é'
    fix_column $1 $2 'Ã¨' 'è'
    fix_column $1 $2 'Ãª' 'ê'
    fix_column $1 $2 'Ã«' 'ë'

    # I
    fix_column $1 $2 'Ã' 'Í'
    fix_column $1 $2 'Ã­' 'í'
    fix_column $1 $2 'ÃƒÂ­' 'í'
    fix_column $1 $2 'Ã¯' 'ï'
    fix_column $1 $2 'Ã®' 'î'
    fix_column $1 $2 'Ã¬' 'ì'

    # N
    fix_column $1 $2 'Ã‘' 'Ñ'
    fix_column $1 $2 'Ã±' 'ñ'

    # O
    fix_column $1 $2 'Ã’' 'Ò'
    fix_column $1 $2 'Ã“' 'Ó'
    fix_column $1 $2 'Ã–' 'O'
    fix_column $1 $2 'Ã˜' 'Ø'
    fix_column $1 $2 'Ã³' 'ó'
    fix_column $1 $2 'Ã²' 'ò'
    fix_column $1 $2 'Ãµ' 'õ'
    fix_column $1 $2 'Ã¶' 'ö'
    fix_column $1 $2 'Ã´' 'ô'
    fix_column $1 $2 'Ã¸' 'ø'

    # U
    fix_column $1 $2 'Ã›' 'Û'
    fix_column $1 $2 'Ãš' 'Ú'
    fix_column $1 $2 'Ãº' 'ú'
    fix_column $1 $2 'Ã¼' 'ü'
    fix_column $1 $2 'Ã¹' 'ù'

    # Others
    fix_column $1 $2 'Â´' '´'
    fix_column $1 $2 'â€˜' '‘'
    fix_column $1 $2 'â€™' '’'
    fix_column $1 $2 'â€œ' '“'
    fix_column $1 $2 'â€' '”'
    fix_column $1 $2 'Â·' '·'
    fix_column $1 $2 'Ã' 'Ð'
    fix_column $1 $2 'â€“' ' &mdash; '
    fix_column $1 $2 'â€”' ' &mdash; '
    fix_column $1 $2 'â€¦' '&hellip;'
    fix_column $1 $2 'â„¢' '<sup>TM</sup>'
}

for column in subject body keywords; do fix_columns emails $column; done;
for column in firstname lastname; do fix_columns users $column; done;

