Skip to content

Commit

Permalink
Create the 'ApplicationsReadyToBeDeployed' component.
Browse files Browse the repository at this point in the history
  • Loading branch information
csavelief committed Oct 11, 2024
1 parent 098f3bd commit b20656e
Show file tree
Hide file tree
Showing 4 changed files with 41 additions and 18 deletions.
15 changes: 1 addition & 14 deletions app/Http/Controllers/YnhServerController.php
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@

namespace App\Http\Controllers;

use App\Enums\ProductTypeEnum;
use App\Enums\SshTraceStateEnum;
use App\Events\AddTwrUserPermission;
use App\Events\AddUserPermission;
Expand Down Expand Up @@ -36,7 +35,6 @@
use App\User;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Auth;
use Illuminate\Support\Facades\DB;
use Illuminate\Support\Facades\Log;
use Illuminate\Support\Facades\Storage;
use Illuminate\Support\Str;
Expand All @@ -53,22 +51,11 @@ public function index(YnhServer $server, Request $request)
{
$tab = $request->input('tab', 'settings');
$limit = $request->input('limit', 40);
$orders = collect();

if ($tab === 'applications') {
$orders = YnhOrder::where('product_type', ProductTypeEnum::APPLICATION->value)
->whereNotExists(function ($query) {
$query->select(DB::raw('1'))
->from('ynh_applications')
->whereRaw('ynh_applications.ynh_order_id = ynh_orders.id');
})
->get();
}

return view('home.pages._servers', compact(
'tab',
'limit',
'server',
'orders',
));
}

Expand Down
37 changes: 37 additions & 0 deletions app/View/Components/ApplicationsReadyToBeDeployed.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
<?php

namespace App\View\Components;

use App\Enums\ProductTypeEnum;
use App\Models\YnhOrder;
use App\Models\YnhServer;
use Closure;
use Illuminate\Contracts\View\View;
use Illuminate\Support\Collection;
use Illuminate\Support\Facades\DB;
use Illuminate\View\Component;

class ApplicationsReadyToBeDeployed extends Component
{
public string $defaultThumbnail = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAC8AAAAjCAMAAAAzO6PlAAAAt1BMVEX///+tq6u2tLSXlZW0srKenJ2LiYqzsLGZmJiNi4yqqKmvra2cmpqRj5CmpKSPjY6koqKUk5O4traopqagnp+Ih4exr6/Mycq5t7fOzMy7ubmioKCGhIWTkZLEwsK9u7vCv8DV09PS0NDQzs7Jx8fHxcWBgIF/fX58envX1dXZ19eDgoNwb3C/vb3U0dH7+vt1dHXh4eHe29vb2dl4d3j39/dpaGrx8fHo5+djYmPt7e309PRbW1zggo2RAAAC0UlEQVQ4y22T23qCMBCEA6LWA1qlchIBBaViPdVabe37P1dnN4GU72su9OafnZkNER9FsYs6Y7v11H55dvqDruknaZx72WG53Zbl5Z3O5VJut8vDapWJ12ITzTrjRZNfe8FqWQkUnAWB54lis4tmPc27lh/umV8doICgrOF8vSZ+1unZFW+41pT4PMgyFiia4ThNBY1H/AnzI8Wn69yTAhyaDTqO030SCsJ7DV4V9oIAgkOD9k0RMb/QPBf27pkUAKckTE9NyxXAEV/zvKDtURzfSQBaDqfZVndgiBmNR93WsOaTu6BzDzyKklfDQfcdgfEyfs3HDyHPdempLKE/peHOaC6AN3lkqc9ZFa3xtuDxNe9YlEWfb6/G+87zvP0k+UXFx1fRPMfDPgzVdOAtgTg1Pyo1qDMlqOoafeDDlt3gje9/+NseazeQ5mXYWozBc37e5/wfg3PIe+9zGruj5hM/BO+kzQLXwOc0BpedjGfM0z4p0BwfaPf+dz1p6KvxHIf4vwWcbNA3VsdqN5ck3Jd+V/LUttfk0feR9o3kxvgjT8LgKm6Ja6jtLMDje1CBkGcJrDSMwZmL+gn9v1su7kry4w6+N31jw3b4QGjTMLxbYJkxfK45x+f8TxPwkRJMIEAk54zcHiy6FvW4hxbx3Jf22RMRPxjlQJ09YGd3YN0h3E5NrMcd0HVRoImN9ygdtMDCLd+CB35iX/PSYCI2m91OWti2FMxHF3mzpjnFE2SeDdCgJYqigAQe9bPBtcVXFMVLNnm+MmCBeMWBQj97+o6e3YuFl2+Bl4EqQVucPj4gKMhCvXskwsPBS3PBk0ElIIV4O51OUEgBSksD4mGgBRQJFiPxhqMEqoI2IB4C1YEV4vMTAlhAIBNpgwEaT32fLZTCEF9fULADJdIGzMPA91lRScCzQBtUgVQBPwxDLbHEz48W7CJeEQWSBZhPEkgq0S8ch3VdK2koBAAAAABJRU5ErkJggg==';
public YnhServer $server;
public Collection $orders;

public function __construct(YnhServer $server)
{
$this->server = $server;
$this->orders = YnhOrder::where('product_type', ProductTypeEnum::APPLICATION->value)
->whereNotExists(function ($query) {
$query->select(DB::raw('1'))
->from('ynh_applications')
->whereRaw('ynh_applications.ynh_order_id = ynh_orders.id');
})
->get()
->filter(fn(YnhOrder $order) => $order->isFulfilled());
}

public function render(): View|Closure|string
{
return view('components.applications-ready-to-be-deployed');
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
<div class="card-header">
<h3 class="m-0"><b>{{ __('Applications Ready To Be Deployed') }}</b></h3>
</div>
@if($orders->filter(fn($order) => $order->isFulfilled())->isEmpty())
@if($orders->isEmpty())
<div class="card-body">
<div class="row">
<div class="col">
Expand All @@ -29,8 +29,7 @@
</tr>
</thead>
<tbody>
<?php $defaultThumbnail = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAC8AAAAjCAMAAAAzO6PlAAAAt1BMVEX///+tq6u2tLSXlZW0srKenJ2LiYqzsLGZmJiNi4yqqKmvra2cmpqRj5CmpKSPjY6koqKUk5O4traopqagnp+Ih4exr6/Mycq5t7fOzMy7ubmioKCGhIWTkZLEwsK9u7vCv8DV09PS0NDQzs7Jx8fHxcWBgIF/fX58envX1dXZ19eDgoNwb3C/vb3U0dH7+vt1dHXh4eHe29vb2dl4d3j39/dpaGrx8fHo5+djYmPt7e309PRbW1zggo2RAAAC0UlEQVQ4y22T23qCMBCEA6LWA1qlchIBBaViPdVabe37P1dnN4GU72su9OafnZkNER9FsYs6Y7v11H55dvqDruknaZx72WG53Zbl5Z3O5VJut8vDapWJ12ITzTrjRZNfe8FqWQkUnAWB54lis4tmPc27lh/umV8doICgrOF8vSZ+1unZFW+41pT4PMgyFiia4ThNBY1H/AnzI8Wn69yTAhyaDTqO030SCsJ7DV4V9oIAgkOD9k0RMb/QPBf27pkUAKckTE9NyxXAEV/zvKDtURzfSQBaDqfZVndgiBmNR93WsOaTu6BzDzyKklfDQfcdgfEyfs3HDyHPdempLKE/peHOaC6AN3lkqc9ZFa3xtuDxNe9YlEWfb6/G+87zvP0k+UXFx1fRPMfDPgzVdOAtgTg1Pyo1qDMlqOoafeDDlt3gje9/+NseazeQ5mXYWozBc37e5/wfg3PIe+9zGruj5hM/BO+kzQLXwOc0BpedjGfM0z4p0BwfaPf+dz1p6KvxHIf4vwWcbNA3VsdqN5ck3Jd+V/LUttfk0feR9o3kxvgjT8LgKm6Ja6jtLMDje1CBkGcJrDSMwZmL+gn9v1su7kry4w6+N31jw3b4QGjTMLxbYJkxfK45x+f8TxPwkRJMIEAk54zcHiy6FvW4hxbx3Jf22RMRPxjlQJ09YGd3YN0h3E5NrMcd0HVRoImN9ygdtMDCLd+CB35iX/PSYCI2m91OWti2FMxHF3mzpjnFE2SeDdCgJYqigAQe9bPBtcVXFMVLNnm+MmCBeMWBQj97+o6e3YuFl2+Bl4EqQVucPj4gKMhCvXskwsPBS3PBk0ElIIV4O51OUEgBSksD4mGgBRQJFiPxhqMEqoI2IB4C1YEV4vMTAlhAIBNpgwEaT32fLZTCEF9fULADJdIGzMPA91lRScCzQBtUgVQBPwxDLbHEz48W7CJeEQWSBZhPEkgq0S8ch3VdK2koBAAAAABJRU5ErkJggg=='; ?>
@foreach($orders->filter(fn($order) => $order->isFulfilled() && !$order->isApplicationDeployed()) as $order)
@foreach($orders->filter(fn($order) => !$order->isApplicationDeployed()) as $order)
<tr>
<td class="ps-4" width="25px">
<span class="{{ $order->isFulfilled() ? 'tw-dot-green' : 'tw-dot-red' }}"></span>
Expand Down
2 changes: 1 addition & 1 deletion resources/views/home/pages/_servers.blade.php
Original file line number Diff line number Diff line change
Expand Up @@ -107,7 +107,7 @@
</div>
<div class="row">
<div class="col-12">
@include('home.cards._applications_ready_to_be_deployed', [ 'orders' => $orders ])
<x-applications-ready-to-be-deployed :server="$server"/>
</div>
</div>
@endif
Expand Down

0 comments on commit b20656e

Please sign in to comment.