Removing fields from CiviCRM

<Cross posted from The code blocks will be easier to read there.>

Sometimes after launching a new site our clients find that there are fields and features in CiviCRM that they don't use.  We are working with a client that wants to remove all fields and features that aren't useful in order to simplify their user interface and make it easier to use.  This includes things like SMS features, email signatures, and demographics.  There are also several fields that they wanted renamed to be more consistent with the legacy system that they migrated from.  To fulfill this requirement I used a combination of template overrides, and CiviCRM's translation system.  

First up I should point out that if you do want to go down this path you need to make clear to the client that this will take a fair amount of effort up front (hopefully less for you now that you are reading this recipe).  Additionally, if/when you upgrade CiviCRM these customizations will need to be reviewed at the very least, and possibly even re-done to some extent.  So while this customization will make things more usable for CiviCRM administrators, it will add cost to both the initial site build, and to ongoing maintenance.  

Quick and easy Congressional District lookups for your CiviCRM contacts

By definition CiviCRM is used by many organizations in the political sphere. For those organizations working in the US one useful metric to have on your contacts is their congressional district. Up until now this has usually been accomplished with either custom code, or exporting your contacts, sending them through a bulk lookup tool, and re-importing them. There is now an easier way to get this with the CiviCRM Sunlight Congressional District module.