Man punched and slapped by woman in horrific homophobic rant outside pub