108 lines
		
	
	
		
			6.2 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
			
		
		
	
	
			108 lines
		
	
	
		
			6.2 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
| <form>
 | |
|     <x-slot:title>
 | |
|         {{ data_get_str($project, 'name')->limit(10) }} > Clone | Coolify
 | |
|     </x-slot>
 | |
|     <div class="flex flex-col">
 | |
|         <h1>Clone</h1>
 | |
|         <div class="subtitle ">Quickly clone all resources to a new project or environment.</div>
 | |
|     </div>
 | |
|     <x-forms.input required id="newName" label="New Name" />
 | |
|     <h3 class="pt-8 ">Destination Server</h3>
 | |
|     <div class="pb-2">Choose the server and network to clone the resources to.</div>
 | |
|     <div class="flex flex-col">
 | |
|         <div class="flex flex-col">
 | |
|             <div class="overflow-x-auto">
 | |
|                 <div class="inline-block min-w-full">
 | |
|                     <div class="overflow-hidden">
 | |
|                         <table class="min-w-full">
 | |
|                             <thead>
 | |
|                                 <tr>
 | |
|                                     <th class="px-5 py-3 text-xs font-medium text-left uppercase">Server</th>
 | |
|                                     <th class="px-5 py-3 text-xs font-medium text-left uppercase">Network</th>
 | |
|                                 </tr>
 | |
|                             </thead>
 | |
|                             <tbody>
 | |
|                                 @foreach ($servers->sortBy('id') as $server)
 | |
|                                     @foreach ($server->destinations() as $destination)
 | |
|                                         <tr class="cursor-pointer hover:bg-coolgray-50 dark:hover:bg-coolgray-200"
 | |
|                                             wire:click="selectServer('{{ $server->id }}', '{{ $destination->id }}')">
 | |
|                                             <td class="px-5 py-4 text-sm whitespace-nowrap dark:text-white"
 | |
|                                                 :class="'{{ $selectedDestination === $destination->id }}' ?
 | |
|                                                 'bg-coollabs text-white' : 'dark:bg-coolgray-100 bg-white'">
 | |
|                                                 {{ $server->name }}</td>
 | |
|                                             <td class="px-5 py-4 text-sm whitespace-nowrap dark:text-white "
 | |
|                                                 :class="'{{ $selectedDestination === $destination->id }}' ?
 | |
|                                                 'bg-coollabs text-white' : 'dark:bg-coolgray-100 bg-white'">
 | |
|                                                 {{ $destination->name }}
 | |
|                                             </td>
 | |
|                                         </tr>
 | |
|                                     @endforeach
 | |
|                                 @endforeach
 | |
|                             </tbody>
 | |
|                         </table>
 | |
|                     </div>
 | |
|                 </div>
 | |
|             </div>
 | |
|         </div>
 | |
|     </div>
 | |
| 
 | |
|     <h3 class="pt-8">Resources</h3>
 | |
|     <div class="pb-2">These will be cloned to the new project</div>
 | |
|     <div class="flex flex-col pt-4">
 | |
|         <div class="flex flex-col">
 | |
|             <div class="overflow-x-auto">
 | |
|                 <div class="inline-block min-w-full">
 | |
|                     <div class="overflow-hidden">
 | |
|                         <table class="min-w-full">
 | |
|                             <thead>
 | |
|                                 <tr>
 | |
|                                     <th class="px-5 py-3 text-xs font-medium text-left uppercase">Name</th>
 | |
|                                     <th class="px-5 py-3 text-xs font-medium text-left uppercase">Type</th>
 | |
|                                     <th class="px-5 py-3 text-xs font-medium text-left uppercase">Description</th>
 | |
|                                 </tr>
 | |
|                             </thead>
 | |
|                             <tbody>
 | |
|                                 @foreach ($environment->applications->sortBy('name') as $application)
 | |
|                                     <tr>
 | |
|                                         <td class="px-5 py-4 text-sm whitespace-nowrap font-bold dark:text-white">
 | |
|                                             {{ $application->name }}</td>
 | |
|                                         <td class="px-5 py-4 text-sm whitespace-nowrap dark:text-white">Application</td>
 | |
|                                         <td class="px-5 py-4 text-sm dark:text-white">
 | |
|                                             {{ $application->description ?: '-' }}</td>
 | |
|                                     </tr>
 | |
|                                 @endforeach
 | |
|                                 @foreach ($environment->databases()->sortBy('name') as $database)
 | |
|                                     <tr>
 | |
|                                         <td class="px-5 py-4 text-sm whitespace-nowrap font-bold dark:text-white">
 | |
|                                             {{ $database->name }}
 | |
|                                         </td>
 | |
|                                         <td class="px-5 py-4 text-sm whitespace-nowrap dark:text-white">Database</td>
 | |
|                                         <td class="px-5 py-4 text-sm dark:text-white">
 | |
|                                             {{ $database->description ?: '-' }}</td>
 | |
|                                     </tr>
 | |
|                                 @endforeach
 | |
|                                 @foreach ($environment->services->sortBy('name') as $service)
 | |
|                                     <tr>
 | |
|                                         <td class="px-5 py-4 text-sm whitespace-nowrap font-bold dark:text-white">
 | |
|                                             {{ $service->name }}
 | |
|                                         </td>
 | |
|                                         <td class="px-5 py-4 text-sm whitespace-nowrap dark:text-white">Service</td>
 | |
|                                         <td class="px-5 py-4 text-sm dark:text-white">
 | |
|                                             {{ $service->description ?: '-' }}</td>
 | |
|                                     </tr>
 | |
|                                 @endforeach
 | |
|                             </tbody>
 | |
|                         </table>
 | |
|                     </div>
 | |
|                 </div>
 | |
|             </div>
 | |
|         </div>
 | |
|     </div>
 | |
|     <div class="flex gap-4 pt-4 w-full">
 | |
|         <x-forms.button isHighlighted class="w-full" wire:click="clone('project')" :disabled="!filled($selectedDestination)">Clone to new
 | |
|             Project</x-forms.button>
 | |
|         <x-forms.button isHighlighted class="w-full" wire:click="clone('environment')" :disabled="!filled($selectedDestination)">Clone to new
 | |
|             Environment</x-forms.button>
 | |
|     </div>
 | |
| </form>
 | 
