Earlier: Green Party co-leader James Shaw was punched in an unprovoked attack on his way to Parliament this morning.