We seek a popup "todo" note manager. This is an interesting mixture of dhtml, ajax, and an xml db. We want a todo list to be available to user. The list should scroll out so that the user can write some notes. Specifications follow. The attached image is a mockup of the UI.
1) Written in PHP 5+ using XML and XmlHttpRequest.
2) Write 3 php scripts:
[login to view URL]: an include file loaded by our html files
[login to view URL]: a utility script which is called via XmlHttpRequest
[login to view URL]: a set of functions common to both of the above
3) The function showToDo(): is called from a PHP file, it prints all neccessary HTML and JavaScript to produce a popup totdo for this page. A global variable $thisRequestedPage contains the name of the current page.
4) The popup(s) are stored in an xml file, in "edit/[login to view URL]", which should be created if it does not exist. The format should be similar to:
(page file="[login to view URL]")
(note) This is the note &: comment (/note)
(date) December 10, 2005, 7:45 pm (/date)
(/page)
5) When inactive, the little "Notes" collapsed form should always be available, in the same place, as the page scrolls up and down. If user clicks on it, it expands into the expanded view, as shown. The note should use some form of fast fading animation as it opens.
6) The note is loaded as saved as follows:
* When user mouseover the collapsed note, open the note, and populate the note field by doing an XmlHttpRequest request to todo.xmlmanager.php.
* If mouse or focus exits the note, (i) collapse the note, and (ii) save the note contents to the xml file using XmlHttpRequest.
7) The function showAllNotes(): will list all notes, and the page they were on.
8) Cross browser compatability. Must work for all modern browsers: * IE 5.5+ (Windows) * Firefox 0.8+ (Windows, Mac, Linux) * Safari 1.2.4+ (Mac) * Netscape 7.1+ (Windows, Mac, Linux)* Mozilla 1.4+ (Windows, Mac, Linux) * Opera 7.5+ (Windows, Mac, Linux)
We will deliver completed project - as discussed in PMB. Probably will need some cooperation in html/javascript testing, but hopefully will not require a lot of that. We will also need a source of graphic file for that note mockup, or we can even make new clean one for free within this project.