Code Duplication    Length = 15-15 lines in 4 locations

code/model/DNProject.php 4 locations

@@ 323-337 (lines=15) @@
320
	 *
321
	 * @return bool
322
	 */
323
	public function canRestore($member = null) {
324
		if ($this->allowedAny(
325
			[
326
				DNRoot::ALLOW_PROD_SNAPSHOT,
327
				DNRoot::ALLOW_NON_PROD_SNAPSHOT
328
			],
329
			$member
330
		)
331
		) {
332
			return true;
333
		}
334
335
		return (bool) $this->Environments()->filterByCallback(function ($env) use ($member) {
336
			return $env->canRestore($member);
337
		})->Count();
338
	}
339
340
	/**
@@ 344-358 (lines=15) @@
341
	 * @param Member|null $member
342
	 * @return bool
343
	 */
344
	public function canBackup($member = null) {
345
		if ($this->allowedAny(
346
			[
347
				DNRoot::ALLOW_PROD_SNAPSHOT,
348
				DNRoot::ALLOW_NON_PROD_SNAPSHOT
349
			],
350
			$member
351
		)
352
		) {
353
			return true;
354
		}
355
356
		return (bool) $this->Environments()->filterByCallback(function ($env) use ($member) {
357
			return $env->canBackup($member);
358
		})->Count();
359
	}
360
361
	/**
@@ 365-379 (lines=15) @@
362
	 * @param Member|null $member
363
	 * @return bool
364
	 */
365
	public function canUploadArchive($member = null) {
366
		if ($this->allowedAny(
367
			[
368
				DNRoot::ALLOW_PROD_SNAPSHOT,
369
				DNRoot::ALLOW_NON_PROD_SNAPSHOT
370
			],
371
			$member
372
		)
373
		) {
374
			return true;
375
		}
376
377
		return (bool) $this->Environments()->filterByCallback(function ($env) use ($member) {
378
			return $env->canUploadArchive($member);
379
		})->Count();
380
	}
381
382
	/**
@@ 386-400 (lines=15) @@
383
	 * @param Member|null $member
384
	 * @return bool
385
	 */
386
	public function canDownloadArchive($member = null) {
387
		if ($this->allowedAny(
388
			[
389
				DNRoot::ALLOW_PROD_SNAPSHOT,
390
				DNRoot::ALLOW_NON_PROD_SNAPSHOT
391
			],
392
			$member
393
		)
394
		) {
395
			return true;
396
		}
397
398
		return (bool) $this->Environments()->filterByCallback(function ($env) use ($member) {
399
			return $env->canDownloadArchive($member);
400
		})->Count();
401
	}
402
403
	/**