how to block all website (http and https) except google, yahoo, gmail and facebook.
You can use hotspot and add in “walled garden ip list” the sites you want to have access without authentication to hotspot
http://wiki.mikrotik.com/wiki/Manual:IP/Hotspot
http://wiki.mikrotik.com/wiki/Manual:IP/Hotspot/Walled_Garden