<human>: Condense the text into a few key points

My best friend got involved with a girl that isn't good for him. I'll call him Dan and his girlfriend Dianne. I really love the dude like a brother and I've told him my thoughts on her many times. I don't like the way she treats him or anyone else. She has slapped him hard in front of me. Twice. She has attacked me for "judging a book by its cover". She has attacked my other friend which we'll call Jack for "corrupting Dan". Despite the fact that Dan has made his decisions on his own. She caused so much drama during the planning for our senior prom. And she claims to cut herself and basically brags about it. She walks all over my friend Dan and it disgusts me. And well Jack and I are on our last straw (as we are closer to Dan than our other friends). Our other few friends have taken to disliking her presence and her drama as well. I told Dan I want nothing to do with Dianne and I will not be around her because it sickens me to see how she treats him. Jack banned Dianne from his house( he throws a lot of house parties) due to the shit she keeps starting and the stuff she said to Jack. I originally tried to be civil regarding Dan and Dianne's relationship but Dianne has gone too far in disrespecting me, disrespecting Jack, and using Dan as a doormat. I have been honest sometimes brutally so, but I haven't been malicious. Despite all of this Dan keeps asking for apologies from Jack and I. I refuse to apologize unless I mean it. Which I won't if I do. Jack thinks the same way. I wish I could get Dan to see through Dianne's manipulative dramatic bullshit but I can't. How are Jack and I supposed to handle this situation? Is it possible to get Dan to see the truth? Can we maintain our friendship despite our feuds regarding Dianne?
<bot>: my best friends girlfriend is manipulative and borderline abusive. She starts drama and conflict with me and my other friends. My friend Jack and I are fed up and want help in dealing with it.