====== OpenSER Web Interface Program Execution ====== This page is intended to outline the basic operations of the OpenSER web interface. ==== Execution Steps ==== - Incoming data from user - Front Controller takes over in index.php, begins processing - Application Controller loads settings, connects to the database, and loads the Control Map - The Context Resolver is given the incoming data to form a Context with. The Application Controller stores this context - The Command Resolver is passed a Context by the Application Controller to determine what command or view to execute - Application Controller passes the Context and Executes the Command - Command gets DB connection handle from Context if needed - Command creates and loads Domain Objects as needed - Command does something with objects - Command stores results of data actions back in context, returns simple status flag - Application Controller passes returned flag to Command Resolver, determines next step * If command again, return to Command Execution - Pass context to displayed view - Smarty Templates build view based on data contained in Context - Destruction - Identity Map / Unit of Work starts on all database and session operations - End Program