I will be developing a joomla website in the near future that will need help from a joomla frelancer... I can handle the design, layout, graphics pieces, but there's a piece of the site that I would like to freelance out. It should be a module, not a component and therefore minimize the design effort. Here is the general design of the page, and the requirements of the system.
Essentially, I want a form where a user inputs the following fields
1. db external server ip or dns reachable name
2. db user
3. db password
4. db table where content (articles for instance) is stored
5. fields of table that operation is desired upon
6. conditional field values (only do this if approved = 1, etc..)
7. a Text Area box where the user calls out a certain set of critera of things to change in those tables of the database (i will get more specific when I pick a developer). This text box will have to be large, and allow for multiline input, each line serving as a separate operation on the database content.
8. Content date range boxes to specify a date range of the articles in the database that are wished to be changed.
9. Agree to terms and condition check box (which i will write)
10. Button to execute
11. Button to save off project
12. Button to test db connection - does nothing but ensure that a connection can be made to the database that has been specified, and that the user/pass combination works, and that the table specified and fields are all there.
Requirement1: the module must check if the user currently has enough funds allocated to their account to fund the operation at hand. (each operation on their database will incur a specific set price fee). Sufficient funds must be in the account prior to fullfilling the operation.
Requirement2: The modifications to the external database table must only touch the tables/fields indicated, must not store any passwords, and must not touch anything other than text (i.e. must know if something is a html tag, link, etc..)
Requirement3: Storage of Projects: The user must be able to set up projects in their user profile for each database they are touching, so that if they'd like to run the same project again (for lets say, a different timeline) they can.
Requirement4: Before any changes are made to database, a summary of changes, and a price quote is displayed, user must then click “yes” to commence the change. It would be here that Requirement1 comes into play.
Requirement5: Before changes are made, a backup must be made and stored locally of the database table being modified. After modification, a link to this backed up table is stored for the user to download for a certain period of time.
Requirement6: It must be possible for the user to schedule projects to run at specific times. This would require them to electronically sign a document indicating that it is ok to debit their paypal accounts for any funds incurred by the scheduled run.
Requirement7: There must be a settings file that the administrator can modify that has settings in it for such things as "price per db operation". I cant think of any other "configuration type settings" but in time there may be more and this will be the file that holds them.