The program I need created must be able to take a ten digit US phone number and search for it in a database which will be composed of several text documents. These documents will be selected by the user and saved in a configuration file. The program will also keep track of the last time the text files used to create the database has been updated. If it is under 31 days, the text stays red; over 31 and the program changes (read on to learn more).
The program should look like the enclosed jpeg labeled "Pic1.jpg". It's in the zip file "Graphics.zip" which also contains all other pictures. You can find all the files for this project attached with this description. All you have to do is code it; should be relatively simple!
If the phone number is found in the database, the program will display a status message that says: Invalid phone number ([login to view URL]). If the phone number is NOT found in the document, the status message says: dialing... ([login to view URL]). Once it has transferred the number to the magic jack, the program will clear the number and be ready for another number ([login to view URL]).
If the number IS valid (meaning it's not in any of the text files), the program should be able to take that phone number and transfer it to the magic jack software for dialing. The program should also output the phone numbers which ARE dialed to a text document.
If the program takes more than a second or two to get the information, there should be a message that says "Looking up #". ([login to view URL])
-------------------------------------------------------------
On the menu bar, there should be File, Options, About, and Help
In the File menu, there should be the following:
Always on top ----> Keeps the program on top of all others (Should have a checkmark that enables or disables this)
Exit ----> Exits the program
In the Options menu, there should be the following:
Import DNC ----> This should open another window (see [login to view URL]). In this window a user can browse for a text document to be used in the database (or several small databases if you choose to program it that way - whichever works best and fastest). The program should be able to support up to five text documents (See [login to view URL]). Sample text files that approximate the actual ones that will be used are included as file "Text_Files.zip". You'll notice there are a LOT of numbers in these files, so the database must be capable of handling large files. If they cancel the import, the 31 day countdown should remain the same as before they entered the Import DNC window.
Call List ----> This should open a new window ([login to view URL]) which lets the user browse for the folder in which they would like to store their call log. The log file should automatically be named as [login to view URL], where 01-01-2010 is the current date. There should be a new call log file created for each day the program is used.
*** A note about the database ***
If you look in [login to view URL], you'll see "Valid: 31 Days" Everytime a user clears the current database and loads new text files, this number should be reset to 31 days. If after 31 days the user has NOT updated the text files, the text should change to "EXPIRED 1 day(s)", where 1 is the amount of days over 31. If the list is expired, all the text in the program should turn to red to remind the user (see [login to view URL]).
For example, if I clicked on "Import DNC" and selected between 1-5 text files to include in the database ten days ago, the text would say "VALID: 21 Days" because my list has only been used for 10 days (31-10=21). If I haven't used the import DNC option for 35 days, the text would say "EXPIRED 4 day(s)" and all the text, from the menu to the status bar, should be red until the Import DNC option is run again (see enclosed pictures). When the import is completed the program reverts back to black text, and the list goes back to "VALID: 31 Days".
Window Size ----> This should open a sub menu where you can select via check mark either compact, small, medium, or large. These will make the whole application size change; small is 50% the size of medium, and large is 50% bigger than medium. The compact option should look like Pic9.jpg.
The About option should open a small window that looks like Pic8.jpg.
The Help option should open "help.pdf" in the default browser (the file will be located in the resources folder of the program)
(I will make the help file after the program so don't expect to find it here)
---------------------------------------------------------------
Extra Information:
- The large number buttons can be pressed to enter in the phone number, or a user can press the numbers on the keyboard; either should work
- The program should automatically move to the next part of the phone number (there are three sections, one for the area code, one for the prefix, and one for the last four digits; when you type or click on the numbers it should automatically move from area code to prefix to digits and vice versa)
- On the status bar where the # of days valid is listed, there is a small circle. This circle is green when the import DNC is still under 31 days, and red when expired (see [login to view URL] for Green, [login to view URL] for Red).
- Under the import DNC, the user should be able to browse for up to five text files; they can use as few as one
- After a number is dialed or rejected, the program should clear the number listed automatically after 5 seconds (whether the program passes the number on to magic jack or if the number is rejected)
- The fonts I used are Franklin Gothic Heavy & Arial (just in the about section); there are PSDs for each window with all the graphics you'll need to make the program; each PSD has the different status messages and program states already created
- If the phone number is invalid, then the phone number box should clear automatically after 5 seconds and go back to the ready to dial setting
- The program should have an executable .exe with the designed icon ([login to view URL])
- Any additional files should be included in a folder called "resources". The program should run when executed and not require installation on the system.
- The enclosed pictures do not show the Menu (File, Options, About, Help); the menu should be standard gray, above the program window like every other program on the planet.
- The entire program should be in a standard window, with the "-" and "x" in the top right; the window can only be resized through the options menu; there is no full screen option.
- The title of the program on the taskbar and the window should be "DNC Filter 1.0"; the exe should be called "DNCFilter.exe"
- The program should be able to run on XP, Vista, and Windows 7
I've done all the design work so this should be a really easy project to finish; that being said, I NEED THIS PROJECT TO BE COMPLETED IN 8-10 DAYS!
--------------------------------------------------------------
Here is a description of the included graphic files:
JPGs
Pic1: The program ready to search the database(s); the database has been updated today, and the bottom circle is green indicating the list is up to date.
Pic1a: The program ready with a phone number entered
Pic2: The program when a phone number has been found in the database; the status changes to invalid phone #; after 5 seconds the program goes back to Pic1
Pic3: The program dialing a phone number; the status changes to dialing
Pic4: The program looking up a phone number from the database (if it takes more than 1-2 seconds)
Pic5: The window shown when the "Import DNC" option is clicked in the Options menu; no lists have been selected
Pic5a: The same window as Pic5, with four lists selected; clicking on the locate button browses the computer for text files in the proper format
Pic6: The window that appears when the "Call List" option is cliced in the Options menu; no location has been selected
Pic6a: The same window as Pic6, only a location for the logs has been selected; clicking on locate browses the computer for a folder location to save each daily call log
Pic7: The program ready to search through the database; the database has not been updated for one day, and so the text has turned red, and the bottom left circle has changed to red as well
Pic7a: The same as Pic7, without a phone number entered.
Pic7b: Same as Pic7 looking up a phone #
Pic7c: Same as Pic7 dialing phone #
Pic7d: Same as Pic7 only the number has been found to be invalid, since it is in the database
Pic8: The window shown when the "About" option is pressed on the menu bar
Pic9: This is the compact window ready to search
Pic9a: Same as Pic9 but with a phone number entered via the keyboard
PSDs
All files have all necessary status changes, font color changes, etc included and organized into layers and folders. Each file included both normal and red text.