For large community sites this is a very desirable feature. Users can Nominate and Vote for a person and at the end of the month , that user is declared as Member of the month, based on who gets the highest votes.
I have come up with a recipe, as follows.
You will need
1. CCK contributed module
2. Voting API
3. Any Voting modules like nodevote or simplevote or similar.
How to do
1. Create a new content type “Nominate Member of Month”. This new content can have 2-4 fields.
a) Title can be renamed to “Username” or “Member Name”.
b) Create a new text field “Reason for Nomination”. Make it atleast 4 rows.
2. Add a link “Nominate MOM” to either your primary or secondary links section. This new link can point to the page where user can “create content” for “Nominate Member of month” content type.
3. Using “Views” create a simple view which shows the currently nominated MOM. Use following field in view in tabular form:
Reason for nomination
Add a filter so, that it only shows the members nominated in current month. You can choose to expose the filter so that users can see the past months Winners and Nominees.You can expose other filters as you feel appropriate.
In the URL section of the view add “vote_for_mom”.
In the “Header” section of the view, Add a link “Nominate MOM” as in step 2 to point to creating content.
4. Add the link “Vote MOM” to this newly created view in your primary, secondary or navigation menu.
5. Enable Voting API module and Nodevote/Simplevote module and enable voting for new content type created in step 1.
6. Provide the access to the users as desired in “access control” section.
You are all set!!!.