| @@ 1025-1064 (lines=40) @@ | ||
| 1022 | return $data; |
|
| 1023 | } |
|
| 1024 | ||
| 1025 | public function getSharesInFolder($userId, Folder $node, $reshares) { |
|
| 1026 | $qb = $this->dbConnection->getQueryBuilder(); |
|
| 1027 | $qb->select('*') |
|
| 1028 | ->from('share', 's') |
|
| 1029 | ->andWhere($qb->expr()->orX( |
|
| 1030 | $qb->expr()->eq('item_type', $qb->createNamedParameter('file')), |
|
| 1031 | $qb->expr()->eq('item_type', $qb->createNamedParameter('folder')) |
|
| 1032 | )) |
|
| 1033 | ->andWhere( |
|
| 1034 | $qb->expr()->eq('share_type', $qb->createNamedParameter(\OCP\Share::SHARE_TYPE_EMAIL)) |
|
| 1035 | ); |
|
| 1036 | ||
| 1037 | /** |
|
| 1038 | * Reshares for this user are shares where they are the owner. |
|
| 1039 | */ |
|
| 1040 | if ($reshares === false) { |
|
| 1041 | $qb->andWhere($qb->expr()->eq('uid_initiator', $qb->createNamedParameter($userId))); |
|
| 1042 | } else { |
|
| 1043 | $qb->andWhere( |
|
| 1044 | $qb->expr()->orX( |
|
| 1045 | $qb->expr()->eq('uid_owner', $qb->createNamedParameter($userId)), |
|
| 1046 | $qb->expr()->eq('uid_initiator', $qb->createNamedParameter($userId)) |
|
| 1047 | ) |
|
| 1048 | ); |
|
| 1049 | } |
|
| 1050 | ||
| 1051 | $qb->innerJoin('s', 'filecache' ,'f', $qb->expr()->eq('s.file_source', 'f.fileid')); |
|
| 1052 | $qb->andWhere($qb->expr()->eq('f.parent', $qb->createNamedParameter($node->getId()))); |
|
| 1053 | ||
| 1054 | $qb->orderBy('id'); |
|
| 1055 | ||
| 1056 | $cursor = $qb->execute(); |
|
| 1057 | $shares = []; |
|
| 1058 | while ($data = $cursor->fetch()) { |
|
| 1059 | $shares[$data['fileid']][] = $this->createShareObject($data); |
|
| 1060 | } |
|
| 1061 | $cursor->closeCursor(); |
|
| 1062 | ||
| 1063 | return $shares; |
|
| 1064 | } |
|
| 1065 | ||
| 1066 | /** |
|
| 1067 | * @inheritdoc |
|
| @@ 594-633 (lines=40) @@ | ||
| 591 | } |
|
| 592 | ||
| 593 | ||
| 594 | public function getSharesInFolder($userId, Folder $node, $reshares) { |
|
| 595 | $qb = $this->dbConnection->getQueryBuilder(); |
|
| 596 | $qb->select('*') |
|
| 597 | ->from('share', 's') |
|
| 598 | ->andWhere($qb->expr()->orX( |
|
| 599 | $qb->expr()->eq('item_type', $qb->createNamedParameter('file')), |
|
| 600 | $qb->expr()->eq('item_type', $qb->createNamedParameter('folder')) |
|
| 601 | )) |
|
| 602 | ->andWhere( |
|
| 603 | $qb->expr()->eq('share_type', $qb->createNamedParameter(\OCP\Share::SHARE_TYPE_REMOTE)) |
|
| 604 | ); |
|
| 605 | ||
| 606 | /** |
|
| 607 | * Reshares for this user are shares where they are the owner. |
|
| 608 | */ |
|
| 609 | if ($reshares === false) { |
|
| 610 | $qb->andWhere($qb->expr()->eq('uid_initiator', $qb->createNamedParameter($userId))); |
|
| 611 | } else { |
|
| 612 | $qb->andWhere( |
|
| 613 | $qb->expr()->orX( |
|
| 614 | $qb->expr()->eq('uid_owner', $qb->createNamedParameter($userId)), |
|
| 615 | $qb->expr()->eq('uid_initiator', $qb->createNamedParameter($userId)) |
|
| 616 | ) |
|
| 617 | ); |
|
| 618 | } |
|
| 619 | ||
| 620 | $qb->innerJoin('s', 'filecache' ,'f', $qb->expr()->eq('s.file_source', 'f.fileid')); |
|
| 621 | $qb->andWhere($qb->expr()->eq('f.parent', $qb->createNamedParameter($node->getId()))); |
|
| 622 | ||
| 623 | $qb->orderBy('id'); |
|
| 624 | ||
| 625 | $cursor = $qb->execute(); |
|
| 626 | $shares = []; |
|
| 627 | while ($data = $cursor->fetch()) { |
|
| 628 | $shares[$data['fileid']][] = $this->createShareObject($data); |
|
| 629 | } |
|
| 630 | $cursor->closeCursor(); |
|
| 631 | ||
| 632 | return $shares; |
|
| 633 | } |
|
| 634 | ||
| 635 | /** |
|
| 636 | * @inheritdoc |
|