|  | <?php | 
						
						
							|  | 	// The Server Instance constant is used to help ease web applications with multiple environments. | 
						
						
							|  | 	// Feel free to use, change or ignore. | 
						
						
							|  | 	define('SERVER_INSTANCE', 'dev'); | 
						
						
							|  | 
 | 
						
						
							|  | 	switch (SERVER_INSTANCE) { | 
						
						
							|  | 		case 'dev': | 
						
						
							|  | 		case 'test': | 
						
						
							|  | 		case 'stage': | 
						
						
							|  | 		case 'prod': | 
						
						
							|  | 			/* Constant to allow/disallow remote access to the admin pages | 
						
						
							|  | 			 * e.g. the generated form_drafts, codegen, or any other script that calls QApplication::CheckRemoteAdmin() | 
						
						
							|  | 			 * | 
						
						
							|  | 			 * If set to TRUE, anyone can access those pages. | 
						
						
							|  | 			 * If set to FALSE, only localhost can access those pages. | 
						
						
							|  | 			 * If set to an IP address (e.g. "12.34.56.78"), then only localhost and 12.34.56.78 can access those pages. | 
						
						
							|  | 			 * If set to a comma-separate list of IP addresses, then localhoost and any of those IP addresses can access those pages. | 
						
						
							|  | 			 * | 
						
						
							|  | 			 * Of course, you can also feel free to remove QApplication::CheckRemoteAdmin() call on any of these pages, | 
						
						
							|  | 			 * which will completely ignore ALLOW_REMOTE_ADMIN altogether. | 
						
						
							|  | 			 */ | 
						
						
							|  | 			define('ALLOW_REMOTE_ADMIN', false); | 
						
						
							|  | 
 | 
						
						
							|  | 
 | 
						
						
							|  | 
 | 
						
						
							|  | 			/* Constants for Document Root (and Virtual Directories / Subfoldering) | 
						
						
							|  | 			 *  | 
						
						
							|  | 			 * IMPORTANT NOTE FOR WINDOWS USERS | 
						
						
							|  | 			 * Please note that all paths should use standard "forward" slashes instead of "backslashes". | 
						
						
							|  | 			 * So windows paths would look like "c:/wwwroot" instead of "c:\wwwroot". | 
						
						
							|  | 			 *  | 
						
						
							|  | 			 * Please specify the "Document Root" here.  This is the top level filepath for your web application. | 
						
						
							|  | 			 * If you are on a installation that uses virtual directories, then you must specify that here, as well. | 
						
						
							|  | 			 * | 
						
						
							|  | 			 * For example, if your example web application where http://my.domain.com/index.php points to | 
						
						
							|  | 			 * /home/web/htdocs/index.php, then you must specify: | 
						
						
							|  | 			 *		__DOCROOT__ is defined as '/home/web/htdocs' | 
						
						
							|  | 			 *		(note the leading slash and no ending slash) | 
						
						
							|  | 			 * On Windows, if you have http://my.domain.com/index.php pointing to c:\webroot\files\index.php, then: | 
						
						
							|  | 			 *		__DOCROOT__ is defined as 'c:/webroot/files' | 
						
						
							|  | 			 *		(again, note the leading c:/ and no ending slash) | 
						
						
							|  | 			 * | 
						
						
							|  | 			 * Next, if you are using Virtual Directories, where http://not.my.domain.com/~my_user/index.php | 
						
						
							|  | 			 * (for example) points to /home/my_user/public_html/index.php, then: | 
						
						
							|  | 			 *		__DOCROOT__ is defined as '/home/my_user/public_html' | 
						
						
							|  | 			 *		__VIRTUAL_DIRECTORY__ is defined as '/~my_user' | 
						
						
							|  | 			 * | 
						
						
							|  | 			 * Finally, if you have installed Qcodo within a SubDirectory of the Document Root, so for example | 
						
						
							|  | 			 * the Qcodo "index.php" page is accessible at http://my.domain.com/frameworks/qcodo/index.php, then: | 
						
						
							|  | 			 *		__SUBDIRECTORY__ is defined as '/frameworks/qcodo' | 
						
						
							|  | 			 *		(again, note the leading and no ending slash) | 
						
						
							|  | 			 * | 
						
						
							|  | 			 * In combination with Virtual Directories, if you (for example) have the Qcodo "index.php" page | 
						
						
							|  | 			 * accessible at http://not.my.domain.com/~my_user/qcodo/index.php, and the index.php resides at | 
						
						
							|  | 			 * c:\users\my_user\public_html\index.php, then: | 
						
						
							|  | 			 *		__DOCROOT__ is defined as 'c:/users/my_user/public_html' | 
						
						
							|  | 			 *		__VIRTUAL_DIRECTORY__ is defined as '/~my_user' | 
						
						
							|  | 			 *		__SUBDIRECTORY__ is defined as '/qcodo' | 
						
						
							|  | 			 */ | 
						
						
							|  | 			define ('__DOCROOT__', '/var/www/qcodo/wwwroot'); | 
						
						
							|  | 			define ('__VIRTUAL_DIRECTORY__', ''); | 
						
						
							|  | 			define ('__SUBDIRECTORY__', ''); | 
						
						
							|  | 
 | 
						
						
							|  | 
 | 
						
						
							|  | 			/* | 
						
						
							|  | 			 * If you are using Apache-based mod_rewrite to perform URL rewrites, please specify "apache" here. | 
						
						
							|  | 			 * Otherwise, specify as "none" | 
						
						
							|  | 			 */ | 
						
						
							|  | 			define ('__URL_REWRITE__', 'none'); | 
						
						
							|  | 
 | 
						
						
							|  | 
 | 
						
						
							|  | 			// Constant for the DevTools (Command Line Interface) Directory | 
						
						
							|  | 			// (We're assuming it's at one level above __DOCROOT__... but feel free to specify any absolute path | 
						
						
							|  | 			define ('__DEVTOOLS_CLI__', __DOCROOT__ . __SUBDIRECTORY__ . '/../_devtools_cli'); | 
						
						
							|  | 
 | 
						
						
							|  | 
 | 
						
						
							|  | 			/* Absolute File Paths for Internal Directories | 
						
						
							|  | 			 * | 
						
						
							|  | 			 * Please specify the absolute file path for all the following directories in your Qcodo-based web | 
						
						
							|  | 			 * application. | 
						
						
							|  | 			 * | 
						
						
							|  | 			 * Note that all paths must start with a slash or 'x:\' (for windows users) and must have | 
						
						
							|  | 			 * no ending slashes.  (We take advantage of the __DOCROOT__ constant defined above and the | 
						
						
							|  | 			 * __INCLUDES__ constant defined below to help simplify this section. But note that this is NOT | 
						
						
							|  | 			 * required.  These directories can also reside outside of the Document Root altogether. | 
						
						
							|  | 			 * So feel free to use or not use the __DOCROOT__ and __INCLUDES__ constants as you wish/need | 
						
						
							|  | 			 * in defining your other directory constants.) | 
						
						
							|  | 			 */ | 
						
						
							|  | 
 | 
						
						
							|  | 			// General Includes (the location of the Prepend and Configuration includes files, and the Manifest XML) | 
						
						
							|  | 			define ('__INCLUDES__', __DOCROOT__ .  __SUBDIRECTORY__ . '/includes'); | 
						
						
							|  | 
 | 
						
						
							|  | 			// The Qcodo Directories | 
						
						
							|  | 			// Includes subdirectories for Qcodo Customizations in CodeGen and QForms, i18n PO files, QCache storage, etc. | 
						
						
							|  | 			// Also includes the _core subdirectory for the QCodo Core | 
						
						
							|  | 			define ('__QCODO__', __INCLUDES__ . '/qcodo'); | 
						
						
							|  | 
 | 
						
						
							|  | 			// The Qcodo Core | 
						
						
							|  | 			define ('__QCODO_CORE__', __INCLUDES__ . '/qcodo/_core'); | 
						
						
							|  | 
 | 
						
						
							|  | 			// Destination for Code Generated class files | 
						
						
							|  | 			define ('__DATA_CLASSES__', __INCLUDES__ . '/data_classes'); | 
						
						
							|  | 			define ('__DATAGEN_CLASSES__', __INCLUDES__ . '/data_classes/generated'); | 
						
						
							|  | 			define ('__DATA_META_CONTROLS__', __INCLUDES__ . '/data_meta_controls'); | 
						
						
							|  | 			define ('__DATAGEN_META_CONTROLS__', __INCLUDES__ . '/data_meta_controls/generated'); | 
						
						
							|  | 
 | 
						
						
							|  | 
 | 
						
						
							|  | 			/* Relative File Paths for Web Accessible Directories | 
						
						
							|  | 			 * | 
						
						
							|  | 			 * Please specify the file path RELATIVE FROM THE DOCROOT for all the following web-accessible directories | 
						
						
							|  | 			 * in your Qcodo-based web application. | 
						
						
							|  | 			 * | 
						
						
							|  | 			 * For some directories (e.g. the Examples site), if you are no longer using it, you STILL need to  | 
						
						
							|  | 			 * have the constant defined.  But feel free to define the directory constant as blank (e.g. '') or null. | 
						
						
							|  | 			 * | 
						
						
							|  | 			 * Note that constants must have a leading slash and no ending slash, and they MUST reside within | 
						
						
							|  | 			 * the Document Root. | 
						
						
							|  | 			 *  | 
						
						
							|  | 			 * (We take advantage of the __SUBDIRECTORY__ constant defined above to help simplify this section. | 
						
						
							|  | 			 * Note that this is NOT required.  Feel free to use or ignore.) | 
						
						
							|  | 			 */ | 
						
						
							|  | 
 | 
						
						
							|  | 			// Location of the Qcodo-specific web-based development tools, like codegen.php | 
						
						
							|  | 			define ('__DEVTOOLS__', __SUBDIRECTORY__ . '/_devtools'); | 
						
						
							|  | 
 | 
						
						
							|  | 			// Destination for generated form drafts and panel drafts | 
						
						
							|  | 			define ('__FORM_DRAFTS__', __SUBDIRECTORY__ . '/drafts'); | 
						
						
							|  | 			define ('__PANEL_DRAFTS__', __SUBDIRECTORY__ . '/drafts/dashboard'); | 
						
						
							|  | 
 | 
						
						
							|  | 			// Location of the Examples site | 
						
						
							|  | 			define ('__EXAMPLES__', __SUBDIRECTORY__ . '/examples'); | 
						
						
							|  | 
 | 
						
						
							|  | 			// Location of Qcodo-specific Web Assets (JavaScripts, CSS, Images, and PHP Pages/Popups) | 
						
						
							|  | 			define ('__JS_ASSETS__', __SUBDIRECTORY__ . '/assets/js'); | 
						
						
							|  | 			define ('__CSS_ASSETS__', __SUBDIRECTORY__ . '/assets/css'); | 
						
						
							|  | 			define ('__IMAGE_ASSETS__', __SUBDIRECTORY__ . '/assets/images'); | 
						
						
							|  | 			define ('__PHP_ASSETS__', __SUBDIRECTORY__ . '/assets/php'); | 
						
						
							|  | 
 | 
						
						
							|  | 
 | 
						
						
							|  | 
 | 
						
						
							|  | 			/* Database Connection SerialArrays | 
						
						
							|  | 			 * | 
						
						
							|  | 			 * Note that all Database Connections are defined as constant serialized arrays.  Qcodo supports | 
						
						
							|  | 			 * connections to an unlimited number of different database sources.  Each database source, referenced by | 
						
						
							|  | 			 * a numeric index, will have its DB Connection SerialArray stored in a DB_CONNECTION_# constant | 
						
						
							|  | 			 * (where # is the numeric index). | 
						
						
							|  | 			 * | 
						
						
							|  | 			 * The SerialArray can have the following keys: | 
						
						
							|  | 			 * "adapter" (Required), options are: | 
						
						
							|  | 			 *		MySql (MySQL v4.x, using the old mysql extension) | 
						
						
							|  | 			 *		MySqli (MySQL v4.x, using the new mysqli extension) | 
						
						
							|  | 			 *		MySqli5 (MySQL v5.x, using the new mysqli extension) | 
						
						
							|  | 			 *		SqlServer (Microsoft SQL Server) | 
						
						
							|  | 			 *		PostgreSql (PostgreSQL) | 
						
						
							|  | 			 * "server" (Required) is the db server's name or IP address, e.g. localhost, 10.1.1.5, etc. | 
						
						
							|  | 			 * "port" is the port number - default is the server-specified default | 
						
						
							|  | 			 * "database", "username", "password" should be self explanatory | 
						
						
							|  | 			 * "profiling" is true or false, defining whether or not you want to enable DB profiling - default is false | 
						
						
							|  | 			 *		NOTE: Profiling should only be enabled when you are actively wanting to profile a | 
						
						
							|  | 			 *		specific PHP script or scripts.  Because of SIGNIFICANT performance degradation, | 
						
						
							|  | 			 *		it should otherwise always be OFF. | 
						
						
							|  | 			 * "ScriptPath": you can have CodeGen virtually add additional FKs, even though they are | 
						
						
							|  | 			 * 		not defined as a DB constraint in the database, by using a script to define what | 
						
						
							|  | 			 * 		those constraints are.  The path of the script can be defined here. - default is blank or none | 
						
						
							|  | 			 * Note: any option not used or set to blank will result in using the default value for that option | 
						
						
							|  | 			 */ | 
						
						
							|  | 			define('DB_CONNECTION_1', serialize(array( | 
						
						
							|  | 				'adapter' => 'MySqli5', | 
						
						
							|  | 				'server' => 'localhost', | 
						
						
							|  | 				'port' => null, | 
						
						
							|  | 				'database' => 'qcodo', | 
						
						
							|  | 				'username' => 'root', | 
						
						
							|  | 				'password' => '', | 
						
						
							|  | 				'profiling' => false))); | 
						
						
							|  | 
 | 
						
						
							|  | 			// Additional Database Connection Strings can be defined here (e.g. for connection #2, #3, #4, #5, etc.) | 
						
						
							|  | //			define('DB_CONNECTION_2', serialize(array('adapter'=>'SqlServer', 'server'=>'localhost', 'port'=>null, 'database'=>'qcodo', 'username'=>'root', 'password'=>'', 'profiling'=>false))); | 
						
						
							|  | //			define('DB_CONNECTION_3', serialize(array('adapter'=>'MySqli', 'server'=>'localhost', 'port'=>null, 'database'=>'qcodo', 'username'=>'root', 'password'=>'', 'profiling'=>false))); | 
						
						
							|  | //			define('DB_CONNECTION_4', serialize(array('adapter'=>'MySql', 'server'=>'localhost', 'port'=>null, 'database'=>'qcodo', 'username'=>'root', 'password'=>'', 'profiling'=>false))); | 
						
						
							|  | //			define('DB_CONNECTION_5', serialize(array('adapter'=>'PostgreSql', 'server'=>'localhost', 'port'=>null, 'database'=>'qcodo', 'username'=>'root', 'password'=>'', 'profiling'=>false))); | 
						
						
							|  | 
 | 
						
						
							|  | 
 | 
						
						
							|  | 			// (For PHP > v5.1) Setup the default timezone (if not already specified in php.ini) | 
						
						
							|  | 			if ((function_exists('date_default_timezone_set')) && (!ini_get('date.timezone'))) | 
						
						
							|  | 				date_default_timezone_set('America/Los_Angeles'); | 
						
						
							|  | 
 | 
						
						
							|  | 
 | 
						
						
							|  | 			// Define the Filepath for the error page (path MUST be relative from the DOCROOT) | 
						
						
							|  | 			define('ERROR_PAGE_PATH', __PHP_ASSETS__ . '/_core/error_page.php'); | 
						
						
							|  | 
 | 
						
						
							|  | 			// Define the Filepath for any logged errors | 
						
						
							|  | 			define('ERROR_LOG_PATH', __INCLUDES__ . '/error_log'); | 
						
						
							|  | 
 | 
						
						
							|  | 			// To Log ALL errors that have occurred, set flag to true | 
						
						
							|  | //			define('ERROR_LOG_FLAG', true); | 
						
						
							|  | 
 | 
						
						
							|  | 			// To enable the display of "Friendly" error pages and messages, define them here (path MUST be relative from the DOCROOT) | 
						
						
							|  | //			define('ERROR_FRIENDLY_PAGE_PATH', __PHP_ASSETS__ . '/friendly_error_page.php'); | 
						
						
							|  | //			define('ERROR_FRIENDLY_AJAX_MESSAGE', 'Oops!  An error has occurred.\r\n\r\nThe error was logged, and we will take a look into this right away.'); | 
						
						
							|  | 
 | 
						
						
							|  | 			break; | 
						
						
							|  | 	} | 
						
						
							|  | ?> |