NOTE: I'm not ready to swing anything above $50 for this project. I'm sorry for the limited budget but it's not a big plugin. The code needs to be as clean as possible, so if you are to reuse your previous work, make sure you cleaned it up.
== [ WordPress Favorite Topic Plugin ] ==
This task involves development of a plugin for WordPress 3.5.1 . It realizes the following functions.
1. On single post page, display a button (anchor tag, no image required) allowing registered users to bookmark (or mark as favorite), and unbookmark a post. The button uses AJAX to talk to the back script (sends JSON), which uses a custom mysql table to record user_id, post_id, date_time. You'd better display a count (how many users favorited this post) within the button.
2. Create a custom user favorite posts page, display a list of favorite posts of this user with pagination. The list should include post title, count (how many users favorited this post), and date of marking. This page should also display 'my total favorite count'. Pagination must also use AJAX to get the post list (sends HTML). Only next/prev page button is required.
Both relies on AJAX. For starters, use the jQuery supplied with WordPress. Use WordPress's built-in /wp-admin/[url removed, login to view] to handle back script functions.
No function is visible when the user is not registered and logged in.
You'll also need to create a mysql table upon plugin initialization.
For #1, the php script should send AJAX to determine whether favorite is successful.
For #2, the back php script should be divided into 2, one container, and the other only contains the listing. The AJAX version utilizes the 'listing' script directly. Create this page as a 'page in WordPress', then assign it to a custom template in 'page-templates' folder. Note again, pagination should be in AJAX, and the back script sends HTML. Create a plugin option to allow adjusting number of posts per page.
You don't need to develop a shortcode handler. Don't use action/filter if not absolutely necessary. You may modify the 'twentytwelve' theme directly. But please keep the list of modified files so that I can check.
Please use plugin name 'favorite'. Please try to be simple when naming tables, columns, classes and methods. But do not use abbreviations. Single words work the best.
I'll be evaluating this plugin on a clean installation of WordPress. You'll need to setup a demo and create some test data for me to evaluate. You'll need to deliver the code before I release the milestone.