ruckus/quickeebooks — pull request #56 by minimul (2013-04-04 14:22:00+00:00)
Title: Ampersand

An ampersand within a filter does not work.

CGI.escape does the right thing in that it converts the '&' to '%26', but this was not good enough to find the record by filter.

I tried everything under the sun but finally got the '%2526' to work. As a goof, I put '%26' in for the filter value e.g. "Smith %26 Gentry" and CGI.escape converted it to:

BODY(String) = "Filter=Name+%3AEQUALS%3A+Smith+%2526+Gentry&PageNum=1&ResultsPerPage=20"

Spec passed.

After this I searched around and the best explanation may be this article. https://dev.twitter.com/discussions/1533

I put some thought (briefly) on where to put the fix and within Filter.new didn't seem right. This is more of an escaping issue within an OAuth request (if the above article/posters are correct) so that is how I approached the fix.