FreeMED Module API Programming
Jeffrey M. Buchbinder
FreeMED
programming for modules; expanding
FreeMED
functionality.
Table of Contents
1.
Introduction to programming with FreeMED
What is this manual?
What are FreeMED modules, and why should I be programming them?
What modules do I need to program?
2.
FreeMED API and Object Model
Basic API and Namespace
Access Control
Module-related functions
module_function
freemed::module_check
freemed::module_get_value
freemed::module_get_meta
freemed::module_handler
freemed::module_lookup
freemed::module_register
freemed::module_version
sql Object and Database Interaction
User Object
Patient Object
Physician Object
Miscellaneous functions
freemed::config_value
freemed::connect
freemed::get_link_rec
freemed::get_link_field
freemed::itemlist_conditions
freemed::image_filename
freemed::multiple_choice
freemed::patient_box
freemed::patient_widget
freemed::query_to_array
freemed::race_widget
freemed::religion_widget
freemed::secure_filename
freemed::store_image
freemed::support_djvu
freemed::module_check
freemed::config_value
3.
phpwebtools
What is phpwebtools?
Functions
Classes
FileSerialize Class
module Class
module_list Class
notebook Class
sql Class
wizard Class
4.
Module Programming
Module Concepts
Meta-Information
Associations and Handlers
Hidden Modules
Common Variables
5.
EMR Modules
What is an EMR Module?
Reserved Variables
$this->disable_patient_box
$this->display_format
$this->order_fields
$this->patient_field
$this->summary_options
$this->summary_query
$this->summary_vars
$this->table_name
$this->this_patient
$this->this_user
$this->variables
Reserved Methods
$this->add
$this->addform
$this->check_vars
$this->create_table
$this->del
$this->display
$this->display_message
$this->form
$this->form_table
$this->locked
$this->main
$this->mod
$this->modform
$this->lock
$this->picklist
$this->summary
$this->summary_bar
$this->view
$this->xml_generate
$this->xml_export
$this->_setup
$this->_update
Example EMR Module
6.
Database Modules
What is a Database Module?
Reserved Variables
$this->display_format
$this->message
$this->order_fields
$this->table_keys
$this->table_name
$this->variables
Reserved Methods
$this->add
$this->addform
$this->check_vars
$this->create_table
$this->del
$this->display
$this->display_message
$this->form
$this->main
$this->mod
$this->modform
$this->picklist
$this->view
$this->_setup
$this->_update
List of Tables
3-1.
module_list macro expansion
3-2.
Notebook class option flags
3-3.
sql class option table
3-4.
sql->create_table_query macros
List of Examples
2-1.
Example of freemed::itemlist_conditions
5-1.
Example of $this->disable_patient_box
5-2.
Example of $this->summary_options
5-3.
Example of $this->summary_query
5-4.
Example of $this->summary_vars
5-5.
Example of $this->variables
5-6.
EMR Module Example
Next
Introduction to programming with FreeMED