forked from MapComplete/MapComplete
		
	Fix: fix #2306 by using a cutof of 150m
This commit is contained in:
		
							parent
							
								
									a79e454309
								
							
						
					
					
						commit
						9ab8d99e56
					
				
					 1 changed files with 16 additions and 9 deletions
				
			
		| 
						 | 
				
			
			@ -85,7 +85,7 @@ export class ImageUploadManager {
 | 
			
		|||
            uploadFinished: this.getCounterFor(this._uploadFinished, featureId),
 | 
			
		||||
            retried: this.getCounterFor(this._uploadRetried, featureId),
 | 
			
		||||
            failed: this.getCounterFor(this._uploadFailed, featureId),
 | 
			
		||||
            retrySuccess: this.getCounterFor(this._uploadRetriedSuccess, featureId),
 | 
			
		||||
            retrySuccess: this.getCounterFor(this._uploadRetriedSuccess, featureId)
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -94,7 +94,7 @@ export class ImageUploadManager {
 | 
			
		|||
        if (sizeInBytes > this._uploader.maxFileSizeInMegabytes * 1000000) {
 | 
			
		||||
            const error = Translations.t.image.toBig.Subs({
 | 
			
		||||
                actual_size: Math.floor(sizeInBytes / 1000000) + "MB",
 | 
			
		||||
                max_size: this._uploader.maxFileSizeInMegabytes + "MB",
 | 
			
		||||
                max_size: this._uploader.maxFileSizeInMegabytes + "MB"
 | 
			
		||||
            })
 | 
			
		||||
            return { error }
 | 
			
		||||
        }
 | 
			
		||||
| 
						 | 
				
			
			@ -144,7 +144,7 @@ export class ImageUploadManager {
 | 
			
		|||
            properties,
 | 
			
		||||
            {
 | 
			
		||||
                theme: tags?.data?.["_orig_theme"] ?? this._theme.id,
 | 
			
		||||
                changeType: "add-image",
 | 
			
		||||
                changeType: "add-image"
 | 
			
		||||
            }
 | 
			
		||||
        )
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -168,15 +168,22 @@ export class ImageUploadManager {
 | 
			
		|||
        if (this._gps.data && !ignoreGps) {
 | 
			
		||||
            location = [this._gps.data.longitude, this._gps.data.latitude]
 | 
			
		||||
        }
 | 
			
		||||
        if (location === undefined || location?.some((l) => l === undefined)) {
 | 
			
		||||
        {
 | 
			
		||||
            feature ??= this._indexedFeatures.featuresById.data.get(featureId)
 | 
			
		||||
            if(feature === undefined){
 | 
			
		||||
            if (feature === undefined) {
 | 
			
		||||
                throw "ImageUploadManager: no feature given and no feature found in the indexedFeature. Cannot upload this image"
 | 
			
		||||
            }
 | 
			
		||||
            location = GeoOperations.centerpointCoordinates(feature)
 | 
			
		||||
            const featureCenterpoint = GeoOperations.centerpointCoordinates(feature)
 | 
			
		||||
            if (location === undefined || location?.some((l) => l === undefined) ||
 | 
			
		||||
                GeoOperations.distanceBetween(location, featureCenterpoint) > 150) {
 | 
			
		||||
                /* GPS location is either unknown or very far away from the photographed location.
 | 
			
		||||
                * Default to the centerpoint
 | 
			
		||||
                */
 | 
			
		||||
                location = featureCenterpoint
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
        try {
 | 
			
		||||
            ;({ key, value, absoluteUrl } = await this._uploader.uploadImage(
 | 
			
		||||
            ({ key, value, absoluteUrl } = await this._uploader.uploadImage(
 | 
			
		||||
                blob,
 | 
			
		||||
                location,
 | 
			
		||||
                author,
 | 
			
		||||
| 
						 | 
				
			
			@ -186,7 +193,7 @@ export class ImageUploadManager {
 | 
			
		|||
            this.increaseCountFor(this._uploadRetried, featureId)
 | 
			
		||||
            console.error("Could not upload image, trying again:", e)
 | 
			
		||||
            try {
 | 
			
		||||
                ;({ key, value, absoluteUrl } = await this._uploader.uploadImage(
 | 
			
		||||
                ({ key, value, absoluteUrl } = await this._uploader.uploadImage(
 | 
			
		||||
                    blob,
 | 
			
		||||
                    location,
 | 
			
		||||
                    author,
 | 
			
		||||
| 
						 | 
				
			
			@ -202,7 +209,7 @@ export class ImageUploadManager {
 | 
			
		|||
                        ctx: "While uploading an image in the Image Upload Manager",
 | 
			
		||||
                        featureId,
 | 
			
		||||
                        author,
 | 
			
		||||
                        targetKey,
 | 
			
		||||
                        targetKey
 | 
			
		||||
                    })
 | 
			
		||||
                )
 | 
			
		||||
                return undefined
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue