Fix DNS validation and error handling
This commit is contained in:
		@@ -243,9 +243,11 @@ class General extends Component
 | 
				
			|||||||
                    return str($domain)->trim()->lower();
 | 
					                    return str($domain)->trim()->lower();
 | 
				
			||||||
                });
 | 
					                });
 | 
				
			||||||
                $domains = $domains->unique();
 | 
					                $domains = $domains->unique();
 | 
				
			||||||
                foreach ($domains as $domain) {
 | 
					                if ($this->application->additional_servers->count() === 0) {
 | 
				
			||||||
                    if (!validate_dns_entry($domain, $this->application->destination->server)) {
 | 
					                    foreach ($domains as $domain) {
 | 
				
			||||||
                        $showToaster && $this->dispatch('error', "Validating DNS ($domain) failed.","Make sure you have added the DNS records correctly.<br><br>Check this <a target='_blank' class='text-white underline' href='https://coolify.io/docs/dns-settings'>documentation</a> for further help.");
 | 
					                        if (!validate_dns_entry($domain, $this->application->destination->server)) {
 | 
				
			||||||
 | 
					                            $showToaster && $this->dispatch('error', "Validating DNS ($domain) failed.","Make sure you have added the DNS records correctly.<br><br>Check this <a target='_blank' class='text-white underline' href='https://coolify.io/docs/dns-settings'>documentation</a> for further help.");
 | 
				
			||||||
 | 
					                        }
 | 
				
			||||||
                    }
 | 
					                    }
 | 
				
			||||||
                }
 | 
					                }
 | 
				
			||||||
                check_fqdn_usage($this->application);
 | 
					                check_fqdn_usage($this->application);
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -104,7 +104,7 @@ function handleError(?Throwable $error = null, ?Livewire\Component $livewire = n
 | 
				
			|||||||
    ray($error);
 | 
					    ray($error);
 | 
				
			||||||
    if ($error instanceof TooManyRequestsException) {
 | 
					    if ($error instanceof TooManyRequestsException) {
 | 
				
			||||||
        if (isset($livewire)) {
 | 
					        if (isset($livewire)) {
 | 
				
			||||||
            return $livewire->dispatch('error', "Too many requests.","Please try again in {$error->secondsUntilAvailable} seconds.");
 | 
					            return $livewire->dispatch('error', "Too many requests.", "Please try again in {$error->secondsUntilAvailable} seconds.");
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
        return "Too many requests. Please try again in {$error->secondsUntilAvailable} seconds.";
 | 
					        return "Too many requests. Please try again in {$error->secondsUntilAvailable} seconds.";
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
@@ -1690,7 +1690,7 @@ function check_fqdn_usage(ServiceApplication|Application $own_resource)
 | 
				
			|||||||
            $naked_domain = str($domain)->replace('http://', '')->replace('https://', '')->value();
 | 
					            $naked_domain = str($domain)->replace('http://', '')->replace('https://', '')->value();
 | 
				
			||||||
            if ($domains->contains($naked_domain)) {
 | 
					            if ($domains->contains($naked_domain)) {
 | 
				
			||||||
                if ($app->uuid !== $own_resource->uuid) {
 | 
					                if ($app->uuid !== $own_resource->uuid) {
 | 
				
			||||||
                    throw new \RuntimeException("Domain $naked_domain is already in use by another resource.");
 | 
					                    throw new \RuntimeException("Domain $naked_domain is already in use by another resource:<br> {$app->name}.");
 | 
				
			||||||
                }
 | 
					                }
 | 
				
			||||||
            }
 | 
					            }
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user