Make scipt except from "Y","y" and "yes" to take [Enter] as being "yes"

This is the script:

#!/bin/sh
if [ -s /usr/share/WallpaperChanger ]; then rm -rf /usr/share/WallpaperChanger; fi
if [ -s /usr/bin/wallch ]; then rm -rf /usr/bin/wallch; fi;
if [ -s /usr/share/applications/wallch.desktop ]; then rm -rf /usr/share/applications/wallch.desktop; fi
if [ -s /usr/share/doc/wallch ]; then rm -rf /usr/share/doc/wallch; fi
if [ -s /usr/share/man/man1/wallch.1.gz ]; then rm -rf /usr/share/man/man1/wallch.1.gz; fi
echo "Delete configuration files?(y|n)"
read YN
if [ X"$YN" = X"y" -o X"$YN" = X"Y" ]; then
if [ -s /home/`logname`/.config/WallpaperChanger/ ]; then rm -rf /home/`logname`/.config/WallpaperChanger/; fi
fi
echo "Unistallation complete"

I tried
if [ X"$YN" = X"y" -o X"$YN" = X"Y" -o X"$YN" = X"" ];
but it doesn't work. Any ideas?

I think if [ X"$YN" = X"y" -o X"$YN" = X"Y" ] could be replaced by if [[ $YN = [yY] ]]

You could also use the case statement

case $YN in
   y|Y|yes|YES)   rm -rf /home/`logname`/.config/WallpaperChanger/ ;;
esac

This can be checked like

read YN

if [ -z "$YN" ] ; then
    YN="y"
fi

case "$YN" in
    y|Y|yes|YES)   rm -rf /home/`logname`/.config/WallpaperChanger/ ;;
esac

If forgot that requirement. Then YN=${YN:-y} can do the job.

Ok, thank you very much!