The profile system is used to store data about a visitor which can be used to facilitate user preferences, or pre-populated forms. The profile system requires that the user has enabled permanent cookies. If the user has not then the profile will only exist for as long as the session. Since not everyone has a MySQL database server, there exists two core types of profile service -- database and file system based. You should look to the appropriate configuration section below for which applies to your project.
Set this to database to enable the database
profile system.
$GLOBALS['interJinn']['profileSystem'] = 'database';
This variable determines the name of the permanent cookie that will be sent to the visitor's browser.
$GLOBALS['interJinn']['profileID'] = 'InterJinnProfile';
A quick way to disable profiling. If this is set to true then profile cookies will not be sent to visitors. That said, it is still important to set the other information since profiles will still be created server side. The reason for this is that if profiles were previously activated then it is quite likely that profiles are being used elsewhere in the code and so it is convenient for this to still work despite a cookie not being sent to the visitor.
$GLOBALS['interJinn']['profileDisabled'] = false;
This determines how often profiles are cleaned. In other words, how often
timed out profiles are flushed. Whenever a page is a loaded the profile engine
chooses a random number between 1 and
$GLOBALS['interJinn']['profileCleanupOdds']. If
the chosen random number equals 1 then the
profiles are cleaned. If this value is set to zero then timed out profiles
will never be flushed. This is very useful if you wish to use an external
daemon to perform the cleanup.
$GLOBALS['interJinn']['cleanupOdds'] = 5000;
Set this variable to the number of seconds for which a profile should be allowed to live without refresh. If the profile is not refreshed for this length of time then it will time out and be flushed the next time the profiles are cleaned. In many cases you may want for profiles to live forever; however, it is more likely the case that you will only want them to live as long as the data might be useful. If you set this to zero then profiles will never timeout.
$GLOBALS['interJinn']['profileTimeout'] = 60 * 60 * 24 * 14;
When this has not been set, then the InterJinn database declaration with the name
default is used for all database profiles. The
value of this may either be a name of a declared database or an array
containing the appropriate database connection parameters as described in the
database declaration section.
$GLOBALS['interJinn']['profileDatabase'] = 'someOtherDatabase';
When this has been set, all tables accessed by the profile service will be prefixed with the given value. This makes it possible to use InterJinn database profiles within a pre-existing site that may already use any of the required table names.
$GLOBALS['interJinn']['profileTablePrefix'] = 'interjinn_';
Set this to file to enable the file system
based profile system.
$GLOBALS['interJinn']['profileSystem'] = 'file';
This variable determines the name of the permanent cookie that will be sent to the visitor's browser.
$GLOBALS['interJinn']['profileID'] = 'InterJinnProfile';
A quick way to disable profiling. If this is set to true then profile cookies will not be sent to visitors. That said, it is still important to set the other information since profiles will still be created server side. The reason for this is that if profiles were previously activated then it is quite likely that profiles are being used elsewhere in the code and so it is convenient for this to still work despite a cookie not being sent to the visitor.
$GLOBALS['interJinn']['profileDisabled'] = false;
This determines how often profiles are cleaned. In other words, how often
timed out profiles are flushed. Whenever a page is a loaded the profile engine
chooses a random number between 1 and
$GLOBALS['interJinn']['profileCleanupOdds']. If
the chosen random number equals 1 then the
profiles are cleaned. If this value is set to zero then timed out profiles
will never be flushed. This is very useful if you wish to use an external
daemon to perform the cleanup.
$GLOBALS['interJinn']['cleanupOdds'] = 5000;
Set this variable to the number of seconds for which a profile should be allowed to live without refresh. If the profile is not refreshed for this length of time then it will time out and be flushed the next time the profiles are cleaned. In many cases you may want for profiles to live forever; however, it is more likely the case that you will only want them to live as long as the data might be useful. If you set this to zero then profiles will never timeout.
$GLOBALS['interJinn']['profileTimeout'] = 60 * 60 * 24 * 14;
This should be set to the root path at which all of your profiled data should be stored. Make sure that you have the right permissions and ownerships set for the target or you will have problems when the profile system attempts to create or access the stored data.
$GLOBALS['interJinn']['propertyDataPath'] =
'/var/www/interJinn/data/yourProject/profile/';