|
@@ -325,7 +325,7 @@ class Core_AclHelper {// Helper class for Acl
|
|
|
");
|
|
");
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
- public static function getRefTable($objectName, $childName) {
|
|
|
|
|
|
|
+ public static function getRefTable($objectName, $childName) {// TODO: wrong - add prefix to avoid name collisions or generate unique hash
|
|
|
static $cacheRefTables = array();
|
|
static $cacheRefTables = array();
|
|
|
$refTable = "{$objectName}__#REF__{$childName}";
|
|
$refTable = "{$objectName}__#REF__{$childName}";
|
|
|
if (in_array($refTable, $cacheRefTables)) return $refTable;
|
|
if (in_array($refTable, $cacheRefTables)) return $refTable;
|
|
@@ -333,6 +333,7 @@ class Core_AclHelper {// Helper class for Acl
|
|
|
CREATE TABLE IF NOT EXISTS `{$refTable}` (
|
|
CREATE TABLE IF NOT EXISTS `{$refTable}` (
|
|
|
`PRIMARY_KEY` int(11) NOT NULL,
|
|
`PRIMARY_KEY` int(11) NOT NULL,
|
|
|
`REMOTE_PRIMARY_KEY` int(11) NOT NULL,
|
|
`REMOTE_PRIMARY_KEY` int(11) NOT NULL,
|
|
|
|
|
+ `REMOTE_TYPENAME` varchar(255) NOT NULL DEFAULT '',
|
|
|
`A_STATUS` enum('WAITING', 'NORMAL', 'DELETED') NOT NULL DEFAULT 'WAITING',
|
|
`A_STATUS` enum('WAITING', 'NORMAL', 'DELETED') NOT NULL DEFAULT 'WAITING',
|
|
|
`A_RECORD_UPDATE_DATE` timestamp ON UPDATE CURRENT_TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
`A_RECORD_UPDATE_DATE` timestamp ON UPDATE CURRENT_TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
|
-- TODO `TRANACTION_ID` int(11) NOT NULL
|
|
-- TODO `TRANACTION_ID` int(11) NOT NULL
|
|
@@ -350,6 +351,11 @@ class Core_AclHelper {// Helper class for Acl
|
|
|
} catch (Exception $e) {
|
|
} catch (Exception $e) {
|
|
|
// echo 'C.'.get_class($this).' L.' . __LINE__ . " Error:";print_r($e->getMessage());echo "\n";
|
|
// echo 'C.'.get_class($this).' L.' . __LINE__ . " Error:";print_r($e->getMessage());echo "\n";
|
|
|
}
|
|
}
|
|
|
|
|
+ try {
|
|
|
|
|
+ DB::getPDO()->exec(" ALTER TABLE `{$refTable}` ADD `REMOTE_TYPENAME` varchar(255) NOT NULL DEFAULT '' ");
|
|
|
|
|
+ } catch (Exception $e) {
|
|
|
|
|
+ // echo 'C.'.get_class($this).' L.' . __LINE__ . " Error:";print_r($e->getMessage());echo "\n";
|
|
|
|
|
+ }
|
|
|
$cacheRefTables[] = $refTable;
|
|
$cacheRefTables[] = $refTable;
|
|
|
return $refTable;
|
|
return $refTable;
|
|
|
}
|
|
}
|