1 / 12

Advanced Personal Organizer: A Web-Based System for Efficient Management

This presentation outlines the Advanced Personal Organizer (APO), a web-based system designed for managing various personal data such as bookmarks, appointments, contacts, emails, files, and notes. It supports multiple users simultaneously and features personalized account settings. The presentation covers design, implementation details, and the 3-tier architecture of the system, which utilizes HTML, JavaScript, PHP, and MySQL for its operation. A live demo showcases the functionality of the organizer, emphasizing its user-friendly interface and extensibility.

hollye
Télécharger la présentation

Advanced Personal Organizer: A Web-Based System for Efficient Management

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Web Database Systems Term Project Presentation Advanced Personal Organizer Andreas Mueller Fall 2005 California State University Sacramento Csc122 - Term Project Presentation, Fall 2005 Advanced Personal Organizer 1

  2. Presentation Outline • Advanced Personal Organizer – An Introduction • Design and Models • The 3-tier Architecture • Implementation Details • Demo Csc122 - Term Project Presentation, Fall 2005 Advanced Personal Organizer 2

  3. Introduction (1) – An APO web-based system for managing: • bookmarks • appointments • contacts • emails • files • notes • allows multiple users at the same time • personalized account settings Csc122 - Term Project Presentation, Fall 2005 Advanced Personal Organizer 3

  4. Introduction (2) Csc122 - Term Project Presentation, Fall 2005 Advanced Personal Organizer 4

  5. Entity-Relationship-Diagram Csc122 - Term Project Presentation, Fall 2005 Advanced Personal Organizer 5

  6. 3-tier Architecture HTML, Javascript Presentation Logical PHP 4.0 Data MySQL-DBMS Csc122 - Term Project Presentation, Fall 2005 Advanced Personal Organizer 6

  7. The Data-Tier – MySQL DBMS CREATE TABLE user_profile ( id int(5) NOT NULL default '0', last_name varchar(64), first_name varchar(64), email varchar(64), fTZ int(11), sTZ int(11), popsvr varchar(80), user varchar(40), passwd varchar(40), email_add varchar(80), invite_text text, PRIMARY KEY (id) ) TYPE=MyISAM; CREATE TABLE bookmarks_cat ( catid int(11) NOT NULL auto_increment, user_id int(11), category varchar(64), PRIMARY KEY (catid), UNIQUE KEY user_id (user_id,category) ) TYPE=MyISAM; DB-Tables: bookmarks  bookmarks_cat  calendar  contacts contacts_cat  email  files_cat  notes  notes_cat  rss_newsreader  sessionvars  user_profile  users  CREATE TABLE bookmarks ( id int(128) NOT NULL auto_increment, user_id int(11), cat int(11), url varchar(128), name varchar(128), description varchar(128), PRIMARY KEY (id) ) TYPE=MyISAM; CREATE TABLE email ( id varchar(64), user_id int(11), seen tinyint(1), answered tinyint(1) , PRIMARY KEY (id) ) TYPE=MyISAM; Csc122 - Term Project Presentation, Fall 2005 Advanced Personal Organizer 7

  8. Implementation (1) • File-Organisation: • 2 classes for the session-management • one class for every module • config-files • language files /var/www: classes config includes styles header.php index.php login.php register.php system_XXX.php Csc122 - Term Project Presentation, Fall 2005 Advanced Personal Organizer 8

  9. Implementation (2) – Sending an Email function send_email($servername, $emailaddress, $username, $password, $last_name, $first_name, $to, $cc, $su, $ms){ if (!empty($cc)) $to=$to.",".$cc; $to_array=explode(",",$to); $smtp = fsockopen($servername, 25); fputs($smtp, "HELO $servername \r\n"); fputs($smtp, "AUTH LOGIN\r\n"); fputs($smtp, base64_encode($username)."\r\n"); fputs($smtp, base64_encode($password)."\r\n"); fputs($smtp, "MAIL FROM: $emailaddress \r\n"); for ($i=0;$i<count($to_array);++$i){ fputs($smtp, "RCPT TO: <$to_array[$i]> \r\n"); } fputs($smtp, "DATA \r\n"); fputs($smtp, "to: $to \r\n"); fputs($smtp, "Subject: $su \r\n"); fputs($smtp, "cc: $cc \r\n"); fputs($smtp, "From: $first_name $last_name <$emailaddress> \r\n\r\n"); fputs($smtp, "$ms \r\n\r\n"); fputs($smtp, ".\r\n"); fputs($smtp, "QUIT\r\n"); fclose($smtp); Csc122 - Term Project Presentation, Fall 2005 Advanced Personal Organizer 9

  10. Implementation (3) - The Language File $emails_actions_startpage_0_0 = "compose email"; $emails_actions_startpage_1_0 = "reply to sender"; $emails_actions_startpage_2_0 = "mark as read"; $emails_actions_startpage_3_0 = "mark as unread"; $emails_actions_startpage_4_0 = "delete email"; english.php global $language, ${ 'emails_actions_startpage_0_' . $language}, ${ 'emails_actions_startpage_1_' . $language}, ${ 'emails_actions_startpage_2_' . $language}, ${ 'emails_actions_startpage_3_' . $language}, ${ 'emails_actions_startpage_4_' . $language}; system_email.php <input type=“submit” name=“comp” value=“ '.${ 'emails_actions_startpage_0_' . $language}.‘ ",> Csc122 - Term Project Presentation, Fall 2005 Advanced Personal Organizer 10

  11. Evaluation and Conclusion • userfriendly web-based Organizer • multiple users / different views • common 3-tier Architecture • easy to maintain (Object-Oriented) • Extensible Csc122 - Term Project Presentation, Fall 2005 Advanced Personal Organizer 11

  12. Questions and Demo • any Questions? • ... • No? • ... • ok let‘s do the Demo! Csc122 - Term Project Presentation, Fall 2005 Advanced Personal Organizer 12

More Related