/** * @static * @param int $userId * @param int $repositoryId * @param int $branchId * @param int $oldStatus * @param int $newStatus * @param string $message * @return int */ public static function saveAction($userId, $repositoryId, $branchId, $oldStatus, $newStatus, $message = 'status was changed from <strong>%s</strong> to <strong>%s</strong>') { if ($oldStatus === $newStatus) { return 0; } $branch = BranchQuery::create()->filterById($branchId)->findOne(); if (!$branch) { return false; } $statusAction = new StatusAction(); return $statusAction->setUserId($userId)->setRepositoryId($repositoryId)->setBranchId($branchId)->setOldStatus($oldStatus)->setNewStatus($newStatus)->setMessage(sprintf($message, BranchPeer::getLabelStatus($oldStatus), BranchPeer::getLabelStatus($newStatus)))->save(); }