Code Duplication    Length = 27-27 lines in 2 locations

lib/Db/CirclesRequestBuilder.php 2 locations

@@ 248-274 (lines=27) @@
245
	 * @param IQueryBuilder $qb
246
	 * @param string $userId
247
	 */
248
	protected function leftJoinUserIdAsViewer(IQueryBuilder &$qb, $userId) {
249
250
		if ($qb->getType() !== QueryBuilder::SELECT) {
251
			return;
252
		}
253
254
		$expr = $qb->expr();
255
		$pf = '`' . $this->default_select_alias . '`.';
256
257
		/** @noinspection PhpMethodParametersCountMismatchInspection */
258
		$qb->selectAlias('u.user_id', 'viewer_userid')
259
		   ->selectAlias('u.status', 'viewer_status')
260
		   ->selectAlias('u.level', 'viewer_level')
261
		   ->leftJoin(
262
			   $this->default_select_alias, CoreRequestBuilder::TABLE_MEMBERS, 'u',
263
			   $expr->andX(
264
				   $expr->eq(
265
					   'u.circle_id',
266
					   $qb->createFunction(
267
						   'SUBSTR(' . $pf . '`unique_id`, 1, ' . Circle::SHORT_UNIQUE_ID_LENGTH
268
						   . ')'
269
					   )
270
				   ),
271
				   $expr->eq('u.user_id', $qb->createNamedParameter($userId)),
272
				   $expr->eq('u.user_type', $qb->createNamedParameter(Member::TYPE_USER))
273
			   )
274
		   );
275
	}
276
277
	/**
@@ 282-308 (lines=27) @@
279
	 *
280
	 * @param IQueryBuilder $qb
281
	 */
282
	protected function leftJoinOwner(IQueryBuilder &$qb) {
283
284
		if ($qb->getType() !== QueryBuilder::SELECT) {
285
			return;
286
		}
287
288
		$expr = $qb->expr();
289
		$pf = '`' . $this->default_select_alias . '`.';
290
291
		/** @noinspection PhpMethodParametersCountMismatchInspection */
292
		$qb->selectAlias('o.user_id', 'owner_userid')
293
		   ->selectAlias('o.status', 'owner_status')
294
		   ->selectAlias('o.level', 'owner_level')
295
		   ->leftJoin(
296
			   $this->default_select_alias, CoreRequestBuilder::TABLE_MEMBERS, 'o',
297
			   $expr->andX(
298
				   $expr->eq(
299
					   $qb->createFunction(
300
						   'SUBSTR(' . $pf . '`unique_id`, 1, ' . Circle::SHORT_UNIQUE_ID_LENGTH
301
						   . ')'
302
					   )
303
					   , 'o.circle_id'
304
				   ),
305
				   $expr->eq('o.level', $qb->createNamedParameter(Member::LEVEL_OWNER)),
306
				   $expr->eq('o.user_type', $qb->createNamedParameter(Member::TYPE_USER))
307
			   )
308
		   );
309
	}
310
311