DNEnvironment::canUploadArchive PHP Method

canUploadArchive() public method

Note: This is not uploading them to the actual environment itself (e.g. uploading to the live site) - it is the process of uploading a *.sspak file into Deploynaut for later 'restoring' to an environment. See {@link self::canRestore()}.
public canUploadArchive ( Member | null $member = null ) : boolean
$member Member | null The {@link Member} object to test against. If null, uses Member::currentMember();
return boolean true if $member can upload archives linked to this environment, false if they can't.
    public function canUploadArchive($member = null)
    {
        $project = $this->Project();
        if ($project->HasDiskQuota() && $project->HasExceededDiskQuota()) {
            return false;
        }
        if (!$member) {
            $member = Member::currentUser();
        }
        if (!$member) {
            return false;
        }
        // Must be logged in to check permissions
        if ($this->Usage === self::PRODUCTION || $this->Usage === self::UNSPECIFIED) {
            if ($this->Project()->allowed(DNRoot::ALLOW_PROD_SNAPSHOT, $member)) {
                return true;
            }
        } else {
            if ($this->Project()->allowed(DNRoot::ALLOW_NON_PROD_SNAPSHOT, $member)) {
                return true;
            }
        }
        return $this->ArchiveUploaders()->byID($member->ID) || $member->inGroups($this->ArchiveUploaderGroups());
    }