If you offered it and didn't nut up and tell him it was going to cost him before you gave it to him, you've got no one to blame but yourself. I'm sure he just assumed it was free because you were good friends. Case in point, John is not a very good friend, and although I don't know your history with him, I'd assume you're probably not going to get any money from him any time soon.