diff --git a/app/Console/Commands/ChargeServers.php b/app/Console/Commands/ChargeServers.php index 2a5d8a5a..45f18c2b 100644 --- a/app/Console/Commands/ChargeServers.php +++ b/app/Console/Commands/ChargeServers.php @@ -61,6 +61,12 @@ class ChargeServers extends Command // check if server is due to be charged by comparing its last_billed date with the current date and the billing period $newBillingDate = null; switch($billing_period) { + case 'yearly': + $newBillingDate = Carbon::parse($server->last_billed)->addYear(); + break; + case 'half-yearly': + $newBillingDate = Carbon::parse($server->last_billed)->addMonths(6); + break; case 'monthly': $newBillingDate = Carbon::parse($server->last_billed)->addMonth(); break; diff --git a/app/Http/Controllers/Admin/ProductController.php b/app/Http/Controllers/Admin/ProductController.php index 772abc67..9fb51801 100644 --- a/app/Http/Controllers/Admin/ProductController.php +++ b/app/Http/Controllers/Admin/ProductController.php @@ -73,7 +73,7 @@ class ProductController extends Controller "nodes.*" => "required|exists:nodes,id", "eggs.*" => "required|exists:eggs,id", "disabled" => "nullable", - "billing_period" => "required|in:hourly,daily,weekly,monthly", + "billing_period" => "required|in:hourly,daily,weekly,monthly,half-yearly,yearly", ]); $disabled = !is_null($request->input('disabled')); @@ -140,7 +140,7 @@ class ProductController extends Controller "nodes.*" => "required|exists:nodes,id", "eggs.*" => "required|exists:eggs,id", "disabled" => "nullable", - "billing_period" => "required|in:hourly,daily,weekly,monthly", + "billing_period" => "required|in:hourly,daily,weekly,monthly,half-yearly,yearly", ]); $disabled = !is_null($request->input('disabled')); diff --git a/resources/views/admin/products/create.blade.php b/resources/views/admin/products/create.blade.php index 8e0465fc..578fa910 100644 --- a/resources/views/admin/products/create.blade.php +++ b/resources/views/admin/products/create.blade.php @@ -183,6 +183,12 @@ + + @error('billing_period')
diff --git a/resources/views/admin/products/edit.blade.php b/resources/views/admin/products/edit.blade.php index cedbc72c..3401577b 100644 --- a/resources/views/admin/products/edit.blade.php +++ b/resources/views/admin/products/edit.blade.php @@ -190,6 +190,14 @@ @endif> {{__('Monthly')}} + + @error('billing_period')
diff --git a/resources/views/servers/index.blade.php b/resources/views/servers/index.blade.php index e96b46b1..1d0edd65 100644 --- a/resources/views/servers/index.blade.php +++ b/resources/views/servers/index.blade.php @@ -162,6 +162,10 @@
@if($server->product->billing_period == 'monthly') {{ __('per Month') }} + @elseif($server->product->billing_period == 'half-yearly') + {{ __('per 6 Months') }} + @elseif($server->product->billing_period == 'yearly') + {{ __('per Year') }} @elseif($server->product->billing_period == 'weekly') {{ __('per Week') }} @elseif($server->product->billing_period == 'daily')