A bunch of fixes and a couple of new things too

Our release today was a fix of a bunch of little annoying problems (bug fixes).  However, a couple of new features were added too.  See bug fix notes below.

«Household Tax Deductible Contribution within Date Range» merge field was added to householded letter writing.  This is useful for year-end tax letters where the donation amount is not always the tax deductible amount.

We are slowly rolling out some new mapping features.  It will allow political customers to do "turf cutting" and nonprofits to see where their donors are located.  This DOES require a data append which will incur a cost of a about 1.5 cents per address geocoded.

If you have matching donors we have added a subject to max value to ensure an employer is not on the hook for the full amount of a very large donation made by an employee.  We have also added a checkbox to indicate if you want the matching donor listed on the donation page.  The donation page has been updated to accommodate matching donors.


Bug fixes:

Corrected an error in letter printing
Corrected 'primary connection locked' error.
If two windows are open that display contact attributes, and if an attribute is deleted from one window, attempting to perform an operation against the deleted attribute from the other window causes an error.  Fixed by verifying the existence of the attribute before attempting to perform an operation against it.
The contact merge facility errored when the source contact had contact user records associated with it.  Fixed.
If the HasVoted column is selected through the Format facility (or otherwise), an error will occur if the poll watch has-voted attribute has not been set.  Fixed by displaying a warning and defaulting to 'false' in this situation.  
When listing invoices, invoice id #0 shows.  If you click to open this invoice, an error occurs.  Fixed.
On the contribution list, if a format is loaded that does not contain the contact record contact id, and if an attempt is made to load the context menu by right-clicking on a row, an error occurred.  Fixed.
In the contact card attribute grid, you can paste (or possibly enter manually) a string greater than the max length allowed for the associated column in the contact attribute assignment record.  An error then occurs during the contact save operation.  Fixed.
From the email editor (and possibly from other places as well), if the image browser is invoked to insert an image, and if more than one image is selected, an error occurs.  Fixed.
If from the address list, if an address has been deleted without the list being updated, if the refresh-political-jurisdiction function is run, an error will occur when attempting to update the non-existent address.  Fixed.
If a contact record is opened, and from the relation tab page, a link is made to a related contact, if that contact relation record is then deleted, the contact closed, the reciprocal contact relation record is still visible in the original contact.  If an attempt is made to open that contact relation record, an error occurs.  Fixed.
In non-developer mode, referring to the ContributionFirstDateWithinDateRange in a format caused an error.  Fixed.
An unmatched apostrophe in the SQL search panel will generate an error.  Fixed.