WO2007002791A2 - Scheduling and information sharing and distribution system and method - Google Patents

Scheduling and information sharing and distribution system and method Download PDF

Info

Publication number
WO2007002791A2
WO2007002791A2 PCT/US2006/025265 US2006025265W WO2007002791A2 WO 2007002791 A2 WO2007002791 A2 WO 2007002791A2 US 2006025265 W US2006025265 W US 2006025265W WO 2007002791 A2 WO2007002791 A2 WO 2007002791A2
Authority
WO
WIPO (PCT)
Prior art keywords
user
database
school
information
events
Prior art date
Application number
PCT/US2006/025265
Other languages
French (fr)
Other versions
WO2007002791A3 (en
Inventor
William F. Fay
Jody Beth Fay
Original Assignee
Fay William F
Jody Beth Fay
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fay William F, Jody Beth Fay filed Critical Fay William F
Publication of WO2007002791A2 publication Critical patent/WO2007002791A2/en
Publication of WO2007002791A3 publication Critical patent/WO2007002791A3/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • G06Q10/109Time management, e.g. calendars, reminders, meetings or time accounting

Definitions

  • the present invention relates generally to the field of online and offline scheduling and information distribution and sharing and more particularly to a scheduling, calendar and information distribution system and method. II. Description of the Related Art.
  • calendar events over a network from a single source so that a plurality of computers with various operating systems and calendar program software can pick up the events and
  • the invention features a system and method for coordinating online and
  • the system provides a widespread distribution of calendar events over a network where a plurality of computers can pick up the events into their own platform and
  • the system allows a user to streamline calendar information from
  • the system and method can
  • system and method can be utilized to manage parent
  • the various calendars can be distributed to the faculty of each school and can also be available to parents.
  • the streamlined distribution of information can include
  • the invention features a scheduling system, including a central server connected to a network, a plurality of user computers connected to the
  • the invention features a scheduling system, including a central processing unit (CPU) and a central processing unit (CPU) for performing a scheduling system.
  • server connected to a network, a plurality of user computers connected to the network, a
  • the system further includes at least one object that has a unique schedule of information.
  • system further includes at least one user object having unique user information.
  • system further includes at least one client object
  • system further includes session variables that are
  • system further includes objects having associated
  • system further includes a session file, including data related to the class libraries and data related to user objects.
  • system further includes school objects that are correlated with the user objects.
  • the school object includes a school identifier and the user object includes a user identifier.
  • the school identifier and user identifier are used to access
  • the user and school objects are correlated by a string mat identifies desired data from the school object.
  • the invention features a method of obtaining calendar information
  • the invention features a method of organizing events, including
  • the method further includes a user object and a school object.
  • the user and school objects are related by identifying a
  • the plurality of sources each includes a user object.
  • the plurality of sources can each access and download the event information in a form suitable to the personal preferences of the individual source
  • Figure 1 illustrates a system level diagram of an embodiment of a scheduling, calendar and information distribution system
  • Figure 2 illustrates an embodiment of a scheduling webpage
  • Figure 3 illustrates an embodiment of a parent request webpage
  • Figure 4 illustrates an embodiment of a school request page
  • Figure 5 illustrates an embodiment of an organization request page
  • Figure 6 illustrates an embodiment of an online calendar webpage
  • Figure 7 illustrates an embodiment of a category selection webpage
  • Figure 8 illustrates an embodiment of a calendar preview webpage.
  • a system and method for coordinating online and offline schedules is described.
  • the embodiments described herein are able to manage huge numbers of variations from a very small database record set.
  • the system allows a user to streamline calendar information frpm various online and offline sources into one distribution channel.
  • the system and method can provide an online interface with numerous outlets to other calendar systems, without the need for a license for each additional calendar system.
  • Information can be standardized to be entered into the system only once and subsequently be distributed to various types of
  • system and method can be utilized to manage parent
  • the various calendars can be distributed to the faculty of each school
  • the streamlined distribution of information can include
  • system and method is a back-end solution for schools.
  • system and method is a back-end solution for schools.
  • other organizations can
  • system can be implemented by any organization that disseminates scheduling
  • a centralized location receives numerous requests to be added to the system.
  • the requests can come from schools, parents, other individuals and
  • the requests come from those users who wish to be
  • each user has input into the schedule of events so that conflicts are minimized or fully eliminated.
  • a school administrator can access the system and submit an online request to be added to the system. The system administrator receives the request and
  • the school in this instance, is added to the database.
  • many of the schools in this instance, is added to the database.
  • the database is MySQL.
  • the system administrator provides the school administrator a unique username and password. Immediately, the school administrator can add event categories to the online calendar provided in the system. The school administrator can then add specific events to the online calendar.
  • parents can access the system and create an account. Every time the parent logs into the system, the parent can select the categories of events that they want to view.
  • the system is an online application that maintains application status
  • the session variables are stored on a central processing unit (CPU) to store and retrieve data for each user.
  • the session variables are stored on a central processing unit (CPU) to perform session variables for each user.
  • the session variables are stored on a central processing unit (CPU) to perform session variables for each user.
  • class libraries are written for each unique object in the
  • class object "Users” contains all the needed properties
  • the class libraries are included in the session file and
  • the system allows for easy management of many schools or other organizations. For example, the system might have 10 5 OOO schools yet accessing and managing any one school is made easy by the use of objects.
  • the "School" object is called once and is simply passed
  • the "User" object operates in a similar manner allowing for the dynamic creation of literally millions of users by simply using email addresses as the unique identifier.
  • the system typically also allows for the elimination of redundant information.
  • This storage allows a unique calendar for each parent based upon a single master calendar that the school administration has created. There is typically no need to store
  • system further includes a Category Control Class Object.
  • class contains all the methods required to manipulate and query categories and subcategories.
  • a Constructor For Category Object instantiates variables required for operation of
  • Database Object takes data from the array and attempts to create a new subcategory record
  • Subcategory from the Database Object given a subcategory identifier, deletes this
  • Subcategories Object in the database updates the database record for a given subcategory
  • Return Array Of Category Data Object optionally accepts an existing category identifier
  • a Return Array Of Subcategory Data Object optionally accepts an existing category identifier and subcategory identifier returns an array of data for a given subcategory witnin the category identifier.
  • HTML selection box with a list of all known categories and subcategories and optionally sets
  • a HTML Form For Inputting Category Data For- Creation Or Update Obj ect displays a HTML form allowing the user to enter data about a new category or for use in creating a
  • categories data is displayed for editing.
  • a Display A HTML Form For Inputting Category
  • Data For Creation Or Update Object displays a HTML form allowing the user to enter data
  • Options Object creates a table style display of categories of all current categories; the table includes links to add new subcategories and the option to delete categories (and associated category events).
  • database object sets the current working category to requested category (if supplied)
  • Subcategory Identifier loads appropriate data from database sets the current working
  • subcategory to requested subcategory (if supplied) and requests subcategory information
  • a Clients Control Class Object contains all the methods required to manipulate and query client records stored in the database. It also supplies methods to display HTML data
  • a Constructor For Client Object instantiates variables
  • a New Client And Client Data To The Database Object creates a new client database record from the values array, described above, which contains an associative array
  • a Return Verbose Client Information Object returns an array of verbose data for current working client
  • a Get All Clients Information Object returns an array of all client information (terse).
  • a Display A HTML Form Element For Selecting A Client Identifier Object generates a HTML selection box with a list of all
  • a Display A HTML Form For Inputting Client Data For Creation Or Update
  • Object displays a HTML form allowing the user to enter data about a new client or to edit
  • a Display A HTML Table Of Client Options Object generates a HTML table with a list of options for each known client options presented for editing and deletion of client/client data. It also displays terse client data.
  • a Fill Clients Array With Client Data Object fills multidimensional clients array with arrays of terse client data retrieved from the objects above.
  • a number of objects can be defined and used to set and
  • An Events Object contains all the methods required to manipulate and query event
  • a Layout Class Object is a template class that generates the table based layout website based on supplied HTML arguments.
  • the system further includes a Constructor For
  • a Parse Page Template Object returns a HTML table
  • a Set Main Output Width Object sets HTML output width of main content section of template.
  • a Login Class Object provides authentication and associated services for system
  • Authentication is hierarchical hi nature with all users having associated group id's
  • a HTML Login Form Object presents a HTML based login form allowing the user
  • a Authenticate User Submitted Username And Password Object validates incoming username and password data from the
  • variables are set identifying the user's client identifier, user identifier and group identifier.
  • a Menu Class Object provides HTML menus for page formatting. Generated menu
  • a Return A HTML Menu Object returns a HTML menu in table format. The menu typically only displays options available to the current working
  • a Queries Database For Menu Information Object retrieves menu options from the
  • a Clients Control Class Object contains all the methods
  • a Constructor For User Object is a constructor for the user object and instantiates variables required for
  • a Display A HTML Form For Inputting User Data For Creation Or Update Object displays a HTML form allowing the user to enter data about a new user or to edit data for the current working user. If a current working user exists, the user data is displayed for editing.
  • a HTML Table Of User Options Object generates a HTML table with a list of options for each known user options presented for editing and deletion of user/user data.
  • Information Object returns an array of all user information (terse).
  • User Data Object fills a multidimensional users array with arrays of terse user data retrieved from the database.
  • Figure 1 illustrates a system level diagram of an embodiment of a scheduling, calendar and information distribution system 100 illustrating an implementation of the
  • the server 120 and database 130 is connected. As described above, a plurality of user computers 140 is also connected to the network.
  • the system provides a
  • the download tool can support Microsoft Outlook as
  • FIG. 2 illustrates an embodiment of a scheduling webpage.
  • the scheduling webpage typically includes a name and password field for entry of the user ' s unique name and password. By entering the name and password, a user can thus access the system and download and modify information as needed or desired.
  • the webpage further typically includes visual elements that can be
  • elements can include parent, school and club/organization entry points.
  • Figure 3 illustrates an embodiment of a parent request webpage. On this webpage, a parent desiring to be part of the system in order to download, access and add information
  • Information fields for data entry can include an
  • Figure 4 illustrates an embodiment of a school request webpage. On this webpage,
  • Information fields for data entry can sign up with the system.
  • Information fields for data entry can be
  • Figure 5 illustrates an embodiment of a organization request webpage.
  • Information fields for data entry can include an organization, contact name, email address, phone number address and
  • Figure 6 illustrates an embodiment of an online calendar webpage. This webpage can be accessed from the main webpage in order to display an exemplary calendar in which a user can have a quick view to make a determination whether or not a particular day has an
  • a day that includes one or more events is
  • Additional tabs on the screen can allow a user to switch between a daily and monthly view
  • Figure 7 illustrates an embodiment of a category selection webpage.
  • user can pick and choose which types of events are displayed in the user's personal calendar. The user can then optionally save or cancel the selection.
  • Figure 8 illustrates an embodiment of a calendar preview webpage.
  • the user can access the main webpage
  • the tabs on the right side typically.
  • the user can click on any day of the
  • a user can with one simple step download all pertinent information and calendar events to his or her personal computer without any major effort or coordination.
  • HTML has been disclosed as exemplary programming. It is understood that general programmatically displayed generated programming, or object oriented programming, is contemplated.
  • Apparatus may be implemented in a computer program product tangibly embodied in a machine-readable storage device for execution by a programmable
  • processors may be performed by a programmable processor executing a program of instructions to perform functions by operating on input data and generating output. Further embodiments may advantageously be implemented in one or more computer
  • programs that are executable on aprogrammable system including at least one programmable processor coupled to receive data and instructions from, and transmit data and instructions,
  • a data storage system at least one input device, and at least one output device.
  • computer program may be implemented in a high level procedural or object-oriented
  • Suitable processors include, by way of example, both general and special
  • a processor receives instructions and data from read- only memory and or RAM.
  • Storage devices suitable for tangibly embodying computer program instructions and data include all forms of non- volatile memory, including by way
  • semiconductor memory devices such as EPROM, EEPROM 5 and flash memory
  • ASICs application specific integrated circuits

Abstract

A system and method for coordinating online and offline schedules. The system allows a user to streamline calendar information from various online and offline sources into one distribution channel. The system and method provides an online interface with numerous outlets to other calendar systems, without the need for a license for each additional calendar system. In general, the system is capable of maintaining varying capacity and is scalable. As such, the system is able to manage huge variation and user populations in a small data set. Information can be standardized to be entered into the system only once and subsequently be distributed to various types of programs and platforms.

Description

SCHEDULING AND INFORMATION SHARING AND DISTRIBUTION
SYSTEM AND METHOD
PCT APPLICATION FOR LETTERS PATENT UNITED STATES RECEIVING OFFICE
PRIORITY CLAIM
To the fullest extent permitted by law, the present application claims priority to and the full benefit as a patent cooperation treaty application to United States Provisional Patent Application Number entitled SCHEDULING AND INFORMATION SPIARING AND DISTRIBUTION SYSTEM AND METHOD5 filed on June 29, 2004, having assigned Serial No. 60/583,711, and to United States Non-provisional Patent Application Number entitled SCHEDULING AND INFORMATION SHARING AND DISTRIBUTION SYSTEM AND METHOD5 filed on June 28, 2005, having assigned Serial No. 11/168,166.
BACKGROUND
I. Field of the Invention
The present invention relates generally to the field of online and offline scheduling and information distribution and sharing and more particularly to a scheduling, calendar and information distribution system and method. II. Description of the Related Art.
Many software calendar applications and local C++ or Visual Basic programs require
the user to enter events into their application and only from a machine with a licensed
software package. Furthermore, users and entities having common events often have trouble
centralizing and organizing the common event information so that conflicts are identified and
minimized. Furthermore, there is no one standardized system for widespread distribution of
calendar events over a network from a single source so that a plurality of computers with various operating systems and calendar program software can pick up the events and
integrate them into their own platforms.
SUMMARY
In general, the invention features a system and method for coordinating online and
offline schedules. The system provides a widespread distribution of calendar events over a network where a plurality of computers can pick up the events into their own platform and
scheduling or calendar application package for full integration of the respective schedule
onto the computer. The system allows a user to streamline calendar information from
various online and offline sources into one distribution channel. The system and method can
provide an online interface with numerous outlets to other calendar systems, without the need for a license for each additional calendar system. Information can be standardized to be entered into the system only once and subsequently be distributed to various types of programs and platforms. Therefore, the system provides an online interface with numerous
outlets to other software packages, modules and calendar packages.
Ia a typical implementation, the system and method can be utilized to manage parent
and child schedules and can be further used to manage thousands of school calendars from one central location. The various calendars can be distributed to the faculty of each school and can also be available to parents. The streamlined distribution of information can include
homework assignments, sporting events, database and file-based driven websites for classes,
distribution for teachers and the like. In a typical implementation, the system and method
is a back-end solution for schools.
In general, in one aspect, the invention features a scheduling system, including a central server connected to a network, a plurality of user computers connected to the
network, a webpage having a schedule of events stored in a database, a process for allowing
events to be added to the database and a process for allowing selected events from the
webpage to be downloaded to one or more of the plurality of user computers by a single click. In another aspect, the invention features a scheduling system, including a central
server connected to a network, a plurality of user computers connected to the network, a
webpage for displaying and manipulating a schedule of events stored in a database, the
webpage being accessible by the central server and the plurality of user computers, a process
for adding events to the database from the central server and from the plurality of user
computers, a process for choosing a subset of selected events from the webpage to be
downloaded to one or more of the plurality of user computers by a single click and a process
residing on the central server for processing the events in the database and distributing the events over the network.
In one implementation, the system further includes at least one object that has a unique schedule of information.
Ih another implementation, the system further includes at least one user object having unique user information.
In another implementation, the system further includes at least one client object
having unique client information. In another implementation, the system further includes session variables that are
stored on the central server while the webpage is accessed by one or more of the user
computers.
In another implementation, the system further includes objects having associated
class libraries.
Ih yet another implementation, the system further includes a session file, including data related to the class libraries and data related to user objects.
Ih yet another implementation, the system further includes school objects that are correlated with the user objects.
In another implementation, the school object includes a school identifier and the user object includes a user identifier.
In another implementation, the school identifier and user identifier are used to access
and pass data related only to the school and user identifiers.
Ia another implementation, the user and school objects are correlated by a string mat identifies desired data from the school object. In another aspect, the invention features a method of obtaining calendar information,
including accessing an online webpage having an online calendar connected to a database,
choosing event categories associated with the webpage and the database, previewing specific
events included in each category and downloading the online calendar events to a personal
calendar located on a user computer.
Ia another aspect, the invention features a method of organizing events, including
receiving a plurality of related event information from a plurality of sources having a common relation, organizing the event information into event categories in an online database connected to an online calendar, making the database available to the plurality of sources, optionally allowing the plurality of sources to modify and add to the database and
allowing the plurality of sources to access and download the event information in a form
suitable to the personal preferences of the individual source.
Ih one implementation, the method further includes a user object and a school object.
In another implementation, the user and school objects are related by identifying a
subset of data from the school obj ect into the user object.
Ih another implementation, the plurality of sources each includes a user object. In another implementation, the plurality of sources can each access and download the event information in a form suitable to the personal preferences of the individual source
and optionally modify and add to the database through the user objects.
One advantage of the invention is that voluminous scheduling information can be
compiled into a single distribution channel that many users can access.
Another advantage of the invention is information can be standardized and be made
available to various other programs and modules.
Other obj ects, advantages and capabilities of the invention will become apparent from the following description taken in conjunction with the accompanying drawings showing the preferred embodiment of the invention.
BRIEF DESCRIPTION OF THE DRAWINGS
Figure 1 illustrates a system level diagram of an embodiment of a scheduling, calendar and information distribution system;
Figure 2 illustrates an embodiment of a scheduling webpage; Figure 3 illustrates an embodiment of a parent request webpage; Figure 4 illustrates an embodiment of a school request page; Figure 5 illustrates an embodiment of an organization request page; Figure 6 illustrates an embodiment of an online calendar webpage; Figure 7 illustrates an embodiment of a category selection webpage; and Figure 8 illustrates an embodiment of a calendar preview webpage.
DETAILED DESCRIPTION
To the fullest extent permitted by law, the present application claims priority to and the full benefit as a patent cooperation treaty application to United States Provisional Patent Application Number entitled "Scheduling and Information Sharing and Distribution System and Method", filed on June 29, 2004, having assigned Serial No. 60/583,711, and to United States Non-provisional Patent Application Number entitled "Scheduling and Information Sharing and Distribution System and Method", filed on June 28, 2005, having assigned Serial No. 11/168,166.
A system and method for coordinating online and offline schedules is described. The embodiments described herein are able to manage huge numbers of variations from a very small database record set. The system allows a user to streamline calendar information frpm various online and offline sources into one distribution channel. The system and method can provide an online interface with numerous outlets to other calendar systems, without the need for a license for each additional calendar system. Information can be standardized to be entered into the system only once and subsequently be distributed to various types of
programs and platforms. Therefore, the system provides an online interface with numerous
outlets to other software packages, modules and calendar packages.
In a typical implementation, the system and method can be utilized to manage parent
and child schedules and can be further used to manage thousands of school calendars from
one central location. The various calendars can be distributed to the faculty of each school
and can also be available to parents. The streamlined distribution of information can include
homework assignments, database and file-based driven websites for classes, distribution for
teachers and the like. In a typical implementation, the system and method is a back-end solution for schools. In general, it is further understood that several other organizations can
implement the system. For example, sports leagues can advantageously use the system. Ih
general, the system can be implemented by any organization that disseminates scheduling
information to a large number of users and customizes the information and downloads the data into multiple calendar platforms.
In a typical system, a centralized location receives numerous requests to be added to the system. The requests can come from schools, parents, other individuals and
organizations and clubs. Typically, the requests come from those users who wish to be
added to the main distribution channel through which the scheduling information flows. In
this way, each user has input into the schedule of events so that conflicts are minimized or fully eliminated. For example, a school administrator can access the system and submit an online request to be added to the system. The system administrator receives the request and
the school, in this instance, is added to the database. In a typical implementation, many
languages can be used such as PHP, HTML5 C++, Javascript, XML or any other suitable
language. In a typical implementation the database is MySQL.
Once the request has been received and processed and the school is entered into the
database, the system administrator provides the school administrator a unique username and password. Immediately, the school administrator can add event categories to the online calendar provided in the system. The school administrator can then add specific events to the online calendar.
Similarly, parents can access the system and create an account. Every time the parent logs into the system, the parent can select the categories of events that they want to view.
The entire online calendar is then displayed to the parent and they can download the online
calendar directly into their personal computer or other device, into a suitable application such
as Microsoft Outlook.
IQ general, the system is an online application that maintains application status
through unique session variables for each user. The session variables are stored on a central
server while the browser is open. In a typical embodiment, class libraries are written for each unique object in the
system. For example, the class object "Users" contains all the needed properties and
methods for a user at any given time. The class libraries are included in the session file and
compiled at runtime for each unique user that logs into the system.
The various webpages within the system through which the users navigate initiate the
class libraries and create local instances of the object.
The system allows for easy management of many schools or other organizations. For example, the system might have 105OOO schools yet accessing and managing any one school is made easy by the use of objects. The "School" object is called once and is simply passed
a unique identifier for the school that the system desires to edit. The "School" object used
the unique identifier to access all the correct information in the databases or file system and
only runs optimized queries in the database. The "User" object operates in a similar manner allowing for the dynamic creation of literally millions of users by simply using email addresses as the unique identifier.
The system typically also allows for the elimination of redundant information. For
example, there might be 1000 parents who want the same calendar. The "User" object
simply stores the school identifier for that parent and a single string with their category
preferences. This storage allows a unique calendar for each parent based upon a single master calendar that the school administration has created. There is typically no need to store
a complete calendar for each user. IQ addition, the system allows for virtually infinite
combinations of schools and events while mamtaining a manageable record set. This is true
because parents are picking categories rather than individual events.
Many additional objects used in the system are now described.
In one implementation, the system further includes a Category Control Class Object.
In general, categories and subcategories are used and manipulated in the system. The object
class contains all the methods required to manipulate and query categories and subcategories.
In general, the Category Control Class Object and all related objects are generally accessible
by the public to manipulate and query the categories and subcategories.
A Constructor For Category Object instantiates variables required for operation of
other methods related to the obj ect. An add a new category to the database obj ect takes data
from a related array and attempts to create a new category record in the database checks
database for last category identifier in order to assign the new category identifier which must
be unique returns a string error or success message. An Add New Subcategory to the
Database Object takes data from the array and attempts to create a new subcategory record
in the database the subcategory is created with the current working category as its parent
therefore no category identifier is required returns a string error or success message. A Delete A Category from the Database Object, given a category identifier, deletes this
category from the database returns a string error or success message. A Delete A
Subcategory from the Database Object, given a subcategory identifier, deletes this
subcategory from the database returns a string error or success message. An Edit A
Subcategories Object in the database updates the database record for a given subcategory
with new/edited data passed in the array and returns a string error or success message. A
Return Array Of Category Data Object optionally accepts an existing category identifier and
returns category identifier from an array of categories. A Return Array Of Subcategory Data Object optionally accepts an existing category identifier and subcategory identifier returns an array of data for a given subcategory witnin the category identifier. A Create A HTML
Drop-Down Selection Box Of Known Categories And Subcategories Object, generates a
HTML selection box with a list of all known categories and subcategories and optionally sets
an option item as selected if that options identifier is passed in selected categories. A
Display A HTML Form For Inputting Category Data For- Creation Or Update Obj ect displays a HTML form allowing the user to enter data about a new category or for use in creating a
new category; if the category identifier is passed, the current working category is set and that
categories data is displayed for editing. A Display A HTML Form For Inputting Category
Data For Creation Or Update Object displays a HTML form allowing the user to enter data
about a new subcategory or for use in creating a new subcategory; if the subcategory
identifier is passed, the current working subcategory is set and that subcategories data is displayed for editing. A Create HTML Table List View Of Categories With. Options Object creates a table style display of categories of all current categories; the table includes links to add new subcategories and the option to delete categories (and associated category events).
A Set The Current Working Category To Category Identifier loads appropriate data from
database object sets the current working category to requested category (if supplied) and
requests category information from the database to populate the current obj ect with category information relevant to this category. A Set The Current Working Subcategory To
Subcategory Identifier loads appropriate data from database sets the current working
subcategory to requested subcategory (if supplied) and requests subcategory information
from the database to populate the current obj ect with subcategory information relevant to this subcategory.
A Clients Control Class Object contains all the methods required to manipulate and query client records stored in the database. It also supplies methods to display HTML data
and forms relating to client database. A Constructor For Client Object instantiates variables
required for operation of other object client methods call to set clients fills a client array at
instantiation. A New Client And Client Data To The Database Object creates a new client database record from the values array, described above, which contains an associative array
of data from input for the new client. A Deletes Client And Client Data From Database
Object performs deletions. An Update Existing Client Data In Database Object updates
existing client database record for client identifier values array contains an associative array
of data collected from input for the client. A Return Verbose Client Information Object returns an array of verbose data for current working client A Get All Clients Information Object returns an array of all client information (terse). A Display A HTML Form Element For Selecting A Client Identifier Object generates a HTML selection box with a list of all
known clients and optionally sets an item as selected if that options identifier is passed in the
selected array. A Display A HTML Form For Inputting Client Data For Creation Or Update
Object displays a HTML form allowing the user to enter data about a new client or to edit
data for the current working client; if a current working client exists, the client's data is
displayed for editing. A Display A HTML Table Of Client Options Object generates a HTML table with a list of options for each known client options presented for editing and deletion of client/client data. It also displays terse client data. A Set A Client As The
Current Working Client Object retrieves verbose information about client identifier from the
database and stores data in a client array setting the client as the current working client. A Fill Clients Array With Client Data Object fills multidimensional clients array with arrays of terse client data retrieved from the objects above.
In another implementation, a number of objects can be defined and used to set and
manipulate basic calendar date information.
An Events Object contains all the methods required to manipulate and query event
records stored in the database and also supplies methods to display HTML data and forms relating to event related functionality. A Layout Class Object is a template class that generates the table based layout website based on supplied HTML arguments. The system further includes a Constructor For
Layout Object and an Events Object. A Parse Page Template Object returns a HTML table
layout based on the content passed in the arguments, which essentially is a page template
with flexible formatting. A Set Main Output Width Object sets HTML output width of main content section of template.
A Login Class Object provides authentication and associated services for system
classes. Authentication is hierarchical hi nature with all users having associated group id's
which allows for the use of one user table handling several types of user, granting access to various administration levels based upon the type of user they are. Constructor For Category
Objects instantiates variables required for operation of other category object methods. A
Return A HTML Login Form Object presents a HTML based login form allowing the user
to enter username and password details for authentication. A Authenticate User Submitted Username And Password Object validates incoming username and password data from the
database. On successful login class, variables are set identifying the user's client identifier, user identifier and group identifier.
A Menu Class Object provides HTML menus for page formatting. Generated menu
options generated differ according to the permissions of the users group identifier. A
Constructor For Menu Objects sets the current working group and instantiates an array of
IS menus via a set menu command. A Return A HTML Menu Object returns a HTML menu in table format. The menu typically only displays options available to the current working
group. A Queries Database For Menu Information Object retrieves menu options from the
database for current working group menu data and is stored for later use.
In another implementation, a Clients Control Class Object contains all the methods
required to manipulate and query user records stored in the database. ' It also supplies
methods to display HTML data and forms relating to the user database. A Constructor For User Object is a constructor for the user object and instantiates variables required for
operation of other users object methods. It is further a call to variable fills of the user array at instantiation. An Add A New User And User Data To The Database Object creates a new
user database record from the values array that contains an associative array of data from input for the new user. An Update Existing User Data ha Database Object updates the existing user database record for user identification. The values array contains an associative array of data collected from input for the user. A Display A HTML Form Element For
S electing A User. Identifier Obj ect generates a HTML selection box with a list of all known
user and optionally sets an item as selected if that option identification is passed in a variable.
A Display A HTML Form For Inputting User Data For Creation Or Update Object displays a HTML form allowing the user to enter data about a new user or to edit data for the current working user. If a current working user exists, the user data is displayed for editing. A
Display A HTML Table Of User Options Object generates a HTML table with a list of options for each known user options presented for editing and deletion of user/user data. The
object also displays terse user data. A Set A User As The Current Working Client Object
retrieves verbose information about user identifier from the database and stores data in a user
array setting the user as the current working user. A Return Verbose User Information
Object returns an array of verbose data for current working user. A Get All Users
Information Object returns an array of all user information (terse). A Fill Users Array With
User Data Object fills a multidimensional users array with arrays of terse user data retrieved from the database.
Figure 1 illustrates a system level diagram of an embodiment of a scheduling, calendar and information distribution system 100 illustrating an implementation of the
relationship of the several objects as just described as distributed in a network 110 to which
the server 120 and database 130 is connected. As described above, a plurality of user computers 140 is also connected to the network.
Furthermore, in addition to the flexible and efficient nature of the system, several
additional tools can be added as modules to the system. Therefore, the system provides a
plug and play solution. For example, the download tool can support Microsoft Outlook as
a primary module. However, as other users desire to add other modules, the redesign of the
system is necessary. Ih a typical implementation, a new dynamic link library (.DDL) for the desired module or calendar application and a single XML file that described the manner in which the application stores the calendar events is added to the system. Likewise, similar
tools can be added to export the online calendar information to a wide variety of other
applications including, but not limited to Excel, Access, Word and the like.
The following figures illustrate several embodiments of webpages that can be
accessed and navigated in order to log on the system, request information, add information
and download information into a calendar application.
Referring to the drawings wherein like reference numerals designate corresponding
parts throughout the several figures, reference is made first to Figure 2 that illustrates an embodiment of a scheduling webpage. The scheduling webpage typically includes a name and password field for entry of the user ' s unique name and password. By entering the name and password, a user can thus access the system and download and modify information as needed or desired. The webpage further typically includes visual elements that can be
clicked in order to access user specific areas of the webpage. In a typical embodiment, the
elements can include parent, school and club/organization entry points.
Figure 3 illustrates an embodiment of a parent request webpage. On this webpage, a parent desiring to be part of the system in order to download, access and add information
as desired, can sign up with the system. Information fields for data entry can include an
email address, password and school affiliation fields. Figure 4 illustrates an embodiment of a school request webpage. On this webpage,
a school desiring to participate in the system in order to download, access and add
information as desired, can sign up with the system. Information fields for data entry can
include a school, contact name, email address, phone number address and other demographic
information as necessary.
Figure 5 illustrates an embodiment of a organization request webpage. On this
webpage, an organization desiring to participate in the system in order to download, access and add information as desired, can sign up with the system. Information fields for data entry can include an organization, contact name, email address, phone number address and
other demographic information as necessary.
Figure 6 illustrates an embodiment of an online calendar webpage. This webpage can be accessed from the main webpage in order to display an exemplary calendar in which a user can have a quick view to make a determination whether or not a particular day has an
event scheduled. In a typical implementation, a day that includes one or more events is
highlighted and in bold. A user can click a particular day to view, change or add events.
Additional tabs on the screen can allow a user to switch between a daily and monthly view
of the calendar and respective events. Figure 7 illustrates an embodiment of a category selection webpage. By having
clicked on the categories tab, a user can access this categories webpage. The webpage
displays several categories from the database or file system. In a typical embodiment,
categories can be added depending on the nature of events and the desired events to be added
to the system and online calendar. By clicking next to the particular category of events, the
user can pick and choose which types of events are displayed in the user's personal calendar. The user can then optionally save or cancel the selection.
Figure 8 illustrates an embodiment of a calendar preview webpage. The webpage
represents the preview of the calendar that is downloaded to the user's personal computer and calendar. On the days that include events, a description of the particular event is included on the visual representation of the calendar. If any changes are desired to the types
of events that are previewed, the user can click back to the categories page to change, update
or otherwise modify the desired event categories, which in turn update the specific events on
the preview calendar. Ih general, when the user has chosen the desired event categories and
is pleased with the preview, the user can click the download tab to automatically download
the events to his or her personal computer and calendar.
Therefore, in a typical implementation, the user can access the main webpage,
provide a username and password. The user can then choose categories and click on After
School Events, Days Off, and Sports (or any other desired combination of categories). IQ order to check the personal calendar the user can click the Calendar Tab (typically on the left side of the screen). The user can switch between the Monthly and Daily view by clicking on
the tabs on the right side (typically). In Daily view, the user can click on any day of the
month in the little calendar view to open another day; days with events are highlighted and
bold.
By clicking download, all the calendar items that are in the system calendar are automatically downloaded to the personal calendar (such as Microsoft Outlook). All the
Outlook default settings for reminders and the like are automatically applied, hi this way,
a user can with one simple step download all pertinent information and calendar events to his or her personal computer without any major effort or coordination.
Ih general, HTML has been disclosed as exemplary programming. It is understood that general programmatically displayed generated programming, or object oriented programming, is contemplated.
The software techniques and methods discussed above can be implemented in digital
electronic circuitry, or in computer hardware, firmware (as discussed), software, or in
combinations of them. Apparatus may be implemented in a computer program product tangibly embodied in a machine-readable storage device for execution by a programmable
processor; and methods may be performed by a programmable processor executing a program of instructions to perform functions by operating on input data and generating output. Further embodiments may advantageously be implemented in one or more computer
programs that are executable on aprogrammable system including at least one programmable processor coupled to receive data and instructions from, and transmit data and instructions,
to a data storage system, at least one input device, and at least one output device. Each
computer program may be implemented in a high level procedural or object-oriented
programming language, or in assembly or machine language, which can be compiled or
interpreted. Suitable processors include, by way of example, both general and special
purpose microprocessors. Generally, a processor receives instructions and data from read- only memory and or RAM. Storage devices suitable for tangibly embodying computer program instructions and data include all forms of non- volatile memory, including by way
of example semiconductor memory devices, such as EPROM, EEPROM5 and flash memory
devices; magnetic disks such as internal hard disks and removable disks; magneto-optical
disks; and CD-ROM disks. Any of the foregoing may be supplemented by, or incorporated in, specially designed application specific integrated circuits (ASICs).
The foregoing is considered as illustrative only of the principles of the invention.
Further, various modifications may be made of the invention without departing from the
scope thereof and it is desired, therefore, that only such limitations shall be placed thereon
as are imposed by the prior art and which are set forth in the appended claims.

Claims

WHAT IS CLAIMED IS:
1. A scheduling system, comprising:
a central server connected to a network;
a plurality of user computers connected to the network;
a webpage for displaying and manipulating a schedule of events stored in a database,
the webpage being accessible by the central server and the plurality of user computers;
a process for adding events to the database from the central server and from the plurality of user computers;
a process for choosing a subset of selected events from the webpage to be
downloaded to one or more of the plurality of user computers by a single
click; and
a process residing on the central server for processing the events in the database and
distributing the events over the network.
2. The system as claimed in Claim 1 further comprising at least one event object that
has a unique schedule of information.
3. The system as claimed in Claim 2 further comprising at least one user object having
unique user information.
4. The system as claimed in Claim 3 further comprising at least one client obj ect having unique client information.
5. The system as Claim 1 further comprising session variables that are stored on the central server while the webpage is accessed by one or more of the user computers.
6. The system as claimed in Claim 5 further comprising obj ects having associated class
libraries.
7. The system as claimed in Claim 6 further comprising a session file, comprising:
data related to the class libraries; and
data related to user objects.
8. The system as claimed in Claim 7 further comprising school objects that are correlated with the user objects.
9. The system as claimed in Claim 8 wherein the school object includes a school identifier and the user object includes a user identifier.
10. The system as claimed in Claim 9 wherein the school identifier and user identifier are
used to access and pass data related only to the school and user identifiers.
11. The system as claimed in Claim 8 wherein the user and school objects are correlated
by a string that identifies desired data from the school object.
12. A method of obtaining calendar information, comprising:
accessing an online webpage having an online calendar connected to a database;
choosing event categories associated with the webpage and the database;
previewing specific events included in each category; and
downloading the online calendar events to a personal calendar located on a user computer.
13. A method of organizing events, comprising:
receiving a plurality of related event information from a plurality of sources having
a common relation;
organizing the event information into event categories in an online database connected to an online calendar; making the database available to the plurality of sources;
optionally allowing the plurality of sources to modify and add to the database; and
allowing the plurality of sources to access and download the event information in a
form suitable to the personal preferences of the individual source.
14. The method as claimed in Claim 13 further comprising a user object and a school object.
15. The method as claimed in Claim 14 wherein the user and school objects are related
by identifying a subset of data from the school object into the user object.
16. The method as claimed in Claim 15 wherein the plurality of sources each includes a user object.
17. The method as claimed in Claim 16 wherein the plurality of sources can each access and download the event information in a form suitable to the personal preferences of the
individual source and optionally modify and add to the database through the user objects.
PCT/US2006/025265 2005-06-28 2006-06-28 Scheduling and information sharing and distribution system and method WO2007002791A2 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/168,166 US20070294370A1 (en) 2004-06-29 2005-06-28 Scheduling and information sharing and distribution system and method
US11/168,166 2005-06-28

Publications (2)

Publication Number Publication Date
WO2007002791A2 true WO2007002791A2 (en) 2007-01-04
WO2007002791A3 WO2007002791A3 (en) 2007-04-05

Family

ID=37596031

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2006/025265 WO2007002791A2 (en) 2005-06-28 2006-06-28 Scheduling and information sharing and distribution system and method

Country Status (2)

Country Link
US (1) US20070294370A1 (en)
WO (1) WO2007002791A2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102009023534A1 (en) 2009-05-30 2010-12-02 Bayerische Motoren Werke Aktiengesellschaft Body component, particularly engine hood, has outer skin, substructure and energy absorption element between outer skin and substructure, where energy absorption element is arranged in edge area of body component

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8200699B2 (en) 2005-12-01 2012-06-12 Microsoft Corporation Secured and filtered personal information publishing
WO2008007382A2 (en) * 2006-07-13 2008-01-17 Hayoman, Internet Technologies Ltd. System and method for event management
US20080091500A1 (en) * 2006-10-02 2008-04-17 International Business Machines Corporation System and method to cache calendar schedule for offline scheduling
US20080091499A1 (en) * 2006-10-02 2008-04-17 International Business Machines Corporation System and method to control caching for offline scheduling
US7870194B2 (en) 2006-11-14 2011-01-11 Microsoft Corporation Sharing calendar information
US8041725B2 (en) * 2008-06-25 2011-10-18 International Business Machines Corporation Eliminating duplicate and invalid calendar items from end user calendars using a unique entry identifier (UEID)
US9747584B2 (en) * 2013-01-18 2017-08-29 Gordon Anthony Ebanks Method and system for generating visually enhanced calendar from pre-existing calendar on electronic device
US9672263B1 (en) * 2014-06-23 2017-06-06 The United States Of America As Represented By The Secretary Of The Navy Reliability engineering data integration
CN104574043B (en) * 2015-01-20 2019-01-11 宇龙计算机通信科技(深圳)有限公司 A kind of calendar prompting method and device

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020156787A1 (en) * 2001-02-13 2002-10-24 Jameson Daniel E. Method and system for internet based event planning and event management
US20020177109A1 (en) * 2001-02-24 2002-11-28 Torrance Robinson System and method for creating, processing and managing educational content within and between schools

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5270920A (en) * 1991-05-13 1993-12-14 Hughes Training, Inc. Expert system scheduler and scheduling method
US6442527B1 (en) * 1995-03-17 2002-08-27 Kathy A. Worthington System and method for personalized and customized time management
US6016478A (en) * 1996-08-13 2000-01-18 Starfish Software, Inc. Scheduling system with methods for peer-to-peer scheduling of remote users
US20020012724A1 (en) * 1996-10-18 2002-01-31 William R. Kowalski Process for the filleting, treating, packaging, freezing, and thawing of varying types of tuna and other pelagic species
US6032121A (en) * 1997-05-15 2000-02-29 International Business Machines Corporation Method for proactive planning
CA2228574A1 (en) * 1997-06-05 1999-08-02 Attention Control Systems, Inc. An automatic planning and cueing system and method
US6144942A (en) * 1998-04-28 2000-11-07 Micron Electronics, Inc. Method for notifying an individual of a previously scheduled event
US6571281B1 (en) * 1998-12-22 2003-05-27 Xerox Corporation Information sharing system for personal electronic time management systems
US20020035493A1 (en) * 2000-01-04 2002-03-21 Bahram Mozayeny Method and system for coordinating appointments
US7210938B2 (en) * 2001-05-09 2007-05-01 K12.Com System and method of virtual schooling
US20030014296A1 (en) * 2001-07-10 2003-01-16 Meine Robert K. Community management/communication interface
US6877987B2 (en) * 2002-01-02 2005-04-12 International Business Machines Corporation Pervasive educational assistant and study aid for students
US20030154116A1 (en) * 2002-01-04 2003-08-14 Lofton Jeffrey C. System and method for scheduling events on an internet based calendar
WO2003091930A2 (en) * 2002-04-26 2003-11-06 Kumon North America, Inc. Method and system for monitoring and managing the educational progress of students
US20030061087A1 (en) * 2002-07-15 2003-03-27 Paul Srimuang Calendar scheduling of multiple persons resources and consumables with group access view restriction

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020156787A1 (en) * 2001-02-13 2002-10-24 Jameson Daniel E. Method and system for internet based event planning and event management
US20020177109A1 (en) * 2001-02-24 2002-11-28 Torrance Robinson System and method for creating, processing and managing educational content within and between schools

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102009023534A1 (en) 2009-05-30 2010-12-02 Bayerische Motoren Werke Aktiengesellschaft Body component, particularly engine hood, has outer skin, substructure and energy absorption element between outer skin and substructure, where energy absorption element is arranged in edge area of body component
DE102009023534B4 (en) 2009-05-30 2021-10-07 Bayerische Motoren Werke Aktiengesellschaft Body part with an outer skin and a substructure

Also Published As

Publication number Publication date
US20070294370A1 (en) 2007-12-20
WO2007002791A3 (en) 2007-04-05

Similar Documents

Publication Publication Date Title
US11704102B2 (en) Systems and methods for exporting, publishing, browsing and installing on-demand applications in a multi-tenant database environment
US20070294370A1 (en) Scheduling and information sharing and distribution system and method
US20050004947A1 (en) Integrated tool set for generating custom reports
WO2009011903A1 (en) System, method and computer program product for editing an on-demand database service graphical user interface
US7035838B2 (en) Methods and systems for organizing information stored within a computer network-based system
US20060020884A1 (en) Method and system of web site construction
WO2002080550A1 (en) Content management
Ervin Dynamic delivery of information via the World Wide Web
AU2004203751B1 (en) A method and system of web site construction

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application
NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 06785791

Country of ref document: EP

Kind code of ref document: A2