@@ -319,10 +319,7 @@ public function acceptShare(IShare $share, string $recipient): IShare {
319319 ->where ($ qb ->expr ()->eq ('share_type ' , $ qb ->createNamedParameter (IShare::TYPE_USERGROUP )))
320320 ->andWhere ($ qb ->expr ()->eq ('share_with ' , $ qb ->createNamedParameter ($ recipient )))
321321 ->andWhere ($ qb ->expr ()->eq ('parent ' , $ qb ->createNamedParameter ($ share ->getId ())))
322- ->andWhere ($ qb ->expr ()->orX (
323- $ qb ->expr ()->eq ('item_type ' , $ qb ->createNamedParameter ('file ' )),
324- $ qb ->expr ()->eq ('item_type ' , $ qb ->createNamedParameter ('folder ' ))
325- ))
322+ ->andWhere ($ qb ->expr ()->in ('item_type ' , $ qb ->createNamedParameter (['file ' , 'folder ' ], IQueryBuilder::PARAM_STR_ARRAY )))
326323 ->execute ();
327324
328325 $ data = $ stmt ->fetch ();
@@ -380,10 +377,7 @@ public function getChildren(\OCP\Share\IShare $parent) {
380377 ], IQueryBuilder::PARAM_INT_ARRAY )
381378 )
382379 )
383- ->andWhere ($ qb ->expr ()->orX (
384- $ qb ->expr ()->eq ('item_type ' , $ qb ->createNamedParameter ('file ' )),
385- $ qb ->expr ()->eq ('item_type ' , $ qb ->createNamedParameter ('folder ' ))
386- ))
380+ ->andWhere ($ qb ->expr ()->in ('item_type ' , $ qb ->createNamedParameter (['file ' , 'folder ' ], IQueryBuilder::PARAM_STR_ARRAY )))
387381 ->orderBy ('id ' );
388382
389383 $ cursor = $ qb ->execute ();
@@ -446,10 +440,7 @@ public function deleteFromSelf(IShare $share, $recipient) {
446440 ->where ($ qb ->expr ()->eq ('share_type ' , $ qb ->createNamedParameter (IShare::TYPE_USERGROUP )))
447441 ->andWhere ($ qb ->expr ()->eq ('share_with ' , $ qb ->createNamedParameter ($ recipient )))
448442 ->andWhere ($ qb ->expr ()->eq ('parent ' , $ qb ->createNamedParameter ($ share ->getId ())))
449- ->andWhere ($ qb ->expr ()->orX (
450- $ qb ->expr ()->eq ('item_type ' , $ qb ->createNamedParameter ('file ' )),
451- $ qb ->expr ()->eq ('item_type ' , $ qb ->createNamedParameter ('folder ' ))
452- ))
443+ ->andWhere ($ qb ->expr ()->in ('item_type ' , $ qb ->createNamedParameter (['file ' , 'folder ' ], IQueryBuilder::PARAM_STR_ARRAY )))
453444 ->execute ();
454445
455446 $ data = $ stmt ->fetch ();
@@ -562,10 +553,7 @@ public function move(\OCP\Share\IShare $share, $recipient) {
562553 ->where ($ qb ->expr ()->eq ('share_type ' , $ qb ->createNamedParameter (IShare::TYPE_USERGROUP )))
563554 ->andWhere ($ qb ->expr ()->eq ('share_with ' , $ qb ->createNamedParameter ($ recipient )))
564555 ->andWhere ($ qb ->expr ()->eq ('parent ' , $ qb ->createNamedParameter ($ share ->getId ())))
565- ->andWhere ($ qb ->expr ()->orX (
566- $ qb ->expr ()->eq ('item_type ' , $ qb ->createNamedParameter ('file ' )),
567- $ qb ->expr ()->eq ('item_type ' , $ qb ->createNamedParameter ('folder ' ))
568- ))
556+ ->andWhere ($ qb ->expr ()->in ('item_type ' , $ qb ->createNamedParameter (['file ' , 'folder ' ], IQueryBuilder::PARAM_STR_ARRAY )))
569557 ->setMaxResults (1 )
570558 ->execute ();
571559
@@ -618,16 +606,9 @@ public function getSharesInFolder($userId, Folder $node, $reshares, $shallow = t
618606 'f.parent AS f_parent ' , 'f.name ' , 'f.mimetype ' , 'f.mimepart ' , 'f.size ' , 'f.mtime ' , 'f.storage_mtime ' ,
619607 'f.encrypted ' , 'f.unencrypted_size ' , 'f.etag ' , 'f.checksum ' )
620608 ->from ('share ' , 's ' )
621- ->andWhere ($ qb ->expr ()->orX (
622- $ qb ->expr ()->eq ('item_type ' , $ qb ->createNamedParameter ('file ' )),
623- $ qb ->expr ()->eq ('item_type ' , $ qb ->createNamedParameter ('folder ' ))
624- ));
609+ ->andWhere ($ qb ->expr ()->in ('item_type ' , $ qb ->createNamedParameter (['file ' , 'folder ' ], IQueryBuilder::PARAM_STR_ARRAY )));
625610
626- $ qb ->andWhere ($ qb ->expr ()->orX (
627- $ qb ->expr ()->eq ('share_type ' , $ qb ->createNamedParameter (IShare::TYPE_USER )),
628- $ qb ->expr ()->eq ('share_type ' , $ qb ->createNamedParameter (IShare::TYPE_GROUP )),
629- $ qb ->expr ()->eq ('share_type ' , $ qb ->createNamedParameter (IShare::TYPE_LINK ))
630- ));
611+ $ qb ->andWhere ($ qb ->expr ()->in ('share_type ' , $ qb ->createNamedParameter ([IShare::TYPE_USER , IShare::TYPE_GROUP , IShare::TYPE_LINK ], IQueryBuilder::PARAM_INT_ARRAY )));
631612
632613 /**
633614 * Reshares for this user are shares where they are the owner.
@@ -690,10 +671,7 @@ public function getSharesBy($userId, $shareType, $node, $reshares, $limit, $offs
690671 $ qb = $ this ->dbConn ->getQueryBuilder ();
691672 $ qb ->select ('* ' )
692673 ->from ('share ' )
693- ->andWhere ($ qb ->expr ()->orX (
694- $ qb ->expr ()->eq ('item_type ' , $ qb ->createNamedParameter ('file ' )),
695- $ qb ->expr ()->eq ('item_type ' , $ qb ->createNamedParameter ('folder ' ))
696- ));
674+ ->andWhere ($ qb ->expr ()->in ('item_type ' , $ qb ->createNamedParameter (['file ' , 'folder ' ], IQueryBuilder::PARAM_STR_ARRAY )));
697675
698676 $ qb ->andWhere ($ qb ->expr ()->eq ('share_type ' , $ qb ->createNamedParameter ($ shareType )));
699677
@@ -753,10 +731,7 @@ public function getShareById($id, $recipientId = null) {
753731 ], IQueryBuilder::PARAM_INT_ARRAY )
754732 )
755733 )
756- ->andWhere ($ qb ->expr ()->orX (
757- $ qb ->expr ()->eq ('item_type ' , $ qb ->createNamedParameter ('file ' )),
758- $ qb ->expr ()->eq ('item_type ' , $ qb ->createNamedParameter ('folder ' ))
759- ));
734+ ->andWhere ($ qb ->expr ()->in ('item_type ' , $ qb ->createNamedParameter (['file ' , 'folder ' ], IQueryBuilder::PARAM_STR_ARRAY )));
760735
761736 $ cursor = $ qb ->execute ();
762737 $ data = $ cursor ->fetch ();
@@ -798,10 +773,7 @@ public function getSharesByPath(Node $path) {
798773 $ qb ->expr ()->eq ('share_type ' , $ qb ->createNamedParameter (IShare::TYPE_GROUP ))
799774 )
800775 )
801- ->andWhere ($ qb ->expr ()->orX (
802- $ qb ->expr ()->eq ('item_type ' , $ qb ->createNamedParameter ('file ' )),
803- $ qb ->expr ()->eq ('item_type ' , $ qb ->createNamedParameter ('folder ' ))
804- ))
776+ ->andWhere ($ qb ->expr ()->in ('item_type ' , $ qb ->createNamedParameter (['file ' , 'folder ' ], IQueryBuilder::PARAM_STR_ARRAY )))
805777 ->execute ();
806778
807779 $ shares = [];
@@ -869,10 +841,7 @@ public function getSharedWith($userId, $shareType, $node, $limit, $offset) {
869841
870842 $ qb ->where ($ qb ->expr ()->eq ('share_type ' , $ qb ->createNamedParameter (IShare::TYPE_USER )))
871843 ->andWhere ($ qb ->expr ()->eq ('share_with ' , $ qb ->createNamedParameter ($ userId )))
872- ->andWhere ($ qb ->expr ()->orX (
873- $ qb ->expr ()->eq ('item_type ' , $ qb ->createNamedParameter ('file ' )),
874- $ qb ->expr ()->eq ('item_type ' , $ qb ->createNamedParameter ('folder ' ))
875- ));
844+ ->andWhere ($ qb ->expr ()->in ('item_type ' , $ qb ->createNamedParameter (['file ' , 'folder ' ], IQueryBuilder::PARAM_STR_ARRAY )));
876845
877846 // Filter by node if provided
878847 if ($ node !== null ) {
@@ -938,10 +907,7 @@ public function getSharedWith($userId, $shareType, $node, $limit, $offset) {
938907 $ groups ,
939908 IQueryBuilder::PARAM_STR_ARRAY
940909 )))
941- ->andWhere ($ qb ->expr ()->orX (
942- $ qb ->expr ()->eq ('item_type ' , $ qb ->createNamedParameter ('file ' )),
943- $ qb ->expr ()->eq ('item_type ' , $ qb ->createNamedParameter ('folder ' ))
944- ));
910+ ->andWhere ($ qb ->expr ()->in ('item_type ' , $ qb ->createNamedParameter (['file ' , 'folder ' ], IQueryBuilder::PARAM_STR_ARRAY )));
945911
946912 $ cursor = $ qb ->execute ();
947913 while ($ data = $ cursor ->fetch ()) {
@@ -984,10 +950,7 @@ public function getShareByToken($token) {
984950 ->from ('share ' )
985951 ->where ($ qb ->expr ()->eq ('share_type ' , $ qb ->createNamedParameter (IShare::TYPE_LINK )))
986952 ->andWhere ($ qb ->expr ()->eq ('token ' , $ qb ->createNamedParameter ($ token )))
987- ->andWhere ($ qb ->expr ()->orX (
988- $ qb ->expr ()->eq ('item_type ' , $ qb ->createNamedParameter ('file ' )),
989- $ qb ->expr ()->eq ('item_type ' , $ qb ->createNamedParameter ('folder ' ))
990- ))
953+ ->andWhere ($ qb ->expr ()->in ('item_type ' , $ qb ->createNamedParameter (['file ' , 'folder ' ], IQueryBuilder::PARAM_STR_ARRAY )))
991954 ->executeQuery ();
992955
993956 $ data = $ cursor ->fetch ();
@@ -1085,7 +1048,7 @@ private function resolveGroupShares($shareMap, $userId) {
10851048 ->from ('share ' )
10861049 ->where ($ qb ->expr ()->eq ('share_with ' , $ qb ->createNamedParameter ($ userId )))
10871050 ->andWhere ($ qb ->expr ()->eq ('share_type ' , $ qb ->createNamedParameter (IShare::TYPE_USERGROUP )))
1088- ->andWhere ($ qb ->expr ()->in ('item_type ' , [ $ qb ->createNamedParameter ('file ' ), $ qb -> createNamedParameter ( 'folder ' )] ));
1051+ ->andWhere ($ qb ->expr ()->in ('item_type ' , $ qb ->createNamedParameter ([ 'file ' , 'folder ' ], IQueryBuilder:: PARAM_STR_ARRAY ) ));
10891052
10901053 // this is called with either all group shares or one group share.
10911054 // for all shares it's easier to just only search by share_with,
@@ -1142,10 +1105,7 @@ public function userDeleted($uid, $shareType) {
11421105 */
11431106 $ qb ->where (
11441107 $ qb ->expr ()->andX (
1145- $ qb ->expr ()->orX (
1146- $ qb ->expr ()->eq ('share_type ' , $ qb ->createNamedParameter (IShare::TYPE_GROUP )),
1147- $ qb ->expr ()->eq ('share_type ' , $ qb ->createNamedParameter (IShare::TYPE_USERGROUP ))
1148- ),
1108+ $ qb ->expr ()->in ('share_type ' , $ qb ->createNamedParameter ([IShare::TYPE_GROUP , IShare::TYPE_USERGROUP ], IQueryBuilder::PARAM_INT_ARRAY )),
11491109 $ qb ->expr ()->eq ('uid_owner ' , $ qb ->createNamedParameter ($ uid ))
11501110 )
11511111 );
@@ -1318,26 +1278,19 @@ public function getAccessList($nodes, $currentAccess) {
13181278
13191279 $ qb = $ this ->dbConn ->getQueryBuilder ();
13201280
1321- $ or = $ qb ->expr ()->orX (
1322- $ qb ->expr ()->eq ('share_type ' , $ qb ->createNamedParameter (IShare::TYPE_USER )),
1323- $ qb ->expr ()->eq ('share_type ' , $ qb ->createNamedParameter (IShare::TYPE_GROUP )),
1324- $ qb ->expr ()->eq ('share_type ' , $ qb ->createNamedParameter (IShare::TYPE_LINK ))
1325- );
1281+ $ shareTypes = [IShare::TYPE_USER , IShare::TYPE_GROUP , IShare::TYPE_LINK ];
13261282
13271283 if ($ currentAccess ) {
1328- $ or -> add ( $ qb -> expr ()-> eq ( ' share_type ' , $ qb -> createNamedParameter ( IShare::TYPE_USERGROUP ))) ;
1284+ $ shareTypes [] = IShare::TYPE_USERGROUP ;
13291285 }
13301286
13311287 $ qb ->select ('id ' , 'parent ' , 'share_type ' , 'share_with ' , 'file_source ' , 'file_target ' , 'permissions ' )
13321288 ->from ('share ' )
13331289 ->where (
1334- $ or
1290+ $ qb -> expr ()-> in ( ' share_type ' , $ qb -> createNamedParameter ( $ shareTypes , IQueryBuilder:: PARAM_INT_ARRAY ))
13351291 )
13361292 ->andWhere ($ qb ->expr ()->in ('file_source ' , $ qb ->createNamedParameter ($ ids , IQueryBuilder::PARAM_INT_ARRAY )))
1337- ->andWhere ($ qb ->expr ()->orX (
1338- $ qb ->expr ()->eq ('item_type ' , $ qb ->createNamedParameter ('file ' )),
1339- $ qb ->expr ()->eq ('item_type ' , $ qb ->createNamedParameter ('folder ' ))
1340- ));
1293+ ->andWhere ($ qb ->expr ()->in ('item_type ' , $ qb ->createNamedParameter (['file ' , 'folder ' ], IQueryBuilder::PARAM_STR_ARRAY )));
13411294
13421295 // Ensure accepted is true for user and usergroup type
13431296 $ qb ->andWhere (
@@ -1655,13 +1608,7 @@ public function getAllShares(): iterable {
16551608
16561609 $ qb ->select ('* ' )
16571610 ->from ('share ' )
1658- ->where (
1659- $ qb ->expr ()->orX (
1660- $ qb ->expr ()->eq ('share_type ' , $ qb ->createNamedParameter (\OCP \Share \IShare::TYPE_USER )),
1661- $ qb ->expr ()->eq ('share_type ' , $ qb ->createNamedParameter (\OCP \Share \IShare::TYPE_GROUP )),
1662- $ qb ->expr ()->eq ('share_type ' , $ qb ->createNamedParameter (\OCP \Share \IShare::TYPE_LINK ))
1663- )
1664- );
1611+ ->where ($ qb ->expr ()->in ('share_type ' , $ qb ->createNamedParameter ([IShare::TYPE_USER , IShare::TYPE_GROUP , IShare::TYPE_LINK ], IQueryBuilder::PARAM_INT_ARRAY )));
16651612
16661613 $ cursor = $ qb ->execute ();
16671614 while ($ data = $ cursor ->fetch ()) {
0 commit comments