Validate '|' cannot be in a password

http://manage.dimagi.com/default.asp?60104

Monkey patches set_password. Displays "'|' is not allowed in a password" as the error in all three possible locations.
Feels like this error message should be reworked.

I don't know in what cases people accidentally get a vertical bar in their password, but in most fonts that is going to be indistinguishable from a capitol i. Example I | (the left is the letter i, the right is vertical bar). Someone is going to be super confused as to why they can't put the letter i in their password.

Secondly, and probably not really a big deal, but I don't think the screen reading out the presence of a character in my password is something I'd be happy about. What if this is a password someone uses for other things and we are like "hey anyone looking at the screen, this guy has a vertical bar in his password, I bet he thought that made it secure".

Should just say "invalid characters in the password, these are what we allow. Better yet, shouldn't this validation happen client side?