MAth video learning site PHP MYSQL JQuery

  • Posted
  • Proposals 5
  • Remote
  • #28336
  • Expired
Puneet L.Kumaran HI Ltd I.James R.Oooooo O.Hakan E. have already sent a proposal.
  • 1


Experience Level: Expert

I want somebody to make me a MATH video learning site with pretty simple logic behind it:

1.) users log in, after their email is confirmed they are logged in as trial users - only test exams are available for them and in few weeks they receive an system email reminding them of their trial account expiring.

2.) when they pay online (credit cards and paypal - I have this part covered) or by ordinary way (when payment is received on my account i manually enable their account as real (non-trial), they
are regular members of the site, for a custom period of time (for example if they pay 10€ their account is valid for a month, if they pay 20€ for three months and if they pay 50€ the account is valid for a whole year). 1 week before expiry of their account they receive a system mail that their account is to expire, if they do not pay again they are blocked until next payment).

3.) user that made the payment is able to access all lessons and do all exams, every step they made on website is recorded, so that if they log out, next time they log in they land on page they\'ve been on before they log out, also all their exams and users results of exams (with time counters (end of exam in seconds minus input of result) for each exam they take) and notes that they may write with lessons must be saved in the database for future access of the user (so that the user can left the site anytime and when user logs in again all his data is available) and statistics (of each user).

4.)Lessons are videos in FLV format and this videos must be streamable (not downloadable - download of videos must be practically impossible, so that site shouldn\'t be robbed of it\'s lessons...), so with each lesson user gets to watch it on 3/4 of his screen (left side of display) and on the right side he has all the needed formulas for this lesson (formulas are gif images (or in case that there is no space for all formulas used in this lesson an iframe can be used)), and under the formulas there is some textarea to wich user can save his notes regarding this lesson.

5.)After lesson video is watched the page offers the user 2 possibilities:
a.) watch lesson again, this takes user to previous step (4.),
b.) do the exam - this takes user to next step (6.),

6.)Exam is very simple: on 3/4 of the right there is the math task, each exam must have 10 variations (with different numbers and results) in gif/pdf/or flash format, on the right side there are 5 things:
A.) div with time (stopwatch h/m/s that is started after the page is loaded (and user sees all info)),
B.) div with formulas needed, if it is required (optional, I will have to decide later),
C.) buttons that, when clicked, shows tip(s) which are related to this exam speciffically (points are taken from the end point result based on correct result, time needed and tips shown),
D.) 4 possible answers/solutions of the exam (like radio buttons or in some cases multiple choices are available) and \"done\" button (wich stops time and shows next div);
E.) hidden div that is displayed after the user submits his result (with done button) and in this div user is shown:
E1.)if his result was correct (if it really was then other things are displayed - description follows below):
- how many times has the user taken this exam (and if it is not the first time - how much time has he spended solving it (lowest) and if his result was correct in previous attempts
how many points he got (best score if user has taken more exams before)),
- how much time he spent for solving the exam,
- how many tips he needed (and points he lost by using tips),
- sum of points calculated on base of time and tips.
- button to close the exam and return to previous page the user was before taking exam, and button to restart the exam to start solving it again (with different variation (randomized)).
E2.)if the result wasn\'t correct then show:
- time and hints used,
- button to show the user how the exam should be solved (in gif/pdf or flash document that opens in new lightbox div on top),
- button that enables the user to go back to appropriate lesson
- button to restart exam (user goes back to (6.) but gets different variation of same test (with different results and everything)).

7.) All exams are organized in a tree structure which must be dynamical and editable, lessons are mapped with formulas and descriptions of lessons and user notes and different variations of exams.
Different variations of exams are mapped to appropriate results and every variation of exam has it\'s value in points (minimum time = maximum points - both predefined by me, each tip is a cost in
points (also predefined by me).

8.) Every user has to have it\'s own statistics about every step he made, steps and everything must be autosaved in the database.

9.) Code must be in PHP and PHP5 compatible, OOP model must be used, every unnecessary page reload must be done with JQuery (or if this is not an option Prototype...), preferably everything should be
open source, maybe FLV player in Flash would be an commercial licensed version - if xmoovStream or some open source alternative is not an option...
I also already have a dedicated 1GHz Xeon CPU, 1Gb RAM, 80Gb HDD Linux Apache2 PHP5 MySQL5 server with root access and connected via 100Mbps LAN which sholud be enough for some 20 concurrent
users (correct me if I\'m wrong and if tests will show that the server is not adequate enough then it will be upgraded appropriately).

10.) Lessons, exams, tips, ... must be managed via simple gui CMS, also based on PHP MySQL and JQuery (js), video conversion will be made offsite and videos will be uploaded by SFTP and not via
webgui (because videos can be pretty large and admin can have a slow connection that would cause timeouts, so), billing must be integrated (in a very simple way - user table should
consist when he registered, mail, password, personal data (will be defined later, nothing special), if he payed and when, for how long his payed registration is valid,...

11.) Whole site must be allow future upgrades, banner system (just basic banner system) for future ads, and some option to add some math-related flash games for future multiuser competitions.

12.) Last but not least, beta version must be ended by 15th of August 2010!

That\'s about it, some smaller details will be added later.

Clarification Board

    There are no clarification messages.