
.
.
After finalising a lot of work done on a new and large social networking site in Germany, that uses Drupal, I am contributing back to the Drupal community the changes and new modules that I have made. Warning: these modules were made to function together, and although I think I have given them what is necessary for unbundling, there may be gotchas. ONLY use them if you are prepared to diagnose those or live with the consequences of a busted module. I repeat; these modules may kill your cat, steal your wife, and run off to a support desk in India.
Descriptions:
User Promotions: Give users the chance to request a promotion to a higher level role, and enable that promotion. With a block for User admins to see when they are on the site.

Legalagree: Provide a Terms and Conditions to be agreed to upon sign-up, also note which site was signed up at (for multi-site). A lot of this code came from an example in the Pro Drupal Dev book.
Mass_Contact: A modification of the existing module to enable functionality such as working with the site registered data from Legalagree module (to send to users who signed up on that site only). Other modifications include adding a preview function, and allowing to choose another node type of newsletter to send as well. (Admin creates newsletter, then sends to specific roles or all.)

Tagadelic Block Filter: Don't want to display some of the words that are appearing in your Tagadelic block word cloud? Use this. Tested on one block only, but should be capable of multiple...although I'd have to ask why you are filling your screen with tag clouds...
German translations (de.po) are with every module.
If you have any constructive feedback as to the quality of the code I'd be glad to hear it. All code is considered Alpha quality. It works but is unproven in high traffic.