* [refac bug #56113] Update file-updateObjectID method.

This commit is contained in:
wangyidong
2024-10-18 17:28:23 +08:00
parent 5bc6cd9423
commit e5b66bff89
2 changed files with 18 additions and 11 deletions
+17 -10
View File
@@ -853,23 +853,30 @@ class fileModel extends model
/**
* Update objectID.
*
* @param string $uid
* @param int $objectID
* @param string $objectType
* @param array|string|bool $uid
* @param int $objectID
* @param string $objectType
* @access public
* @return bool
*/
public function updateObjectID(string|bool $uid, int $objectID, string $objectType): bool
public function updateObjectID(array|string|bool $uid, int $objectID, string $objectType): bool
{
if(empty($uid)) return true;
if(empty($_SESSION['album']['used'][$uid])) return true;
$data = new stdclass();
$data->objectID = $objectID;
$data->objectType = $objectType;
if(!defined('RUN_MODE') || RUN_MODE != 'api') $data->extra = 'editor';
if(is_string($uid)) $uid = array($uid);
if(!is_array($uid)) return true;
$this->dao->update(TABLE_FILE)->data($data)->where('id')->in($_SESSION['album']['used'][$uid])->exec();
foreach($uid as $value)
{
if(empty($_SESSION['album']['used'][$value])) continue;
$data = new stdclass();
$data->objectID = $objectID;
$data->objectType = $objectType;
if(!defined('RUN_MODE') || RUN_MODE != 'api') $data->extra = 'editor';
$this->dao->update(TABLE_FILE)->data($data)->where('id')->in($_SESSION['album']['used'][$value])->exec();
}
return !dao::isError();
}