Source for file checkVersion.phpinc
Documentation is available at checkVersion.phpinc
* if changes to the database model are made
* use this file to check if the tables of
* the project are in proper version
* @project Open CSP-Management
* @author Peter Krebs (pk) <p.krebs@wpus.at>
* @author Sebastian Wilms (sw) <s.wilms@wpus.at>
* @copyright (c) 2002-2003 by Peter Krebs and Landesverlag Unternehmensservice
* @copyright (c) 2005-2006 by WURM & Partner Unternehmensservice GmbH.
* @license http://opensource.org/licenses/gpl-license.php GNU Public License
* @global array $GLOBALS['DBMS_NAMED_FORMS'] array of loaded forms with frmName as key
* @global array $GLOBALS['DBMS_FORMS'] array of loaded forms with frmid as key
* @version pk-05-04-15 changed update inc from v... to update_TableName
* @version pk-06-07-18 setting check added
* @version $Id: checkVersion.phpinc,v 1.44 2008/12/12 17:35:14 pitlinz Exp $
require_once __OCSP_PHPINCPATH__.
"db/update/functions_" .
OCSP_OBJ::defaultReadDBObj()->getDBType() .
".phpinc";
$UD_CHECK['T_DBMS_FIELDDESC'] =
array('TABLE'=>
"T_DBMS_FIELDDESC",'VERSION'=>
32,'SCRIPT'=>
"dbms/T_DBMS_FIELDDESC.mysql",'CREATE'=>
TRUE); // <pk-08-06-14 />
$UD_CHECK['T_DBMS_FORM'] =
array('TABLE'=>
"T_DBMS_FORM",'VERSION'=>
31,'SCRIPT'=>
""); // <pk-08-11-01 />
$UD_CHECK['T_DBMS_FORMRIGHTS'] =
array('TABLE'=>
"T_DBMS_FORMRIGHTS",'VERSION'=>
20,'SCRIPT'=>
""); // <pk-06-01-25 />
$UD_CHECK['T_DBMS_FORMFIELDS'] =
array('TABLE'=>
"T_DBMS_FORMFIELDS",'VERSION'=>
14,'SCRIPT'=>
"",'CREATE'=>
'INLINE'); // <pk-07-06-30 />
$UD_CHECK['T_DBMS_FORMBLOCKS'] =
array('TABLE'=>
"T_DBMS_FORMBLOCKS",'VERSION'=>
14,'SCRIPT'=>
"",'CREATE'=>
'INLINE'); // <pk-08-09-08 />
// TABLE,VERSION,CREATE SCRIPT
$UD_CHECK[15] =
array('TABLE'=>
"T_DB_BACKUP",'VERSION'=>
11,'SCRIPT'=>
"",'CREATE'=>
TRUE);
$UD_CHECK[21] =
array('TABLE'=>
"T_SYS_XMLROOTS",'VERSION'=>
10,'SCRIPT'=>
"",'CREATE'=>
TRUE);
$UD_CHECK[22] =
array('TABLE'=>
"T_SYS_XMLDESC",'VERSION'=>
10,'SCRIPT'=>
"",'CREATE'=>
TRUE);
$UD_CHECK[23] =
array('TABLE'=>
"T_SYS_XMLROOTS",'VERSION'=>
11,'SCRIPT'=>
"",'CREATE'=>
FALSE);
$UD_CHECK[41] =
array('TABLE'=>
"T_SYS_XMLROOTS",'VERSION'=>
12,'SCRIPT'=>
"",'CREATE'=>
FALSE);
//$UD_CHECK[56] =array('TABLE'=>"T_IMG_GALERIE",'VERSION'=>11,'SCRIPT'=>"modules/galerie/GALERIE.mysql",'CREATE'=>TRUE);
$UD_CHECK['T_SYS_GROUP'] =
array('TABLE'=>
"T_SYS_GROUP",'VERSION'=>
32,'SCRIPT'=>
"",'CREATE'=>
FALSE); // <pk-07-06-13 />
$UD_CHECK['T_SYS_USER'] =
array('TABLE'=>
"T_SYS_USER",'VERSION'=>
16,'SCRIPT'=>
"",'CREATE'=>
FALSE); // <pk-08-06-05 />
$UD_CHECK['MT_SYS_ONLINEUSERS'] =
array('TABLE'=>
"MT_SYS_ONLINEUSERS",'VERSION'=>
10,'SCRIPT'=>
"",'CREATE'=>
'INLINE'); // <pk-07-06-15 />
$UD_CHECK['T_SYS_GROUPMEMBER'] =
array('TABLE'=>
"T_SYS_GROUPMEMBER",'VERSION'=>
11,'SCRIPT'=>
"",'CREATE'=>
FALSE);
$UD_CHECK['T_SYS_SETTINGS'] =
array('TABLE'=>
"T_SYS_SETTINGS",'VERSION'=>
10,'SCRIPT'=>
"",'CREATE'=>
'INLINE'); // <pk-05-10-25 />
$UD_CHECK['T_SYS_LOOKUPTBL'] =
array('TABLE'=>
"T_SYS_LOOKUPTBL",'VERSION'=>
10,'SCRIPT'=>
"",'CREATE'=>
'INLINE'); // <pk-05-10-25 />
$UD_CHECK['T_LOOKUP_SEX'] =
array('TABLE'=>
"T_LOOKUP_SEX",'VERSION'=>
10,'SCRIPT'=>
"",'CREATE'=>
'INLINE'); // <pk-05-11-01 />
//$UD_CHECK['T_LOOKUP_CLI_STATE'] =array('TABLE'=>"T_LOOKUP_SEX",'VERSION'=>10,'SCRIPT'=>"",'CREATE'=>'INLINE'); // <pk-05-11-01 />
$UD_CHECK['T_LOOKUP_INTEREST'] =
array('TABLE'=>
"T_LOOKUP_INTEREST",'VERSION'=>
10,'SCRIPT'=>
"",'CREATE'=>
'INLINE'); // <pk-05-11-01 />
$UD_CHECK['T_CLI_TYPE'] =
array('TABLE'=>
"T_CLI_TYPE",'VERSION'=>
21,'SCRIPT'=>
"",'CREATE'=>
'INLINE'); // <pk-08-11-29 />
$UD_CHECK['T_CLI_CLIENT'] =
array('TABLE'=>
"T_CLI_CLIENT",'VERSION'=>
22,'SCRIPT'=>
"",'CREATE'=>
'INLINE'); // <pk-08-10-23 />
$UD_CHECK['T_CLI_CLIENT_OV'] =
array('TABLE'=>
"T_CLI_CLIENT_OV",'VERSION'=>
10,'SCRIPT'=>
"",'CREATE'=>
'INLINE'); // <pk-05-08-08 />
$UD_CHECK['T_CLI_STATES'] =
array('TABLE'=>
"T_CLI_STATES",'VERSION'=>
12,'SCRIPT'=>
"",'CREATE'=>
'INLINE'); // <pk-06-10-06 />
$UD_CHECK['T_CLI_PROFILES'] =
array('TABLE'=>
"T_CLI_PROFILES",'VERSION'=>
18,'SCRIPT'=>
"",'CREATE'=>
'INLINE'); // <pk-07-01-13 />
$UD_CHECK['T_CLI_PROFILES_OV'] =
array('TABLE'=>
"T_CLI_PROFILES_OV",'VERSION'=>
10,'SCRIPT'=>
"",'CREATE'=>
'INLINE'); // <pk-05-08-08 />
$UD_CHECK['T_CLI_STAFF'] =
array('TABLE'=>
"T_CLI_STAFF",'VERSION'=>
16,'SCRIPT'=>
"",'CREATE'=>
'INLINE'); // <pk-06-08-07 />
$UD_CHECK['T_CLI_STAFF_OV'] =
array('TABLE'=>
"T_CLI_STAFF_OV",'VERSION'=>
10,'SCRIPT'=>
"",'CREATE'=>
'INLINE'); // <pk-05-11-02 />
$UD_CHECK['T_CLI_STAFF_TYPE'] =
array('TABLE'=>
"T_CLI_STAFF_TYPE",'VERSION'=>
14,'SCRIPT'=>
"",'CREATE'=>
'INLINE'); // <pk-06-10-04 />
$UD_CHECK['T_CLI_MEDIA'] =
array('TABLE'=>
"T_CLI_MEDIA",'VERSION'=>
10,'SCRIPT'=>
"",'CREATE'=>
'INLINE'); // <pk-05-11-05 />
$UD_CHECK['T_CLI_USER'] =
array('TABLE'=>
"T_CLI_USER",'VERSION'=>
10,'SCRIPT'=>
"",'CREATE'=>
'INLINE'); // <pk-06-01-17 />
$UD_CHECK['T_ADDRESS'] =
array('TABLE'=>
"T_ADDRESS",'VERSION'=>
14,'SCRIPT'=>
"",'CREATE'=>
'INLINE'); // <pk-07-01-04 />
$UD_CHECK['T_ADDRESS_OV'] =
array('TABLE'=>
"T_ADDRESS_OV",'VERSION'=>
11,'SCRIPT'=>
"",'CREATE'=>
'INLINE'); // <pk-07-02-21 />
$UD_CHECK['T_AUDIENCE'] =
array('TABLE'=>
"T_AUDIENCE",'VERSION'=>
10,'SCRIPT'=>
"",'CREATE'=>
'INLINE'); // <pk-06-02-10 />
$UD_CHECK['T_CLI_AUDIENCE'] =
array('TABLE'=>
"T_CLI_AUDIENCE",'VERSION'=>
10,'SCRIPT'=>
"",'CREATE'=>
'INLINE'); // <pk-06-02-10 />
$UD_CHECK['T_PRO_AUDIENCE'] =
array('TABLE'=>
"T_PRO_AUDIENCE",'VERSION'=>
10,'SCRIPT'=>
"",'CREATE'=>
'INLINE'); // <pk-06-02-10 />
$UD_CHECK['T_PRO_GRPTYPE'] =
array('TABLE'=>
"T_PRO_GRPTYPE", 'VERSION'=>
13,'SCRIPT'=>
"",'CREATE'=>
'INLINE'); // <pk-08-07-17 />
$UD_CHECK['T_PRO_GROUP'] =
array('TABLE'=>
"T_PRO_GROUP", 'VERSION'=>
16,'SCRIPT'=>
"",'CREATE'=>
'INLINE'); // <pk-08-08-02 />
$UD_CHECK['T_PRO_PRODTYPE'] =
array('TABLE'=>
"T_PRO_PRODTYPE", 'VERSION'=>
18,'SCRIPT'=>
"",'CREATE'=>
'INLINE'); // <pk-06-02-10 />
$UD_CHECK['T_PRO_PRT_TEMPLATES']=
array('TABLE'=>
"T_PRO_PRT_TEMPLATES", 'VERSION'=>
10,'SCRIPT'=>
"",'CREATE'=>
'INLINE'); // <pk-06-01-31 />
$UD_CHECK['T_PRO_PRODUCT'] =
array('TABLE'=>
"T_PRO_PRODUCT",'VERSION'=>
20,'SCRIPT'=>
"",'CREATE'=>
'INLINE'); // <pk-06-02-10 />
$UD_CHECK['T_PRO_PRODUCT_OV'] =
array('TABLE'=>
"T_PRO_PRODUCT_OV",'VERSION'=>
10,'SCRIPT'=>
"",'CREATE'=>
'INLINE'); // <pk-05-08-31 />
$UD_CHECK['T_PRO_PART'] =
array('TABLE'=>
"T_PRO_PART",'VERSION'=>
18,'SCRIPT'=>
"",'CREATE'=>
'INLINE'); // <pk-06-02-14 />
$UD_CHECK['T_PRO_PARTTYPE'] =
array('TABLE'=>
"T_PRO_PARTTYPE",'VERSION'=>
13,'SCRIPT'=>
"",'CREATE'=>
'INLINE'); // <pk-05-10-12 /><sw-05-10-12 />
$UD_CHECK['T_PRO_PRODGROUP'] =
array('TABLE'=>
"T_PRO_PRODGROUP",'VERSION'=>
11,'SCRIPT'=>
"",'CREATE'=>
'INLINE'); // <pk-06-09-05 />
$UD_CHECK['T_CMS_PROJECT'] =
array('TABLE'=>
"T_CMS_PROJECT",'VERSION'=>
21,'SCRIPT'=>
"",'CREATE'=>
'INLINE'); // <pk-07-01-08 />
$UD_CHECK['T_CMS_PROJECT_OV'] =
array('TABLE'=>
"T_CMS_PROJECT_OV",'VERSION'=>
10,'SCRIPT'=>
"",'CREATE'=>
'INLINE');
$UD_CHECK['T_CMS_CSSSTYLES'] =
array('TABLE'=>
"T_CMS_CSSSTYLES",'VERSION'=>
15,'SCRIPT'=>
"",'CREATE'=>
'INLINE'); // <pk-07-06-07 />
$UD_CHECK['T_CMS_CSSCLASS'] =
array('TABLE'=>
"T_CMS_CSSCLASS",'VERSION'=>
14,'SCRIPT'=>
"",'CREATE'=>
'INLINE'); // <pk-05-12-13 />
$UD_CHECK['T_CMS_MENU'] =
array('TABLE'=>
"T_CMS_MENU",'VERSION'=>
21,'SCRIPT'=>
"",'CREATE'=>
'INLINE'); // <pk-08-06-18 />
$UD_CHECK['T_CMS_MENU_OV'] =
array('TABLE'=>
"T_CMS_MENU_OV",'VERSION'=>
10,'SCRIPT'=>
"",'CREATE'=>
'INLINE');
$UD_CHECK['T_CMS_MENUTYPE'] =
array('TABLE'=>
"T_CMS_MENUTYPE",'VERSION'=>
10,'SCRIPT'=>
"",'CREATE'=>
'INLINE'); // <pk-08-06-10 />
$UD_CHECK['T_CMS_PAGE'] =
array('TABLE'=>
"T_CMS_PAGE",'VERSION'=>
18,'SCRIPT'=>
"",'CREATE'=>
'INLINE'); // <pk-08-06-16 />
$UD_CHECK['T_CMS_PAGE_OV'] =
array('TABLE'=>
"T_CMS_PAGE_OV",'VERSION'=>
10,'SCRIPT'=>
"",'CREATE'=>
'INLINE'); // <pk-06-02-16 />
$UD_CHECK['T_CMS_PAGETYPE'] =
array('TABLE'=>
"T_CMS_PAGETYPE",'VERSION'=>
13,'SCRIPT'=>
"",'CREATE'=>
'INLINE'); // <pk-08-07-27 />
$UD_CHECK['T_CMS_PAGESTATE'] =
array('TABLE'=>
"T_CMS_PAGESTATE",'VERSION'=>
10,'SCRIPT'=>
"",'CREATE'=>
'INLINE'); // <pk-08-06-19 />
$UD_CHECK['T_CMS_CHAPTER'] =
array('TABLE'=>
"T_CMS_CHAPTER",'VERSION'=>
22,'SCRIPT'=>
"",'CREATE'=>
'INLINE'); // <pk-08-12-18 />
$UD_CHECK['T_CMS_CHAPTER_OV'] =
array('TABLE'=>
"T_CMS_CHAPTER_OV",'VERSION'=>
10,'SCRIPT'=>
"",'CREATE'=>
'INLINE'); // <pk-05-08-26 />
$UD_CHECK['T_CMS_FEEDBACK'] =
array('TABLE'=>
"T_CMS_FEEDBACK",'VERSION'=>
10,'SCRIPT'=>
"",'CREATE'=>
'INLINE'); // <pk-06-12-15 />
$UD_CHECK['T_LOOKUP_CHA_SHOWMODE'] =
array('TABLE'=>
"T_LOOKUP_CHA_SHOWMODE",'VERSION'=>
10,'SCRIPT'=>
"",'CREATE'=>
'INLINE'); // <pk-06-02-16 />
$UD_CHECK['T_CMS_TMPL_PAGE'] =
array('TABLE'=>
"T_CMS_TMPL_PAGE",'VERSION'=>
16,'SCRIPT'=>
"",'CREATE'=>
'INLINE'); // <pk-08-11-30 />
$UD_CHECK['T_CMS_TMPL_PAGETYPE'] =
array('TABLE'=>
"T_CMS_TMPL_PAGETYPE",'VERSION'=>
10,'SCRIPT'=>
"",'CREATE'=>
'INLINE'); // <pk-08-06-16 />
$UD_CHECK['T_CMS_TMPL_PAGE_OV'] =
array('TABLE'=>
"T_CMS_TMPL_PAGE_OV",'VERSION'=>
10,'SCRIPT'=>
"",'CREATE'=>
'INLINE'); // <pk-05-09-06>
$UD_CHECK['T_CMS_TMPL_CHAPTER'] =
array('TABLE'=>
"T_CMS_TMPL_CHAPTER",'VERSION'=>
23,'SCRIPT'=>
"",'CREATE'=>
'INLINE');// <pk-08-07-19>
$UD_CHECK['T_CMS_TMPL_CHAPTER_FIELDS'] =
array('TABLE'=>
"T_CMS_TMPL_CHAPTER_FIELDS",'VERSION'=>
13,'SCRIPT'=>
"",'CREATE'=>
'INLINE'); // <pk-08-08-08>
$UD_CHECK['T_SHOP_ORDER'] =
array('TABLE'=>
"T_SHOP_ORDER",'VERSION'=>
1,'SCRIPT'=>
"",'CREATE'=>
'INLINE'); // <pk-08-10-15 />
$UD_CHECK['T_SHOP_ORDER_ITEM'] =
array('TABLE'=>
"T_SHOP_ORDER_ITEM",'VERSION'=>
1,'SCRIPT'=>
"",'CREATE'=>
'INLINE'); // <pk-08-10-16 />
$UD_CHECK['T_MED_CATEGORY'] =
array('TABLE'=>
"T_MED_CATEGORY",'VERSION'=>
10,'SCRIPT'=>
"",'CREATE'=>
'INLINE');
$UD_CHECK['T_MED_MIMETYPES'] =
array('TABLE'=>
"T_MED_MIMETYPES",'VERSION'=>
10,'SCRIPT'=>
"",'CREATE'=>
'INLINE');
$UD_CHECK['T_MED_FILES'] =
array('TABLE'=>
"T_MED_FILES",'VERSION'=>
12,'SCRIPT'=>
"",'CREATE'=>
'INLINE'); // <pk-05-11-23 />
$UD_CHECK['T_MED_FILES_OV'] =
array('TABLE'=>
"T_MED_FILES_OV",'VERSION'=>
10,'SCRIPT'=>
"",'CREATE'=>
'INLINE'); // <pk-05-11-07 />
$UD_CHECK['T_MEDPAG_MEDIA'] =
array('TABLE'=>
"T_MEDPAG_MEDIA",'VERSION'=>
10,'SCRIPT'=>
"",'CREATE'=>
'INLINE');
$UD_CHECK['T_MOD_MODULES'] =
array('TABLE'=>
"T_MOD_MODULES",'VERSION'=>
12,'SCRIPT'=>
"",'CREATE'=>
'INLINE'); // <pk-08-08-26 />
$UD_CHECK['T_MOD_SETTINGS'] =
array('TABLE'=>
"T_MOD_SETTINGS",'VERSION'=>
11,'SCRIPT'=>
"",'CREATE'=>
'INLINE'); // <pk-08-10-28 />
$UD_CHECK['T_MOD_HOOKS'] =
array('TABLE'=>
"T_MOD_HOOKS",'VERSION'=>
10,'SCRIPT'=>
"",'CREATE'=>
'INLINE'); // <pk-08-03-20 />
if (!isset
($debug)) $debug=
FALSE;
// $GLOBALS['DEBUGMODE']=FALSE;
foreach($UD_CHECK as $version) {
echo
"<pre>checking table: --".
$version['TABLE'].
"-- Version: --".
$version['VERSION'].
"--</pre>";
echo
"<pre>";print_r($version);echo
"</pre>";
echo
"<p>Table ".
$version['TABLE'].
" does not exist</p>";
if ((isset
($version['TABLE'])) &&
(OCSP_OBJ::defaultReadDBObj()->tblExists($version['TABLE'],$debug)) ||
($version['CREATE']==
"INLINE")) {
$query =
"SELECT TBL_VERSION FROM T_SYS_TABLES WHERE TBL_NAME=".
OCSP_OBJ::defaultReadDBObj()->qs_getSlashedValue($version['TABLE']);
$query.=
" ORDER BY TBL_VERSION DESC";
if ($debug) echo
"<pre>AKTVERSION: $aktVersion\n".
print_r($version,TRUE).
"</pre>";
$incfile.=
"/v".
$version['VERSION'].
".phpinc";
if ($debug) echo
"<p>NO INCFILE ($incfile)</p>";
// <pk-08-06-15> clear cache
if (!function_exists('pcf_getDirList')) require_once __OCSP_PHPINCPATH__ .
"common" .
_OCSP_DIRSEP_ .
"pcf_directory.phpinc";
foreach($arr_cacheFiles as $str_fileName)
if (stristr($str_fileName,$version['TABLE']))
echo
"Deleting cachefile: " .
$str_fileName;
} else if ($version['CREATE']) {
$incfile.=
"/v".
$version['VERSION'].
".phpinc";
include __OCSP_PHPINCPATH__.
"db/update/update_".
$version['TABLE'].
".phpinc";
foreach($GLOBALS['PROJECT'] as $s_key =>
$m_val) {
$s_query=
"SELECT * FROM T_SYS_SETTINGS WHERE SST_GRP='PROJECT' AND SST_OPTION='".
$s_key.
"'";
if ($debug) echo
"<p>".
$s_query.
"</p>";
echo
"<p>Value [PROJECT][".
$s_key.
"] not in db";
'SST_REMARK' =>
'Added by System',
} else if ($a_dbVal['SST_VALUE'] !=
$m_val) {
echo
"<p>Value [PROJECT][".
$s_key.
"] differs in db";
$a_dbVal['SST_OPTION']=
$m_val;
unset
($a_dbVal['SST_LASTCHANGE']);
$a_dbVal['SST_CHANGEDBY']=-
1;
default: echo
"<!-- ".
$s_key.
" is ".
$s_type.
" -->";
Documentation generated on Thu, 08 Jan 2009 17:37:38 +0100 by phpDocumentor 1.4.0a2