<?php define('ACTIVE_RECORD_BASE_PATH', dirname(__FILE__)); require_once ACTIVE_RECORD_BASE_PATH . '/active_record_exceptions.php'; require_once ACTIVE_RECORD_BASE_PATH . '/database_connector.php'; require_once ACTIVE_RECORD_BASE_PATH . '/sql_builder.php'; require_once ACTIVE_RECORD_BASE_PATH . '/class_static_proxy.php'; require_once ACTIVE_RECORD_BASE_PATH . '/active_record/01_active_record_base_public_instance_methods.php'; require_once ACTIVE_RECORD_BASE_PATH . '/associations/association_proxy.php'; require_once ACTIVE_RECORD_BASE_PATH . '/associations/association_collection.php'; require_once ACTIVE_RECORD_BASE_PATH . '/associations/belongs_to_association.php'; require_once ACTIVE_RECORD_BASE_PATH . '/associations/has_many_association.php'; require_once ACTIVE_RECORD_BASE_PATH . '/associations/has_and_belongs_to_many_association.php'; if (class_exists('YARR')) { YARR::add_default_config('active_record', array()); } else { require_once 'inflector.php'; } abstract class ActiveRecord extends ActiveRecordBasePublicInstanceMethods { private static $table_columns = array(); private static $associations = array(); private static $extensions = array(); private $attributes; private $errors = array(); private $dirty_attributes = array(); private $association_proxies = array(); private $frozen = false; private $read_only = false; private $new_record = true; function __construct($attributes = array())
<?php define('ACTION_CONTROLLER_BASE_PATH', dirname(__FILE__)); require_once ACTION_CONTROLLER_BASE_PATH . '/action_controller_exceptions.php'; require_once ACTION_CONTROLLER_BASE_PATH . '/routing.php'; require_once ACTION_CONTROLLER_BASE_PATH . '/template.php'; if (class_exists('YARR')) { YARR::add_default_config('action_controller', array('controllers_path' => YARR_APP_PATH . '/controllers')); YARR::require_lib('inflector'); } else { require_once 'inflector.php'; } /* * ActionController class * * TODO: Add documentation! * * *** Actions *** * * Actions are public non-static methods defined in the controller class being instantiated (i.e. * the end of the inheritance chain). * * To avoid common keyword collitions (such as new), action methods can take an trailing underscore * (e.g. new_). * * *** Filters *** * * There are two non-exclusive ways of defining filters: *