A 25-year-old man has been charged after allegedly seriously assaulting former politician Barry Urban at his workplace, leaving him fighting for life in hospital with severe head injuries.