|
@@ -247,7 +247,10 @@ class ACL {
|
|
|
self::addListRef($namespace, $remoteTypeName, $pk, [ $remotePk ]);
|
|
self::addListRef($namespace, $remoteTypeName, $pk, [ $remotePk ]);
|
|
|
}
|
|
}
|
|
|
static function addListRef($namespace, $remoteTypeName, $pk, $listRemotePk) {
|
|
static function addListRef($namespace, $remoteTypeName, $pk, $listRemotePk) {
|
|
|
- $refTable = ACL::getRefTable($namespace, $remoteTypeName); // TODO: RefConfig::fetch($namespace, $remoteTypeName);
|
|
|
|
|
|
|
+ // $refTable = ACL::getRefTable($namespace, $remoteTypeName); // TODO: RefConfig::fetch($namespace, $remoteTypeName);
|
|
|
|
|
+ $refConfig = RefConfig::getRefConfig($namespace, $remoteTypeName);
|
|
|
|
|
+ if ('table' !== $refConfig->source) throw new HttpException("Not implemented ref source type", 501);
|
|
|
|
|
+ $refTable = $refConfig->tableName;
|
|
|
foreach ($listRemotePk as $remotePk) {
|
|
foreach ($listRemotePk as $remotePk) {
|
|
|
DB::getPDO()->insertIgnore($refTable, [ 'PRIMARY_KEY' => $pk, 'REMOTE_PRIMARY_KEY' => $remotePk ]);
|
|
DB::getPDO()->insertIgnore($refTable, [ 'PRIMARY_KEY' => $pk, 'REMOTE_PRIMARY_KEY' => $remotePk ]);
|
|
|
}
|
|
}
|
|
@@ -266,7 +269,10 @@ class ACL {
|
|
|
self::removeListRef($namespace, $remoteTypeName, $pk, [ $remotePk ]);
|
|
self::removeListRef($namespace, $remoteTypeName, $pk, [ $remotePk ]);
|
|
|
}
|
|
}
|
|
|
static function removeListRef($namepace, $remoteTypeName, $pk, $listRemotePk) {
|
|
static function removeListRef($namepace, $remoteTypeName, $pk, $listRemotePk) {
|
|
|
- $refTable = ACL::getRefTable($namepace, $remoteTypeName); // TODO: RefConfig::fetch($namepace, $remoteTypeName);
|
|
|
|
|
|
|
+ // $refTable = ACL::getRefTable($namepace, $remoteTypeName); // TODO: RefConfig::fetch($namepace, $remoteTypeName);
|
|
|
|
|
+ $refConfig = RefConfig::getRefConfig($namespace, $remoteTypeName);
|
|
|
|
|
+ if ('table' !== $refConfig->source) throw new HttpException("Not implemented ref source type", 501);
|
|
|
|
|
+ $refTable = $refConfig->tableName;
|
|
|
foreach ($listRemotePk as $remotePk) {
|
|
foreach ($listRemotePk as $remotePk) {
|
|
|
DB::getPDO()->execSql(" delete from `{$refTable}` where PRIMARY_KEY = :pk and REMOTE_PRIMARY_KEY = :remote_pk ", [
|
|
DB::getPDO()->execSql(" delete from `{$refTable}` where PRIMARY_KEY = :pk and REMOTE_PRIMARY_KEY = :remote_pk ", [
|
|
|
':pk' => $pk,
|
|
':pk' => $pk,
|