Merge branch addons/billing_period into V0.10

This commit is contained in:
IceToast 2023-01-21 15:04:12 +01:00
parent 8c78a00f2a
commit 5fd58514b5
45 changed files with 1160 additions and 431 deletions

View file

@ -0,0 +1,139 @@
<?php
namespace App\Console\Commands;
use App\Models\Server;
use App\Notifications\ServersSuspendedNotification;
use Carbon\Carbon;
use Illuminate\Console\Command;
use Illuminate\Support\Facades\DB;
class ChargeServers extends Command
{
/**
* The name and signature of the console command.
*
* @var string
*/
protected $signature = 'servers:charge';
/**
* The console command description.
*
* @var string
*/
protected $description = 'Charge all users with severs that are due to be charged';
/**
* A list of users that have to be notified
* @var array
*/
protected $usersToNotify = [];
/**
* Create a new command instance.
*
* @return void
*/
public function __construct()
{
parent::__construct();
}
/**
* Execute the console command.
*
* @return int
*/
public function handle()
{
Server::whereNull('suspended')->with('user', 'product')->chunk(10, function ($servers) {
/** @var Server $server */
foreach ($servers as $server) {
/** @var Product $product */
$product = $server->product;
/** @var User $user */
$user = $server->user;
$billing_period = $product->billing_period;
// 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 'annually':
$newBillingDate = Carbon::parse($server->last_billed)->addYear();
break;
case 'half-annually':
$newBillingDate = Carbon::parse($server->last_billed)->addMonths(6);
break;
case 'quarterly':
$newBillingDate = Carbon::parse($server->last_billed)->addMonths(3);
break;
case 'monthly':
$newBillingDate = Carbon::parse($server->last_billed)->addMonth();
break;
case 'weekly':
$newBillingDate = Carbon::parse($server->last_billed)->addWeek();
break;
case 'daily':
$newBillingDate = Carbon::parse($server->last_billed)->addDay();
break;
case 'hourly':
$newBillingDate = Carbon::parse($server->last_billed)->addHour();
default:
$newBillingDate = Carbon::parse($server->last_billed)->addHour();
break;
};
if (!($newBillingDate->isPast())) {
continue;
}
// check if the server is canceled or if user has enough credits to charge the server or
if ( $server->cancelled || $user->credits <= $product->price) {
try {
// suspend server
$this->line("<fg=yellow>{$server->name}</> from user: <fg=blue>{$user->name}</> has been <fg=red>suspended!</>");
$server->suspend();
// add user to notify list
if (!in_array($user, $this->usersToNotify)) {
array_push($this->usersToNotify, $user);
}
} catch (\Exception $exception) {
$this->error($exception->getMessage());
}
return;
}
// charge credits to user
$this->line("<fg=blue>{$user->name}</> Current credits: <fg=green>{$user->credits}</> Credits to be removed: <fg=red>{$product->price}</>");
$user->decrement('credits', $product->price);
// update server last_billed date in db
DB::table('servers')->where('id', $server->id)->update(['last_billed' => $newBillingDate]);
}
return $this->notifyUsers();
});
}
/**
* @return bool
*/
public function notifyUsers()
{
if (!empty($this->usersToNotify)) {
/** @var User $user */
foreach ($this->usersToNotify as $user) {
$this->line("<fg=yellow>Notified user:</> <fg=blue>{$user->name}</>");
$user->notify(new ServersSuspendedNotification());
}
}
#reset array
$this->usersToNotify = array();
return true;
}
}

View file

@ -8,6 +8,16 @@ use Illuminate\Support\Facades\Storage;
class Kernel extends ConsoleKernel
{
/**
* The Artisan commands provided by your application.
*
* @var array
*/
protected $commands = [
Commands\ChargeCreditsCommand::class,
Commands\ChargeServers::class,
];
/**
* Define the application's command schedule.
*
@ -16,12 +26,12 @@ class Kernel extends ConsoleKernel
*/
protected function schedule(Schedule $schedule)
{
$schedule->command('credits:charge')->hourly();
$schedule->command('servers:charge')->everyMinute();
$schedule->command('cp:versioncheck:get')->daily();
//log cronjob activity
$schedule->call(function () {
Storage::disk('logs')->put('cron.log', 'Last activity from cronjobs - '.now());
Storage::disk('logs')->put('cron.log', 'Last activity from cronjobs - ' . now());
})->everyMinute();
}
@ -32,7 +42,7 @@ class Kernel extends ConsoleKernel
*/
protected function commands()
{
$this->load(__DIR__.'/Commands');
$this->load(__DIR__ . '/Commands');
require base_path('routes/console.php');
}

View file

@ -57,24 +57,25 @@ class ProductController extends Controller
public function store(Request $request)
{
$request->validate([
'name' => 'required|max:30',
'price' => 'required|numeric|max:1000000|min:0',
'memory' => 'required|numeric|max:1000000|min:5',
'cpu' => 'required|numeric|max:1000000|min:0',
'swap' => 'required|numeric|max:1000000|min:0',
'description' => 'required|string|max:191',
'disk' => 'required|numeric|max:1000000|min:5',
'minimum_credits' => 'required|numeric|max:1000000|min:-1',
'io' => 'required|numeric|max:1000000|min:0',
'databases' => 'required|numeric|max:1000000|min:0',
'backups' => 'required|numeric|max:1000000|min:0',
'allocations' => 'required|numeric|max:1000000|min:0',
'nodes.*' => 'required|exists:nodes,id',
'eggs.*' => 'required|exists:eggs,id',
'disabled' => 'nullable',
"name" => "required|max:30",
"price" => "required|numeric|max:1000000|min:0",
"memory" => "required|numeric|max:1000000|min:5",
"cpu" => "required|numeric|max:1000000|min:0",
"swap" => "required|numeric|max:1000000|min:0",
"description" => "required|string|max:191",
"disk" => "required|numeric|max:1000000|min:5",
"minimum_credits" => "required|numeric|max:1000000|min:-1",
"io" => "required|numeric|max:1000000|min:0",
"databases" => "required|numeric|max:1000000|min:0",
"backups" => "required|numeric|max:1000000|min:0",
"allocations" => "required|numeric|max:1000000|min:0",
"nodes.*" => "required|exists:nodes,id",
"eggs.*" => "required|exists:eggs,id",
"disabled" => "nullable",
"billing_period" => "required|in:hourly,daily,weekly,monthly,quarterly,half-annually,annually",
]);
$disabled = ! is_null($request->input('disabled'));
$disabled = !is_null($request->input('disabled'));
$product = Product::create(array_merge($request->all(), ['disabled' => $disabled]));
//link nodes and eggs
@ -123,24 +124,25 @@ class ProductController extends Controller
public function update(Request $request, Product $product): RedirectResponse
{
$request->validate([
'name' => 'required|max:30',
'price' => 'required|numeric|max:1000000|min:0',
'memory' => 'required|numeric|max:1000000|min:5',
'cpu' => 'required|numeric|max:1000000|min:0',
'swap' => 'required|numeric|max:1000000|min:0',
'description' => 'required|string|max:191',
'disk' => 'required|numeric|max:1000000|min:5',
'io' => 'required|numeric|max:1000000|min:0',
'minimum_credits' => 'required|numeric|max:1000000|min:-1',
'databases' => 'required|numeric|max:1000000|min:0',
'backups' => 'required|numeric|max:1000000|min:0',
'allocations' => 'required|numeric|max:1000000|min:0',
'nodes.*' => 'required|exists:nodes,id',
'eggs.*' => 'required|exists:eggs,id',
'disabled' => 'nullable',
"name" => "required|max:30",
"price" => "required|numeric|max:1000000|min:0",
"memory" => "required|numeric|max:1000000|min:5",
"cpu" => "required|numeric|max:1000000|min:0",
"swap" => "required|numeric|max:1000000|min:0",
"description" => "required|string|max:191",
"disk" => "required|numeric|max:1000000|min:5",
"io" => "required|numeric|max:1000000|min:0",
"minimum_credits" => "required|numeric|max:1000000|min:-1",
"databases" => "required|numeric|max:1000000|min:0",
"backups" => "required|numeric|max:1000000|min:0",
"allocations" => "required|numeric|max:1000000|min:0",
"nodes.*" => "required|exists:nodes,id",
"eggs.*" => "required|exists:eggs,id",
"disabled" => "nullable",
"billing_period" => "required|in:hourly,daily,weekly,monthly,quarterly,half-annually,annually",
]);
$disabled = ! is_null($request->input('disabled'));
$disabled = !is_null($request->input('disabled'));
$product->update(array_merge($request->all(), ['disabled' => $disabled]));
//link nodes and eggs
@ -159,7 +161,7 @@ class ProductController extends Controller
*/
public function disable(Request $request, Product $product)
{
$product->update(['disabled' => ! $product->disabled]);
$product->update(['disabled' => !$product->disabled]);
return redirect()->route('admin.products.index')->with('success', 'Product has been updated!');
}
@ -194,14 +196,14 @@ class ProductController extends Controller
return datatables($query)
->addColumn('actions', function (Product $product) {
return '
<a data-content="'.__('Show').'" data-toggle="popover" data-trigger="hover" data-placement="top" href="'.route('admin.products.show', $product->id).'" class="btn btn-sm text-white btn-warning mr-1"><i class="fas fa-eye"></i></a>
<a data-content="'.__('Clone').'" data-toggle="popover" data-trigger="hover" data-placement="top" href="'.route('admin.products.clone', $product->id).'" class="btn btn-sm text-white btn-primary mr-1"><i class="fas fa-clone"></i></a>
<a data-content="'.__('Edit').'" data-toggle="popover" data-trigger="hover" data-placement="top" href="'.route('admin.products.edit', $product->id).'" class="btn btn-sm btn-info mr-1"><i class="fas fa-pen"></i></a>
<a data-content="' . __('Show') . '" data-toggle="popover" data-trigger="hover" data-placement="top" href="' . route('admin.products.show', $product->id) . '" class="btn btn-sm text-white btn-warning mr-1"><i class="fas fa-eye"></i></a>
<a data-content="' . __('Clone') . '" data-toggle="popover" data-trigger="hover" data-placement="top" href="' . route('admin.products.clone', $product->id) . '" class="btn btn-sm text-white btn-primary mr-1"><i class="fas fa-clone"></i></a>
<a data-content="' . __('Edit') . '" data-toggle="popover" data-trigger="hover" data-placement="top" href="' . route('admin.products.edit', $product->id) . '" class="btn btn-sm btn-info mr-1"><i class="fas fa-pen"></i></a>
<form class="d-inline" onsubmit="return submitResult();" method="post" action="'.route('admin.products.destroy', $product->id).'">
'.csrf_field().'
'.method_field('DELETE').'
<button data-content="'.__('Delete').'" data-toggle="popover" data-trigger="hover" data-placement="top" class="btn btn-sm btn-danger mr-1"><i class="fas fa-trash"></i></button>
<form class="d-inline" onsubmit="return submitResult();" method="post" action="' . route('admin.products.destroy', $product->id) . '">
' . csrf_field() . '
' . method_field('DELETE') . '
<button data-content="' . __('Delete') . '" data-toggle="popover" data-trigger="hover" data-placement="top" class="btn btn-sm btn-danger mr-1"><i class="fas fa-trash"></i></button>
</form>
';
})
@ -219,18 +221,18 @@ class ProductController extends Controller
$checked = $product->disabled == false ? 'checked' : '';
return '
<form class="d-inline" onsubmit="return submitResult();" method="post" action="'.route('admin.products.disable', $product->id).'">
'.csrf_field().'
'.method_field('PATCH').'
<form class="d-inline" onsubmit="return submitResult();" method="post" action="' . route('admin.products.disable', $product->id) . '">
' . csrf_field() . '
' . method_field('PATCH') . '
<div class="custom-control custom-switch">
<input '.$checked.' name="disabled" onchange="this.form.submit()" type="checkbox" class="custom-control-input" id="switch'.$product->id.'">
<label class="custom-control-label" for="switch'.$product->id.'"></label>
<input ' . $checked . ' name="disabled" onchange="this.form.submit()" type="checkbox" class="custom-control-input" id="switch' . $product->id . '">
<label class="custom-control-label" for="switch' . $product->id . '"></label>
</div>
</form>
';
})
->editColumn('minimum_credits', function (Product $product) {
return $product->minimum_credits==-1 ? config('SETTINGS::USER:MINIMUM_REQUIRED_CREDITS_TO_MAKE_SERVER') : $product->minimum_credits;
return $product->minimum_credits == -1 ? config('SETTINGS::USER:MINIMUM_REQUIRED_CREDITS_TO_MAKE_SERVER') : $product->minimum_credits;
})
->editColumn('created_at', function (Product $product) {
return $product->created_at ? $product->created_at->diffForHumans() : '';

View file

@ -133,7 +133,25 @@ class ServerController extends Controller
}
/**
* @param Server $server
* Cancel the Server billing cycle.
*
* @param Server $server
* @return RedirectResponse|Response
*/
public function cancel(Server $server)
{
try {
error_log($server->update([
'cancelled' => now(),
]));
return redirect()->route('servers.index')->with('success', __('Server cancelled'));
} catch (Exception $e) {
return redirect()->route('servers.index')->with('error', __('An exception has occurred while trying to cancel the server"') . $e->getMessage() . '"');
}
}
/**
* @param Server $server
* @return RedirectResponse
*/
public function toggleSuspended(Server $server)

View file

@ -97,7 +97,7 @@ class HomeController extends Controller
/** Build our Time-Left-Box */
if ($credits > 0.01 and $usage > 0) {
$daysLeft = number_format(($credits * 30) / $usage, 2, '.', '');
$daysLeft = number_format($credits / ($usage / 30), 2, '.', '');
$hoursLeft = number_format($credits / ($usage / 30 / 24), 2, '.', '');
$bg = $this->getTimeLeftBoxBackground($daysLeft);

View file

@ -10,6 +10,7 @@ use App\Models\Node;
use App\Models\Product;
use App\Models\Server;
use App\Notifications\ServerCreationError;
use Carbon\Carbon;
use Exception;
use Illuminate\Database\Eloquent\Builder;
use Illuminate\Http\Client\Response;
@ -30,7 +31,7 @@ class ServerController extends Controller
//Get server infos from ptero
$serverAttributes = Pterodactyl::getServerAttributes($server->pterodactyl_id, true);
if (! $serverAttributes) {
if (!$serverAttributes) {
continue;
}
$serverRelationships = $serverAttributes['relationships'];
@ -67,7 +68,7 @@ class ServerController extends Controller
/** Show the form for creating a new resource. */
public function create()
{
if (! is_null($this->validateConfigurationRules())) {
if (!is_null($this->validateConfigurationRules())) {
return $this->validateConfigurationRules();
}
@ -122,33 +123,31 @@ class ServerController extends Controller
// Check if node has enough memory and disk space
$checkResponse = Pterodactyl::checkNodeResources($node, $product->memory, $product->disk);
if ($checkResponse == false) {
return redirect()->route('servers.index')->with('error', __("The node '".$nodeName."' doesn't have the required memory or disk left to allocate this product."));
return redirect()->route('servers.index')->with('error', __("The node '" . $nodeName . "' doesn't have the required memory or disk left to allocate this product."));
}
// Min. Credits
if (
Auth::user()->credits <
($product->minimum_credits == -1
? config('SETTINGS::USER:MINIMUM_REQUIRED_CREDITS_TO_MAKE_SERVER', 50)
: $product->minimum_credits)
Auth::user()->credits < $product->minimum_credits ||
Auth::user()->credits < $product->price
) {
return redirect()->route('servers.index')->with('error', 'You do not have the required amount of '.CREDITS_DISPLAY_NAME.' to use this product!');
return redirect()->route('servers.index')->with('error', 'You do not have the required amount of ' . CREDITS_DISPLAY_NAME . ' to use this product!');
}
}
//Required Verification for creating an server
if (config('SETTINGS::USER:FORCE_EMAIL_VERIFICATION', 'false') === 'true' && ! Auth::user()->hasVerifiedEmail()) {
if (config('SETTINGS::USER:FORCE_EMAIL_VERIFICATION', 'false') === 'true' && !Auth::user()->hasVerifiedEmail()) {
return redirect()->route('profile.index')->with('error', __('You are required to verify your email address before you can create a server.'));
}
//Required Verification for creating an server
if (! config('SETTINGS::SYSTEM:CREATION_OF_NEW_SERVERS', 'true') && Auth::user()->role != 'admin') {
if (!config('SETTINGS::SYSTEM:CREATION_OF_NEW_SERVERS', 'true') && Auth::user()->role != 'admin') {
return redirect()->route('servers.index')->with('error', __('The system administrator has blocked the creation of new servers.'));
}
//Required Verification for creating an server
if (config('SETTINGS::USER:FORCE_DISCORD_VERIFICATION', 'false') === 'true' && ! Auth::user()->discordUser) {
if (config('SETTINGS::USER:FORCE_DISCORD_VERIFICATION', 'false') === 'true' && !Auth::user()->discordUser) {
return redirect()->route('profile.index')->with('error', __('You are required to link your discord account before you can create a server.'));
}
@ -161,7 +160,7 @@ class ServerController extends Controller
/** @var Node $node */
/** @var Egg $egg */
/** @var Product $product */
if (! is_null($this->validateConfigurationRules())) {
if (!is_null($this->validateConfigurationRules())) {
return $this->validateConfigurationRules();
}
@ -180,11 +179,12 @@ class ServerController extends Controller
$server = $request->user()->servers()->create([
'name' => $request->input('name'),
'product_id' => $request->input('product'),
'last_billed' => Carbon::now()->toDateTimeString(),
]);
//get free allocation ID
$allocationId = Pterodactyl::getFreeAllocationId($node);
if (! $allocationId) {
if (!$allocationId) {
return $this->noAllocationsError($server);
}
@ -198,14 +198,11 @@ class ServerController extends Controller
//update server with pterodactyl_id
$server->update([
'pterodactyl_id' => $serverAttributes['id'],
'identifier' => $serverAttributes['identifier'],
'identifier' => $serverAttributes['identifier'],
]);
if (config('SETTINGS::SYSTEM:SERVER_CREATE_CHARGE_FIRST_HOUR', 'true') == 'true') {
if ($request->user()->credits >= $server->product->getHourlyPrice()) {
$request->user()->decrement('credits', $server->product->getHourlyPrice());
}
}
// Charge first billing cycle
$request->user()->decrement('credits', $server->product->price);
return redirect()->route('servers.index')->with('success', __('Server created'));
}
@ -234,8 +231,6 @@ class ServerController extends Controller
*/
private function serverCreationFailed(Response $response, Server $server)
{
$server->delete();
return redirect()->route('servers.index')->with('error', json_encode($response->json()));
}
@ -247,7 +242,21 @@ class ServerController extends Controller
return redirect()->route('servers.index')->with('success', __('Server removed'));
} catch (Exception $e) {
return redirect()->route('servers.index')->with('error', __('An exception has occurred while trying to remove a resource "').$e->getMessage().'"');
return redirect()->route('servers.index')->with('error', __('An exception has occurred while trying to remove a resource"') . $e->getMessage() . '"');
}
}
/** Cancel Server */
public function cancel(Server $server)
{
try {
error_log($server->update([
'cancelled' => now(),
]));
return redirect()->route('servers.index')->with('success', __('Server cancelled'));
} catch (Exception $e) {
return redirect()->route('servers.index')->with('error', __('An exception has occurred while trying to cancel the server"') . $e->getMessage() . '"');
}
}
@ -255,7 +264,7 @@ class ServerController extends Controller
public function show(Server $server)
{
if ($server->user_id != Auth::user()->id) {
return back()->with('error', __('´This is not your Server!'));
return back()->with('error', __('This is not your Server!'));
}
$serverAttributes = Pterodactyl::getServerAttributes($server->pterodactyl_id);
$serverRelationships = $serverAttributes['relationships'];
@ -276,10 +285,10 @@ class ServerController extends Controller
$pteroNode = Pterodactyl::getNode($serverRelationships['node']['attributes']['id']);
$products = Product::orderBy('created_at')
->whereHas('nodes', function (Builder $builder) use ($serverRelationships) { //Only show products for that node
$builder->where('id', '=', $serverRelationships['node']['attributes']['id']);
})
->get();
->whereHas('nodes', function (Builder $builder) use ($serverRelationships) { //Only show products for that node
$builder->where('id', '=', $serverRelationships['node']['attributes']['id']);
})
->get();
// Set the each product eggs array to just contain the eggs name
foreach ($products as $product) {
@ -297,10 +306,8 @@ class ServerController extends Controller
public function upgrade(Server $server, Request $request)
{
if ($server->user_id != Auth::user()->id) {
return redirect()->route('servers.index');
}
if (! isset($request->product_upgrade)) {
if ($server->user_id != Auth::user()->id || $server->suspended) return redirect()->route('servers.index');
if (!isset($request->product_upgrade)) {
return redirect()->route('servers.show', ['server' => $server->id])->with('error', __('this product is the only one'));
}
$user = Auth::user();
@ -319,30 +326,56 @@ class ServerController extends Controller
$requiredisk = $newProduct->disk - $oldProduct->disk;
$checkResponse = Pterodactyl::checkNodeResources($node, $requireMemory, $requiredisk);
if ($checkResponse == false) {
return redirect()->route('servers.index')->with('error', __("The node '".$nodeName."' doesn't have the required memory or disk left to upgrade the server."));
return redirect()->route('servers.index')->with('error', __("The node '" . $nodeName . "' doesn't have the required memory or disk left to upgrade the server."));
}
$priceupgrade = $newProduct->getHourlyPrice();
// calculate the amount of credits that the user overpayed for the old product when canceling the server right now
// billing periods are hourly, daily, weekly, monthly, quarterly, half-annually, annually
$billingPeriod = $oldProduct->billing_period;
// seconds
$billingPeriods = [
'hourly' => 3600,
'daily' => 86400,
'weekly' => 604800,
'monthly' => 2592000,
'quarterly' => 7776000,
'half-annually' => 15552000,
'annually' => 31104000
];
// Get the amount of hours the user has been using the server
$billingPeriodMultiplier = $billingPeriods[$billingPeriod];
$timeDifference = now()->diffInSeconds($server->last_billed);
if ($priceupgrade < $oldProduct->getHourlyPrice()) {
$priceupgrade = 0;
}
if ($user->credits >= $priceupgrade && $user->credits >= $newProduct->minimum_credits) {
$server->product_id = $request->product_upgrade;
$server->update();
error_log("Time DIFFERENCE!!!! ", $timeDifference);
// Calculate the price for the time the user has been using the server
$overpayedCredits = $oldProduct->price - $oldProduct->price * ($timeDifference / $billingPeriodMultiplier);
if ($user->credits >= $newProduct->price && $user->credits >= $newProduct->minimum_credits) {
$server->allocation = $serverAttributes['allocation'];
// Update the server on the panel
$response = Pterodactyl::updateServer($server, $newProduct);
if ($response->failed()) {
return $this->serverCreationFailed($response, $server);
}
//update user balance
$user->decrement('credits', $priceupgrade);
//restart the server
$response = Pterodactyl::powerAction($server, 'restart');
if ($response->failed()) {
return redirect()->route('servers.index')->with('error', $response->json()['errors'][0]['detail']);
}
if ($response->failed()) return $this->serverCreationFailed($response, $server);
// Remove the allocation property from the server object as it is not a column in the database
unset($server->allocation);
// Update the server on controlpanel
$server->update([
'product_id' => $newProduct->id,
'updated_at' => now(),
'last_billed' => now(),
'cancelled' => null,
]);
// Refund the user the overpayed credits
if ($overpayedCredits > 0) $user->increment('credits', $overpayedCredits);
// Withdraw the credits for the new product
$user->decrement('credits', $newProduct->price);
//restart the server
$response = Pterodactyl::powerAction($server, "restart");
if ($response->failed()) return redirect()->route('servers.index')->with('error', 'Server upgraded successfully! Could not restart the server: ' . $response->json()['errors'][0]['detail']);
return redirect()->route('servers.show', ['server' => $server->id])->with('success', __('Server Successfully Upgraded'));
} else {
return redirect()->route('servers.show', ['server' => $server->id])->with('error', __('Not Enough Balance for Upgrade'));

View file

@ -43,7 +43,23 @@ class Product extends Model
public function getHourlyPrice()
{
return ($this->price / 30) / 24;
// calculate the hourly price with the billing period
switch($this->billing_period) {
case 'daily':
return $this->price / 24;
case 'weekly':
return $this->price / 24 / 7;
case 'monthly':
return $this->price / 24 / 30;
case 'quarterly':
return $this->price / 24 / 30 / 3;
case 'half-annually':
return $this->price / 24 / 30 / 6;
case 'annually':
return $this->price / 24 / 365;
default:
return $this->price;
}
}
public function getDailyPrice()

View file

@ -3,6 +3,7 @@
namespace App\Models;
use App\Classes\Pterodactyl;
use Carbon\Carbon;
use Exception;
use GuzzleHttp\Promise\PromiseInterface;
use Hidehalo\Nanoid\Client;
@ -24,9 +25,9 @@ class Server extends Model
public function getActivitylogOptions(): LogOptions
{
return LogOptions::defaults()
-> logOnlyDirty()
-> logOnly(['*'])
-> dontSubmitEmptyLogs();
->logOnlyDirty()
->logOnly(['*'])
->dontSubmitEmptyLogs();
}
/**
* @var bool
@ -47,12 +48,14 @@ class Server extends Model
* @var string[]
*/
protected $fillable = [
'name',
'description',
'suspended',
'identifier',
'product_id',
'pterodactyl_id',
"name",
"description",
"suspended",
"identifier",
"product_id",
"pterodactyl_id",
"last_billed",
"cancelled"
];
/**
@ -74,7 +77,7 @@ class Server extends Model
static::deleting(function (Server $server) {
$response = Pterodactyl::client()->delete("/application/servers/{$server->pterodactyl_id}");
if ($response->failed() && ! is_null($server->pterodactyl_id)) {
if ($response->failed() && !is_null($server->pterodactyl_id)) {
//only return error when it's not a 404 error
if ($response['errors'][0]['status'] != '404') {
throw new Exception($response['errors'][0]['code']);
@ -88,7 +91,7 @@ class Server extends Model
*/
public function isSuspended()
{
return ! is_null($this->suspended);
return !is_null($this->suspended);
}
/**
@ -125,9 +128,11 @@ class Server extends Model
if ($response->successful()) {
$this->update([
'suspended' => null,
'last_billed' => Carbon::now()->toDateTimeString(),
]);
}
return $this;
}

View file

@ -228,6 +228,8 @@ class User extends Authenticatable implements MustVerifyEmail
private function getServersWithProduct()
{
return $this->servers()
->whereNull('suspended')
->whereNull('cancelled')
->with('product')
->get();
}
@ -258,7 +260,7 @@ class User extends Authenticatable implements MustVerifyEmail
{
$usage = 0;
foreach ($this->getServersWithProduct() as $server) {
$usage += $server->product->price;
$usage += $server->product->getHourlyPrice() * 24 * 30;
}
return number_format($usage, 2, '.', '');

View file

@ -0,0 +1,48 @@
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\DB;
use Illuminate\Support\Facades\Schema;
class AddBillingPeriodToProducts extends Migration
{
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
Schema::table('products', function (Blueprint $table) {
$table->string('billing_period')->default("hourly");
$table->decimal('price', 15, 4)->change();
$table->decimal('minimum_credits', 15, 4)->change();
});
DB::statement('UPDATE products SET billing_period="hourly"');
$products = DB::table('products')->get();
foreach ($products as $product) {
$price = $product->price;
$price = $price / 30 / 24;
DB::table('products')->where('id', $product->id)->update(['price' => $price]);
}
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
Schema::table('products', function (Blueprint $table) {
$table->dropColumn('billing_period');
$table->decimal('price', 10, 0)->change();
$table->float('minimum_credits')->change();
});
}
}

View file

@ -0,0 +1,33 @@
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
class UpdateUserCreditsDatatype extends Migration
{
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
Schema::table('users', function (Blueprint $table) {
$table->decimal('credits', 15, 4)->default(0)->change();
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
Schema::table('users', function (Blueprint $table) {
$table->unsignedFloat('credits')->default(250)->change();
});
}
}

View file

@ -0,0 +1,33 @@
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\DB;
use Illuminate\Support\Facades\Schema;
class AddLastBilledFieldToServers extends Migration
{
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
Schema::table('servers', function (Blueprint $table) {
$table->dateTime('last_billed')->default(DB::raw('CURRENT_TIMESTAMP'))->nullable();
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
Schema::table('servers', function (Blueprint $table) {
$table->dropColumn('last_billed');
});
}
}

View file

@ -0,0 +1,32 @@
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
class AddCancelationToServersTable extends Migration
{
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
Schema::table('servers', function (Blueprint $table) {
$table->dateTime('cancelled')->nullable();
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
Schema::table('servers', function (Blueprint $table) {
$table->dropColumn('cancelled');
});
}
}

View file

@ -0,0 +1,32 @@
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
class UndoDecimalInPrice extends Migration
{
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
Schema::table('products', function (Blueprint $table) {
$table->decimal('price', 15, 4)->change();
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
Schema::table('products', function (Blueprint $table) {
$table->decimal('price',['11','2'])->change();
});
}
}

View file

@ -16,29 +16,32 @@ class ProductSeeder extends Seeder
{
Product::create([
'name' => 'Starter',
'description' => '64MB Ram, 1GB Disk, 1 Database, 140 credits monthly',
'description' => '64MB Ram, 1GB Disk, 1 Database, 140 credits hourly',
'price' => 140,
'memory' => 64,
'disk' => 1000,
'databases' => 1,
'billing_period' => 'hourly'
]);
Product::create([
'name' => 'Standard',
'description' => '128MB Ram, 2GB Disk, 2 Database, 210 credits monthly',
'description' => '128MB Ram, 2GB Disk, 2 Database, 210 credits hourly',
'price' => 210,
'memory' => 128,
'disk' => 2000,
'databases' => 2,
'billing_period' => 'hourly'
]);
Product::create([
'name' => 'Advanced',
'description' => '256MB Ram, 5GB Disk, 5 Database, 280 credits monthly',
'description' => '256MB Ram, 5GB Disk, 5 Database, 280 credits hourly',
'price' => 280,
'memory' => 256,
'disk' => 5000,
'databases' => 5,
'billing_period' => 'hourly'
]);
}
}

View file

@ -81,7 +81,7 @@
"Someone registered using your Code!": "Someone registered using your Code!",
"Server Creation Error": "Грешка при създаване на сървър",
"Your servers have been suspended!": "Сървърите ви са спрени!",
"To automatically re-enable your server\/s, you need to purchase more credits.": "За да активирате автоматично вашия сървър\/и, трябва да закупите повече кредити.",
"To automatically re-enable your server/s, you need to purchase more credits.": "За да активирате автоматично вашия сървър/и, трябва да закупите повече кредити.",
"Purchase credits": "Купете кредити",
"If you have any questions please let us know.": "При допълнителни въпроси, моля свържете се с нас.",
"Regards": "Поздрави",
@ -93,7 +93,7 @@
"Getting started!": "Приготвяме се да започнем!",
"Welcome to our dashboard": "Welcome to our dashboard",
"Verification": "Verification",
"You can verify your e-mail address and link\/verify your Discord account.": "You can verify your e-mail address and link\/verify your Discord account.",
"You can verify your e-mail address and link/verify your Discord account.": "You can verify your e-mail address and link/verify your Discord account.",
"Information": "Information",
"This dashboard can be used to create and delete servers": "This dashboard can be used to create and delete servers",
"These servers can be used and managed on our pterodactyl panel": "These servers can be used and managed on our pterodactyl panel",
@ -187,7 +187,7 @@
"Default language": "Език по подразбиране",
"The fallback Language, if something goes wrong": "Резервният език, ако нещо се обърка",
"Datable language": "Език с данни",
"The datatables lang-code. <br><strong>Example:<\/strong> en-gb, fr_fr, de_de<br>More Information: ": "Езиков код на таблиците с данни. <br><strong>Пример:<\/strong> en-gb, fr_fr, de_de<br>Повече информация: ",
"The datatables lang-code. <br><strong>Example:</strong> en-gb, fr_fr, de_de<br>More Information: ": "Езиков код на таблиците с данни. <br><strong>Пример:</strong> en-gb, fr_fr, de_de<br>Повече информация: ",
"Auto-translate": "Автоматичен превод",
"If this is checked, the Dashboard will translate itself to the Clients language, if available": "Ако това е отметнато, таблото за управление ще се преведе на езика на клиентите, ако е наличен",
"Client Language-Switch": "Превключване на клиентски език",
@ -243,9 +243,9 @@
"Charges the first hour worth of credits upon creating a server.": "Таксува кредити за първия час при създаване на сървър.",
"Credits Display Name": "Credits Display Name",
"PHPMyAdmin URL": "PHPMyAdmin URL",
"Enter the URL to your PHPMyAdmin installation. <strong>Without a trailing slash!<\/strong>": "Въведете URL адреса на вашата инсталация на PHPMyAdmin. <strong>Без крайна наклонена черта!<\/strong>",
"Enter the URL to your PHPMyAdmin installation. <strong>Without a trailing slash!</strong>": "Въведете URL адреса на вашата инсталация на PHPMyAdmin. <strong>Без крайна наклонена черта!</strong>",
"Pterodactyl URL": "Pterodactyl URL",
"Enter the URL to your Pterodactyl installation. <strong>Without a trailing slash!<\/strong>": "Въведете URL адреса на вашата инсталация на Pterodactyl.<strong>Без крайна наклонена черта!<\/strong>",
"Enter the URL to your Pterodactyl installation. <strong>Without a trailing slash!</strong>": "Въведете URL адреса на вашата инсталация на Pterodactyl.<strong>Без крайна наклонена черта!</strong>",
"Pterodactyl API Key": "Pterodactyl API Kлюч",
"Enter the API Key to your Pterodactyl installation.": "Въведете API ключа към вашата инсталация на Pterodactyl.",
"Force Discord verification": "Принудително потвърждаване на Discord",
@ -316,7 +316,7 @@
"A voucher can only be used one time per user. Uses specifies the number of different users that can use this voucher.": "Ваучер може да се използва само веднъж на потребител. Uses определя броя на различните потребители, които могат да използват този ваучер.",
"Max": "Макс",
"Expires at": "Изтича на",
"Used \/ Uses": "Използван \/ Използвания",
"Used / Uses": "Използван / Използвания",
"Expires": "Изтича",
"Sign in to start your session": "Влезте, за да започнете сесията си",
"Password": "Парола",
@ -388,7 +388,7 @@
"No nodes have been linked!": "Няма свързани Node-ове!",
"No nests available!": "Няма налични Nest-ове!",
"No eggs have been linked!": "Няма свързани Egg-ове!",
"Software \/ Games": "Софтуер \/ Игри",
"Software / Games": "Софтуер / Игри",
"Please select software ...": "Моля, изберете софтуер...",
"---": "---",
"Specification ": "Спецификация ",
@ -460,5 +460,7 @@
"tr": "Турски",
"ru": "Руски",
"sv": "Swedish",
"sk": "Slovakish"
"sk": "Slovakish",
"Upgrading/Downgrading your server will reset your billing cycle to now. Your overpayed Credits will be refunded. The price for the new billing cycle will be withdrawed": "Актуализирането / надграждането на сървъра ви ще нулира вашата билнгова цикъл до сега. Вашите превишени кредити ще бъдат възстановени. Цената за новия билнгов цикъл ще бъде извлечена",
"Caution": "Внимание"
}

View file

@ -80,7 +80,7 @@
"User ID": "User ID",
"Server Creation Error": "Server Creation Error",
"Your servers have been suspended!": "Your servers have been suspended!",
"To automatically re-enable your server\/s, you need to purchase more credits.": "To automatically re-enable your server\/s, you need to purchase more credits.",
"To automatically re-enable your server/s, you need to purchase more credits.": "To automatically re-enable your server/s, you need to purchase more credits.",
"Purchase credits": "Purchase credits",
"If you have any questions please let us know.": "If you have any questions please let us know.",
"Regards": "Regards",
@ -173,7 +173,7 @@
"Default language": "Default language",
"The fallback Language, if something goes wrong": "The fallback Language, if something goes wrong",
"Datable language": "Datable language",
"The datatables lang-code. <br><strong>Example:<\/strong> en-gb, fr_fr, de_de<br>More Information: ": "The datatables lang-code. <br><strong>Example:<\/strong> en-gb, fr_fr, de_de<br>More Information: ",
"The datatables lang-code. <br><strong>Example:</strong> en-gb, fr_fr, de_de<br>More Information: ": "The datatables lang-code. <br><strong>Example:</strong> en-gb, fr_fr, de_de<br>More Information: ",
"Auto-translate": "Auto-translate",
"If this is checked, the Dashboard will translate itself to the Clients language, if available": "If this is checked, the Dashboard will translate itself to the Clients language, if available",
"Client Language-Switch": "Client Language-Switch",
@ -214,9 +214,9 @@
"Charges the first hour worth of credits upon creating a server.": "Charges the first hour worth of credits upon creating a server.",
"Credits Display Name": "Credits Display Name",
"PHPMyAdmin URL": "PHPMyAdmin URL",
"Enter the URL to your PHPMyAdmin installation. <strong>Without a trailing slash!<\/strong>": "Enter the URL to your PHPMyAdmin installation. <strong>Without a trailing slash!<\/strong>",
"Enter the URL to your PHPMyAdmin installation. <strong>Without a trailing slash!</strong>": "Enter the URL to your PHPMyAdmin installation. <strong>Without a trailing slash!</strong>",
"Pterodactyl URL": "Pterodactyl URL",
"Enter the URL to your Pterodactyl installation. <strong>Without a trailing slash!<\/strong>": "Enter the URL to your Pterodactyl installation. <strong>Without a trailing slash!<\/strong>",
"Enter the URL to your Pterodactyl installation. <strong>Without a trailing slash!</strong>": "Enter the URL to your Pterodactyl installation. <strong>Without a trailing slash!</strong>",
"Pterodactyl API Key": "Pterodactyl API Key",
"Enter the API Key to your Pterodactyl installation.": "Enter the API Key to your Pterodactyl installation.",
"Force Discord verification": "Force Discord verification",
@ -284,7 +284,7 @@
"A voucher can only be used one time per user. Uses specifies the number of different users that can use this voucher.": "A voucher can only be used one time per user. Uses specifies the number of different users that can use this voucher.",
"Max": "Max",
"Expires at": "Expires at",
"Used \/ Uses": "Used \/ Uses",
"Used / Uses": "Used / Uses",
"Expires": "Expires",
"Sign in to start your session": "Sign in to start your session",
"Password": "Password",
@ -354,7 +354,7 @@
"No nodes have been linked!": "No nodes have been linked!",
"No nests available!": "No nests available!",
"No eggs have been linked!": "No eggs have been linked!",
"Software \/ Games": "Software \/ Games",
"Software / Games": "Software / Games",
"Please select software ...": "Please select software ...",
"---": "---",
"Specification ": "Specification ",
@ -441,5 +441,7 @@
"pl": "Polish",
"zh": "Chinese",
"tr": "Turkish",
"ru": "Russian"
"ru": "Russian",
"Upgrading/Downgrading your server will reset your billing cycle to now. Your overpayed Credits will be refunded. The price for the new billing cycle will be withdrawed": "Upgrading/Downgrading your server will reset your billing cycle to now. Your overpayed Credits will be refunded. The price for the new billing cycle will be withdrawed",
"Caution": "Caution"
}

View file

@ -81,7 +81,7 @@
"Someone registered using your Code!": "Někdo se zaregistroval pomocí vašeho kódu!",
"Server Creation Error": "Chyba při vytváření serveru",
"Your servers have been suspended!": "Vaše servery byly pozastaveny!",
"To automatically re-enable your server\/s, you need to purchase more credits.": "Pro opětovné spuštění vašich serverů dobijte prosím kredity.",
"To automatically re-enable your server/s, you need to purchase more credits.": "Pro opětovné spuštění vašich serverů dobijte prosím kredity.",
"Purchase credits": "Zakoupit kredity",
"If you have any questions please let us know.": "Máte-li jakékoli dotazy, dejte nám vědět.",
"Regards": "S pozdravem",
@ -93,7 +93,7 @@
"Getting started!": "Začínáme!",
"Welcome to our dashboard": "Vítejte v našem ovládacím panelu",
"Verification": "Ověření",
"You can verify your e-mail address and link\/verify your Discord account.": "Můžete ověřit svojí e-mail adresu a přiojit váš Discord účet.",
"You can verify your e-mail address and link/verify your Discord account.": "Můžete ověřit svojí e-mail adresu a přiojit váš Discord účet.",
"Information": "Informace",
"This dashboard can be used to create and delete servers": "Tento panel může použít pro vytvoření a mazání serverů",
"These servers can be used and managed on our pterodactyl panel": "Tyto servery můžete používat a spravovat v našem pterodactyl panelu",
@ -114,7 +114,7 @@
"Token": "Token",
"Last used": "Naposledy použito",
"Are you sure you wish to delete?": "Opravdu si přejete odstranit?",
"Nests": "Software\/hra",
"Nests": "Software/hra",
"Sync": "Synchronizovat",
"Active": "Aktivní",
"ID": "ID",
@ -187,7 +187,7 @@
"Default language": "Výchozí jazyk",
"The fallback Language, if something goes wrong": "Záložní jazyk, kdyby se něco pokazilo",
"Datable language": "Jazyk tabulek",
"The datatables lang-code. <br><strong>Example:<\/strong> en-gb, fr_fr, de_de<br>More Information: ": "Kód jazyka datových tabulek. <br><strong>Příklad:<\/strong> en-gb, fr_fr, de_de<br>Více informací: ",
"The datatables lang-code. <br><strong>Example:</strong> en-gb, fr_fr, de_de<br>More Information: ": "Kód jazyka datových tabulek. <br><strong>Příklad:</strong> en-gb, fr_fr, de_de<br>Více informací: ",
"Auto-translate": "Automatický překlad",
"If this is checked, the Dashboard will translate itself to the Clients language, if available": "Pokud je tohle zaškrtlé, Panel bude přeložen do Jazyka klienta (pokud to je možné)",
"Client Language-Switch": "Povolit uživatelům změnu jazyka",
@ -243,9 +243,9 @@
"Charges the first hour worth of credits upon creating a server.": "Po vytvoření služby náčtuje ihned první hodinu.",
"Credits Display Name": "Název kreditů",
"PHPMyAdmin URL": "PHPMyAdmin URL",
"Enter the URL to your PHPMyAdmin installation. <strong>Without a trailing slash!<\/strong>": "Vložte URL vaší instalace PHPmyAdmin. <strong>Bez koncového lomítka!<\/strong>",
"Enter the URL to your PHPMyAdmin installation. <strong>Without a trailing slash!</strong>": "Vložte URL vaší instalace PHPmyAdmin. <strong>Bez koncového lomítka!</strong>",
"Pterodactyl URL": "Pterodactyl URL",
"Enter the URL to your Pterodactyl installation. <strong>Without a trailing slash!<\/strong>": "Vložte URL vaší instalace Pterodactyl. <strong>Bez koncového lomítka!<\/strong>",
"Enter the URL to your Pterodactyl installation. <strong>Without a trailing slash!</strong>": "Vložte URL vaší instalace Pterodactyl. <strong>Bez koncového lomítka!</strong>",
"Pterodactyl API Key": "Pterodactyl API klíč",
"Enter the API Key to your Pterodactyl installation.": "Zadejte API klíč Vaší Pterodactyl instalace.",
"Force Discord verification": "Vynutit ověření skrz Discord",
@ -316,7 +316,7 @@
"A voucher can only be used one time per user. Uses specifies the number of different users that can use this voucher.": "Poukaz může být použit pouze jednou na uživatele. Počet použití upravuje počet různých uživatelů, kteří můžou poukaz použít.",
"Max": "Maximum",
"Expires at": "Vyprší",
"Used \/ Uses": "Použito",
"Used / Uses": "Použito",
"Expires": "Vyprší",
"Sign in to start your session": "Pro pokračování se prosím přihlašte",
"Password": "Heslo",
@ -386,9 +386,9 @@
"Sync now": "Synchronizovat nyní",
"No products available!": "Žádné dostupné balíčky!",
"No nodes have been linked!": "Nebyly propojeny žádné uzly!",
"No nests available!": "Žádný dostupný software\/hry!",
"No nests available!": "Žádný dostupný software/hry!",
"No eggs have been linked!": "Nebyly nastaveny žádné distribuce!",
"Software \/ Games": "Software\/hry",
"Software / Games": "Software/hry",
"Please select software ...": "Prosím zvolte software ...",
"---": "----",
"Specification ": "Specifikace ",
@ -460,5 +460,7 @@
"tr": "Turečtina",
"ru": "Ruština",
"sv": "Švédština",
"sk": "Slovensky"
"sk": "Slovensky",
"Upgrading/Downgrading your server will reset your billing cycle to now. Your overpayed Credits will be refunded. The price for the new billing cycle will be withdrawed": "Aktualizace/snížení vašeho serveru resetuje váš fakturační cyklus na aktuální. Vaše přeplacené kredity budou vráceny. Cena za nový fakturační cyklus bude odečtena",
"Caution": "Upozornění"
}

View file

@ -461,7 +461,29 @@
"ru": "Russisch",
"sv": "Schwedisch",
"sk": "Slowakisch",
"Imprint": "Impressum",
"Privacy": "Datenschutz",
"Privacy Policy": "Datenschutzerklärung"
"hourly": "Stündlich",
"monthly": "Monatlich",
"yearly": "Jährlich",
"daily": "Täglich",
"weekly": "Wöchentlich",
"quarterly": "Vierteljährlich",
"half-annually": "Halbjährlich",
"annually": "Jährlich",
"Suspended": "Gesperrt",
"Cancelled": "Gekündigt",
"An exception has occurred while trying to cancel the server": "Ein Fehler ist aufgetreten beim Versuch, den Server zu kündigen",
"This will cancel your current server to the next billing period. It will get suspended when the current period runs out.": "Dies wird Ihren aktuellen Server zur nächsten Abrechnungsperiode kündigen. Er wird beim Ablauf der aktuellen Periode gesperrt.",
"This is an irreversible action, all files of this server will be removed. <strong>No funds will get refunded</strong>. We recommend deleting the server when server is suspended.": "Dies ist eine irreversiblen Aktion, alle Dateien dieses Servers werden gelöscht. <strong>Keine Rückerstattung!</strong>. Wir empfehlen, den Server zu löschen, wenn er gesperrt ist.",
"Cancel Server?": "Server kündigen?",
"Delete Server?": "Server löschen?",
"Billing Period": "Abrechnungsperiode",
"Next Billing Cycle": "Nächste Abrechnungsperiode",
"Manage Server": "Server verwalten",
"Delete Server": "Server löschen",
"Cancel Server": "Server kündigen",
"Yes, cancel it!": "Ja, löschen!",
"No, abort!": "Abbrechen",
"Billing period": "Abrechnungsperiode",
"Upgrading/Downgrading your server will reset your billing cycle to now. Your overpayed Credits will be refunded. The price for the new billing cycle will be withdrawed": "Das Upgrade/Downgrade Ihres Servers wird Ihre Abrechnungsperiode auf \"jetzt\" zurücksetzen. Ihre überzahlten Credits werden erstattet. Der Preis für die neue Abrechnungsperiode wird abgebucht.",
"Caution": "Achtung"
}

View file

@ -109,7 +109,7 @@
"Someone registered using your Code!": "Someone registered using your Code!",
"Server Creation Error": "Server Creation Error",
"Your servers have been suspended!": "Your servers have been suspended!",
"To automatically re-enable your server\/s, you need to purchase more credits.": "To automatically re-enable your server\/s, you need to purchase more credits.",
"To automatically re-enable your server/s, you need to purchase more credits.": "To automatically re-enable your server/s, you need to purchase more credits.",
"Purchase credits": "Purchase credits",
"If you have any questions please let us know.": "If you have any questions please let us know.",
"Regards": "Regards",
@ -121,7 +121,7 @@
"Getting started!": "Getting started!",
"Welcome to our dashboard": "Welcome to our dashboard",
"Verification": "Verification",
"You can verify your e-mail address and link\/verify your Discord account.": "You can verify your e-mail address and link\/verify your Discord account.",
"You can verify your e-mail address and link/verify your Discord account.": "You can verify your e-mail address and link/verify your Discord account.",
"Information": "Information",
"This dashboard can be used to create and delete servers": "This dashboard can be used to create and delete servers",
"These servers can be used and managed on our pterodactyl panel": "These servers can be used and managed on our pterodactyl panel",
@ -280,7 +280,7 @@
"Default language": "Default language",
"The fallback Language, if something goes wrong": "The fallback Language, if something goes wrong",
"Datable language": "Datable language",
"The datatables lang-code. <br><strong>Example:<\/strong> en-gb, fr_fr, de_de<br>More Information: ": "The datatables lang-code. <br><strong>Example:<\/strong> en-gb, fr_fr, de_de<br>More Information: ",
"The datatables lang-code. <br><strong>Example:</strong> en-gb, fr_fr, de_de<br>More Information: ": "The datatables lang-code. <br><strong>Example:</strong> en-gb, fr_fr, de_de<br>More Information: ",
"Auto-translate": "Auto-translate",
"If this is checked, the Dashboard will translate itself to the Clients language, if available": "If this is checked, the Dashboard will translate itself to the Clients language, if available",
"Client Language-Switch": "Client Language-Switch",
@ -340,19 +340,20 @@
"Tax Value in %": "Tax Value in %",
"System": "System",
"Show Terms of Service": "Show Terms of Service",
"Show the TOS link in the footer of every page. <br> Edit the content in \"resources/views/information/tos-content.blade.php\"": "Show the TOS link in the footer of every page. <br> Edit the content in \"resources/views/information/tos-content.blade.php\"",
"Show Imprint": "Show Imprint",
"Show the imprint link in the footer of every page. <br> Edit the content in \"resources/views/information/imprint-content.blade.php\"": "Show the imprint link in the footer of every page. <br> Edit the content in \"resources/views/information/imprint-content.blade.php\"",
"Show Privacy Policy": "Show Privacy Policy",
"Show the privacy policy link in the footer of every page. <br> Edit the content in \"resources/views/information/privacy-content.blade.php\"": "Show the privacy policy link in the footer of every page. <br> Edit the content in \"resources/views/information/privacy-content.blade.php\"",
"Register IP Check": "Register IP Check",
"Prevent users from making multiple accounts using the same IP address.": "Prevent users from making multiple accounts using the same IP address.",
"Charge first hour at creation": "Charge first hour at creation",
"Charges the first hour worth of credits upon creating a server.": "Charges the first hour worth of credits upon creating a server.",
"Credits Display Name": "Credits Display Name",
"PHPMyAdmin URL": "PHPMyAdmin URL",
"Enter the URL to your PHPMyAdmin installation. <strong>Without a trailing slash!<\/strong>": "Enter the URL to your PHPMyAdmin installation. <strong>Without a trailing slash!<\/strong>",
"Enter the URL to your PHPMyAdmin installation. <strong>Without a trailing slash!</strong>": "Enter the URL to your PHPMyAdmin installation. <strong>Without a trailing slash!</strong>",
"Pterodactyl URL": "Pterodactyl URL",
"Enter the URL to your Pterodactyl installation. <strong>Without a trailing slash!<\/strong>": "Enter the URL to your Pterodactyl installation. <strong>Without a trailing slash!<\/strong>",
"Pterodactyl API perPage limit": "Pterodactyl API perPage limit",
"The Pterodactyl API perPage limit. It is necessary to set it higher than your server count.": "The Pterodactyl API perPage limit. It is necessary to set it higher than your server count.",
"Enter the URL to your Pterodactyl installation. <strong>Without a trailing slash!</strong>": "Enter the URL to your Pterodactyl installation. <strong>Without a trailing slash!</strong>",
"Pterodactyl API Key": "Pterodactyl API Key",
"Enter the API Key to your Pterodactyl installation.": "Enter the API Key to your Pterodactyl installation.",
"Pterodactyl Admin-Account API Key": "Pterodactyl Admin-Account API Key",
@ -370,8 +371,8 @@
"Server Limit Increase - E-Mail": "Server Limit Increase - E-Mail",
"Server Limit after Credits Purchase": "Server Limit after Credits Purchase",
"Server": "Server",
"Enable upgrade\/downgrade of servers": "Enable upgrade\/downgrade of servers",
"Allow upgrade\/downgrade to a new product for the given server": "Allow upgrade\/downgrade to a new product for the given server",
"Enable upgrade/downgrade of servers": "Enable upgrade/downgrade of servers",
"Allow upgrade/downgrade to a new product for the given server": "Allow upgrade/downgrade to a new product for the given server",
"Creation of new servers": "Creation of new servers",
"If unchecked, it will disable the creation of new servers for regular users and system moderators, this has no effect for administrators.": "If unchecked, it will disable the creation of new servers for regular users and system moderators, this has no effect for administrators.",
"Server Allocation Limit": "Server Allocation Limit",
@ -457,7 +458,7 @@
"A voucher can only be used one time per user. Uses specifies the number of different users that can use this voucher.": "A voucher can only be used one time per user. Uses specifies the number of different users that can use this voucher.",
"Max": "Max",
"Expires at": "Expires at",
"Used \/ Uses": "Used \/ Uses",
"Used / Uses": "Used / Uses",
"Expires": "Expires",
"Sign in to start your session": "Sign in to start your session",
"Email or Username": "Email or Username",
@ -530,7 +531,7 @@
"Created At": "Created At",
"Add To Blacklist": "Add To Blacklist",
"please make the best of it": "please make the best of it",
"Please note, the blacklist will make the user unable to make a ticket\/reply again": "Please note, the blacklist will make the user unable to make a ticket\/reply again",
"Please note, the blacklist will make the user unable to make a ticket/reply again": "Please note, the blacklist will make the user unable to make a ticket/reply again",
"Ticket": "Ticket",
"Category": "Category",
"Priority": "Priority",
@ -565,7 +566,7 @@
"No nodes have been linked!": "No nodes have been linked!",
"No nests available!": "No nests available!",
"No eggs have been linked!": "No eggs have been linked!",
"Software \/ Games": "Software \/ Games",
"Software / Games": "Software / Games",
"Please select software ...": "Please select software ...",
"---": "---",
"Specification ": "Specification ",
@ -600,8 +601,9 @@
"Hourly Price": "Hourly Price",
"Monthly Price": "Monthly Price",
"MySQL Database": "MySQL Database",
"Upgrade \/ Downgrade": "Upgrade \/ Downgrade",
"Upgrade\/Downgrade Server": "Upgrade\/Downgrade Server",
"To enable the upgrade/downgrade system, please set your Ptero Admin-User API Key in the Settings!": "To enable the upgrade/downgrade system, please set your Ptero Admin-User API Key in the Settings!",
"Upgrade / Downgrade": "Upgrade / Downgrade",
"Upgrade/Downgrade Server": "Upgrade/Downgrade Server",
"FOR DOWNGRADE PLEASE CHOOSE A PLAN BELOW YOUR PLAN": "FOR DOWNGRADE PLEASE CHOOSE A PLAN BELOW YOUR PLAN",
"YOUR PRODUCT": "YOUR PRODUCT",
"Select the product": "Select the product",
@ -653,5 +655,30 @@
"ru": "Russian",
"sv": "Swedish",
"sk": "Slovakish",
"hu": "Hungarian"
"hu": "Hungarian",
"hourly": "Hourly",
"monthly": "Monthly",
"yearly": "Yearly",
"daily": "Daily",
"weekly": "Weekly",
"quarterly": "Quarterly",
"half-annually": "Half-annually",
"annually": "Annually",
"Suspended": "Suspended",
"Cancelled": "Cancelled",
"An exception has occurred while trying to cancel the server": "An exception has occurred while trying to cancel the server",
"This will cancel your current server to the next billing period. It will get suspended when the current period runs out.": "This will cancel your current server to the next billing period. It will get suspended when the current period runs out.",
"Cancel Server?": "Cancel Server?",
"Delete Server?": "Delete Server?",
"This is an irreversible action, all files of this server will be removed. <strong>No funds will get refunded</strong>. We recommend deleting the server when server is suspended.": "This is an irreversible action, all files of this server will be removed. <strong>No funds will get refunded</strong>. We recommend deleting the server when server is suspended.",
"Billing Period": "Billing Period",
"Next Billing Cycle": "Next Billing Cycle",
"Manage Server": "Manage Server",
"Delete Server": "Delete Server",
"Cancel Server": "Cancel Server",
"Yes, cancel it!": "Yes, cancel it!",
"No, abort!": "No, abort!",
"Billing period": "Billing period",
"Upgrading/Downgrading your server will reset your billing cycle to now. Your overpayed Credits will be refunded. The price for the new billing cycle will be withdrawed": "Upgrading/Downgrading your server will reset your billing cycle to now. Your overpayed Credits will be refunded. The price for the new billing cycle will be withdrawed",
"Caution": "Caution"
}

View file

@ -81,7 +81,7 @@
"Someone registered using your Code!": "Someone registered using your Code!",
"Server Creation Error": "Error de creación del servidor",
"Your servers have been suspended!": "¡Sus servidores han sido suspendidos!",
"To automatically re-enable your server\/s, you need to purchase more credits.": "Para volver a habilitar automáticamente sus servidores, debe comprar más créditos.",
"To automatically re-enable your server/s, you need to purchase more credits.": "Para volver a habilitar automáticamente sus servidores, debe comprar más créditos.",
"Purchase credits": "Comprar Créditos",
"If you have any questions please let us know.": "Si tienes más preguntas, por favor háznoslas saber.",
"Regards": "Atentamente",
@ -93,7 +93,7 @@
"Getting started!": "¡Empezando!",
"Welcome to our dashboard": "Welcome to our dashboard",
"Verification": "Verification",
"You can verify your e-mail address and link\/verify your Discord account.": "You can verify your e-mail address and link\/verify your Discord account.",
"You can verify your e-mail address and link/verify your Discord account.": "You can verify your e-mail address and link/verify your Discord account.",
"Information": "Information",
"This dashboard can be used to create and delete servers": "This dashboard can be used to create and delete servers",
"These servers can be used and managed on our pterodactyl panel": "These servers can be used and managed on our pterodactyl panel",
@ -187,7 +187,7 @@
"Default language": "Idioma predeterminado",
"The fallback Language, if something goes wrong": "El lenguaje alternativo, si algo sale mal",
"Datable language": "Lenguaje de tabla de datos",
"The datatables lang-code. <br><strong>Example:<\/strong> en-gb, fr_fr, de_de<br>More Information: ": "El código de idioma de las tablas de datos. <br><strong>Ejemplo:<\/strong> en-gb, fr_fr, de_de<br>Más información: ",
"The datatables lang-code. <br><strong>Example:</strong> en-gb, fr_fr, de_de<br>More Information: ": "El código de idioma de las tablas de datos. <br><strong>Ejemplo:</strong> en-gb, fr_fr, de_de<br>Más información: ",
"Auto-translate": "Traducir automáticamente",
"If this is checked, the Dashboard will translate itself to the Clients language, if available": "Si está marcado, el Tablero se traducirá solo al idioma del Cliente, si está disponible",
"Client Language-Switch": "Cambio de idioma del cliente",
@ -243,9 +243,9 @@
"Charges the first hour worth of credits upon creating a server.": "Carga la primera hora de créditos al crear un servidor.",
"Credits Display Name": "Nombre de los Créditos para mostrar",
"PHPMyAdmin URL": "PHPMyAdmin URL",
"Enter the URL to your PHPMyAdmin installation. <strong>Without a trailing slash!<\/strong>": "Ingrese la URL de su instalación de PHPMyAdmin. <strong>¡Sin una barra diagonal final!<\/strong>",
"Enter the URL to your PHPMyAdmin installation. <strong>Without a trailing slash!</strong>": "Ingrese la URL de su instalación de PHPMyAdmin. <strong>¡Sin una barra diagonal final!</strong>",
"Pterodactyl URL": "Pterodactyl URL",
"Enter the URL to your Pterodactyl installation. <strong>Without a trailing slash!<\/strong>": "Introduzca la URL de su instalación de Pterodactyl. <strong>¡Sin una barra diagonal final!<\/strong>",
"Enter the URL to your Pterodactyl installation. <strong>Without a trailing slash!</strong>": "Introduzca la URL de su instalación de Pterodactyl. <strong>¡Sin una barra diagonal final!</strong>",
"Pterodactyl API Key": "Pterodactyl API Key",
"Enter the API Key to your Pterodactyl installation.": "Ingrese la API Key para su instalación de Pterodactyl.",
"Force Discord verification": "Forzar verificación de Discord",
@ -263,7 +263,7 @@
"Select panel favicon": "Seleccionar favicon del panel",
"Store": "Tienda",
"Server Slots": "Server Slots",
"Currency code": "Código de divisa\/moneda",
"Currency code": "Código de divisa/moneda",
"Checkout the paypal docs to select the appropriate code": "Consulte los documentos de PayPal para seleccionar el código apropiado",
"Quantity": "Cantidad",
"Amount given to the user after purchasing": "Importe dado al usuario después de la compra",
@ -316,7 +316,7 @@
"A voucher can only be used one time per user. Uses specifies the number of different users that can use this voucher.": "El descuento solo se puede utilizar una vez por usuario. Los usos especifica el número de usuarios diferentes que pueden utilizar este cupón.",
"Max": "Máx",
"Expires at": "Expira el",
"Used \/ Uses": "Uso \/ Usos",
"Used / Uses": "Uso / Usos",
"Expires": "Expira",
"Sign in to start your session": "Iniciar sesión para comenzar",
"Password": "Contraseña",
@ -388,7 +388,7 @@
"No nodes have been linked!": "¡No se han vinculado nodos!",
"No nests available!": "¡No hay nidos disponibles!",
"No eggs have been linked!": "¡No se han vinculado huevos!",
"Software \/ Games": "Software \/ Juegos",
"Software / Games": "Software / Juegos",
"Please select software ...": "Seleccione el software...",
"---": "---",
"Specification ": "Especificación ",
@ -460,5 +460,7 @@
"tr": "Turco",
"ru": "Ruso",
"sv": "Sueco",
"sk": "Eslovaco"
"sk": "Eslovaco",
"Upgrading/Downgrading your server will reset your billing cycle to now. Your overpayed Credits will be refunded. The price for the new billing cycle will be withdrawed": "Actualizar/Reducir el servidor restablecerá su ciclo de facturación a ahora. Se reembolsarán los créditos sobrepagados. El precio del nuevo ciclo de facturación se retirará",
"Caution": "Cuidado"
}

View file

@ -81,7 +81,7 @@
"Someone registered using your Code!": "Someone registered using your Code!",
"Server Creation Error": "Erreur lors de la création de votre serveur",
"Your servers have been suspended!": "Votre serveur à été suspendu !",
"To automatically re-enable your server\/s, you need to purchase more credits.": "Pour réactiver automatiquement votre ou vos serveurs, vous devez racheter des crédits.",
"To automatically re-enable your server/s, you need to purchase more credits.": "Pour réactiver automatiquement votre ou vos serveurs, vous devez racheter des crédits.",
"Purchase credits": "Acheter des crédits",
"If you have any questions please let us know.": "N'hésitez pas à nous contacter si vous avez des questions.",
"Regards": "Cordialement",
@ -93,7 +93,7 @@
"Getting started!": "Commencer !",
"Welcome to our dashboard": "Welcome to our dashboard",
"Verification": "Verification",
"You can verify your e-mail address and link\/verify your Discord account.": "You can verify your e-mail address and link\/verify your Discord account.",
"You can verify your e-mail address and link/verify your Discord account.": "You can verify your e-mail address and link/verify your Discord account.",
"Information": "Information",
"This dashboard can be used to create and delete servers": "This dashboard can be used to create and delete servers",
"These servers can be used and managed on our pterodactyl panel": "These servers can be used and managed on our pterodactyl panel",
@ -187,7 +187,7 @@
"Default language": "Langue par défaut",
"The fallback Language, if something goes wrong": "La langue de repli, si quelque chose ne va pas",
"Datable language": "Datable language",
"The datatables lang-code. <br><strong>Example:<\/strong> en-gb, fr_fr, de_de<br>More Information: ": "The datatables lang-code. <br><strong>Example:<\/strong> en-gb, fr_fr, de_de<br>More Information: ",
"The datatables lang-code. <br><strong>Example:</strong> en-gb, fr_fr, de_de<br>More Information: ": "The datatables lang-code. <br><strong>Example:</strong> en-gb, fr_fr, de_de<br>More Information: ",
"Auto-translate": "Auto-translate",
"If this is checked, the Dashboard will translate itself to the Clients language, if available": "If this is checked, the Dashboard will translate itself to the Clients language, if available",
"Client Language-Switch": "Client Language-Switch",
@ -243,9 +243,9 @@
"Charges the first hour worth of credits upon creating a server.": "Charges the first hour worth of credits upon creating a server.",
"Credits Display Name": "Credits Display Name",
"PHPMyAdmin URL": "PHPMyAdmin URL",
"Enter the URL to your PHPMyAdmin installation. <strong>Without a trailing slash!<\/strong>": "Enter the URL to your PHPMyAdmin installation. <strong>Without a trailing slash!<\/strong>",
"Enter the URL to your PHPMyAdmin installation. <strong>Without a trailing slash!</strong>": "Enter the URL to your PHPMyAdmin installation. <strong>Without a trailing slash!</strong>",
"Pterodactyl URL": "Pterodactyl URL",
"Enter the URL to your Pterodactyl installation. <strong>Without a trailing slash!<\/strong>": "Enter the URL to your Pterodactyl installation. <strong>Without a trailing slash!<\/strong>",
"Enter the URL to your Pterodactyl installation. <strong>Without a trailing slash!</strong>": "Enter the URL to your Pterodactyl installation. <strong>Without a trailing slash!</strong>",
"Pterodactyl API Key": "Pterodactyl API Key",
"Enter the API Key to your Pterodactyl installation.": "Enter the API Key to your Pterodactyl installation.",
"Force Discord verification": "Force Discord verification",
@ -316,7 +316,7 @@
"A voucher can only be used one time per user. Uses specifies the number of different users that can use this voucher.": "Le code ne peut être utilisé qu'une seule fois. L'utilisation spécifie le nombre d'utilisateurs différents qui peuvent utiliser ce code.",
"Max": "Max",
"Expires at": "Expire à",
"Used \/ Uses": "Utilisé \/ Utilisations",
"Used / Uses": "Utilisé / Utilisations",
"Expires": "Expire",
"Sign in to start your session": "Identifiez-vous pour commencer votre session",
"Password": "Mot de passe",
@ -388,7 +388,7 @@
"No nodes have been linked!": "Aucune node n'a été lié !",
"No nests available!": "Aucun nests disponible !",
"No eggs have been linked!": "Aucun eggs n'a été lié !",
"Software \/ Games": "Logiciels \/ Jeux",
"Software / Games": "Logiciels / Jeux",
"Please select software ...": "Veuillez sélectionner...",
"---": "---",
"Specification ": "Spécification ",
@ -447,6 +447,8 @@
"Notes": "Notes",
"Amount in words": "Montant en toutes lettres",
"Please pay until": "Veuillez payer avant",
"Upgrading/Downgrading your server will reset your billing cycle to now. Your overpayed Credits will be refunded. The price for the new billing cycle will be withdrawed": "Mettre à niveau / Réduire votre serveur réinitialisera votre cycle de facturation à maintenant. Vos crédits surpayés seront remboursés. Le prix du nouveau cycle de facturation sera débité",
"Caution": "Attention",
"cs": "Czech",
"de": "German",
"en": "English",

View file

@ -60,8 +60,8 @@
"You ran out of Credits": "נגמר לך המטבעות",
"Profile updated": "הפרופיל עודכן",
"Server limit reached!": "הגעת להגבלת השרתים!",
"You are required to verify your email address before you can create a server.": "אתה מדרש לאמת את כתובת המייל שלך לפני שתוכל\/י ליצור שרת",
"You are required to link your discord account before you can create a server.": "אתה חייב לקשר את החשבון דיסקורד שלך לפני שתוכל\/י ליצור שרת",
"You are required to verify your email address before you can create a server.": "אתה מדרש לאמת את כתובת המייל שלך לפני שתוכל/י ליצור שרת",
"You are required to link your discord account before you can create a server.": "אתה חייב לקשר את החשבון דיסקורד שלך לפני שתוכל/י ליצור שרת",
"Server created": "השרת נוצר",
"No allocations satisfying the requirements for automatic deployment on this node were found.": "לא נמצאו הקצאות העומדות בדרישות לפריסה אוטומטית בשרת זה.",
"You are required to verify your email address before you can purchase credits.": "אתה נדרש לאמת את כתובת המייל שלך לפני רכישת מטבעות",
@ -81,7 +81,7 @@
"Someone registered using your Code!": "Someone registered using your Code!",
"Server Creation Error": "שגיאה ביצירת שרת",
"Your servers have been suspended!": "השרת שלך מושעה!",
"To automatically re-enable your server\/s, you need to purchase more credits.": "כדי להפעיל מחדש את השרתים שלך באופן אוטומטי, עליך לרכוש מטבעות נוספות.",
"To automatically re-enable your server/s, you need to purchase more credits.": "כדי להפעיל מחדש את השרתים שלך באופן אוטומטי, עליך לרכוש מטבעות נוספות.",
"Purchase credits": "לרכישת מטבעות",
"If you have any questions please let us know.": "אם יש לכם כל שאלה תיידעו אותנו",
"Regards": "בברכה",
@ -93,7 +93,7 @@
"Getting started!": "מתחילים!",
"Welcome to our dashboard": "Welcome to our dashboard",
"Verification": "Verification",
"You can verify your e-mail address and link\/verify your Discord account.": "You can verify your e-mail address and link\/verify your Discord account.",
"You can verify your e-mail address and link/verify your Discord account.": "You can verify your e-mail address and link/verify your Discord account.",
"Information": "Information",
"This dashboard can be used to create and delete servers": "This dashboard can be used to create and delete servers",
"These servers can be used and managed on our pterodactyl panel": "These servers can be used and managed on our pterodactyl panel",
@ -125,7 +125,7 @@
"Admin Overview": "סקירת מנהל",
"Support server": "שרת תמיכה",
"Documentation": "מדריך",
"Github": "Github\/גיטאהב",
"Github": "Github/גיטאהב",
"Support ControlPanel": "תמיכת ControlPanel",
"Servers": "שרתים",
"Total": "בסך הכל",
@ -156,7 +156,7 @@
"Minimum": "מינימום",
"Setting to -1 will use the value from configuration.": "הגדרות ל -1 ישתמש בערך מ configuration.",
"IO": "IO",
"Databases": "Databases\/ממסד נתונים",
"Databases": "Databases/ממסד נתונים",
"Backups": "גיבויים",
"Allocations": "הקצאות",
"Product Linking": "מוצרים מקושרים",
@ -187,7 +187,7 @@
"Default language": "שפת ברירת מחדל",
"The fallback Language, if something goes wrong": "אם משהו משתבש",
"Datable language": "שפה ניתנת לנתונים",
"The datatables lang-code. <br><strong>Example:<\/strong> en-gb, fr_fr, de_de<br>More Information: ": "טבלת הנתונים של השפות.<br><strong>לדוגמא:<\/strong> en-gb, fr_fr, de_de<br>למידע נוסף: ",
"The datatables lang-code. <br><strong>Example:</strong> en-gb, fr_fr, de_de<br>More Information: ": "טבלת הנתונים של השפות.<br><strong>לדוגמא:</strong> en-gb, fr_fr, de_de<br>למידע נוסף: ",
"Auto-translate": "תרגום אוטומטי",
"If this is checked, the Dashboard will translate itself to the Clients language, if available": "אם זה מסומן, Dashboard יתרגם את עצמו לשפת הלקוח, אם זמין",
"Client Language-Switch": "החלפת שפת לקוח",
@ -243,9 +243,9 @@
"Charges the first hour worth of credits upon creating a server.": "Cגובה מטבעות בשווי השעה הראשונה בעת יצירת שרת.",
"Credits Display Name": "שם המטבעות",
"PHPMyAdmin URL": "קישור PHPMyAdmin",
"Enter the URL to your PHPMyAdmin installation. <strong>Without a trailing slash!<\/strong>": "הכנס את הקישור to פיחפי. <strong>בלי צלייה נגררת!<\/strong>",
"Enter the URL to your PHPMyAdmin installation. <strong>Without a trailing slash!</strong>": "הכנס את הקישור to פיחפי. <strong>בלי צלייה נגררת!</strong>",
"Pterodactyl URL": "קישור Pterodactyl",
"Enter the URL to your Pterodactyl installation. <strong>Without a trailing slash!<\/strong>": "Enter the URL to your Pterodactyl installation. <strong>Without a trailing slash!<\/strong>",
"Enter the URL to your Pterodactyl installation. <strong>Without a trailing slash!</strong>": "Enter the URL to your Pterodactyl installation. <strong>Without a trailing slash!</strong>",
"Pterodactyl API Key": "Pterodactyl API מפתח",
"Enter the API Key to your Pterodactyl installation.": "הכנס את מפתח ה API Pterodactyl installation.",
"Force Discord verification": "אימות דיסקורד חובה",
@ -300,12 +300,12 @@
"Notifications": "התראות",
"All": "הכל",
"Send via": "שליחה באמצאות",
"Database": "Database\/מאגר נתונים",
"Database": "Database/מאגר נתונים",
"Content": "קשר",
"Server limit": "הגבלת שרת",
"Discord": "Discord\/דיסקורד",
"Discord": "Discord/דיסקורד",
"Usage": "נוהג",
"IP": "IP\/אייפי",
"IP": "IP/אייפי",
"Referals": "Referals",
"Vouchers": "קופונים",
"Voucher details": "פרטי קופון",
@ -316,7 +316,7 @@
"A voucher can only be used one time per user. Uses specifies the number of different users that can use this voucher.": "ניתן להשתמש בשובר פעם אחת בלבד לכל משתמש. שימושים מציינים את מספר המשתמשים השונים שיכולים להשתמש בשובר זה.",
"Max": "מקסימום",
"Expires at": "יפוג ב",
"Used \/ Uses": "משומש \/ שימושים",
"Used / Uses": "משומש / שימושים",
"Expires": "פגי תוקף",
"Sign in to start your session": "התחבר על מנת להתחיל",
"Password": "סיסמה",
@ -339,7 +339,7 @@
"Before proceeding, please check your email for a verification link.": "לפני שתמשיך, אנא בדוק באימייל שלך קישור לאימות.",
"If you did not receive the email": "אם לא קיבלת את המייל",
"click here to request another": "לחץ כאן כדי לבקש אחר",
"per month": "\/חודש",
"per month": "/חודש",
"Out of Credits in": "נגמרו המטבעות ב",
"Home": "בית",
"Language": "שפה",
@ -388,7 +388,7 @@
"No nodes have been linked!": "שרתים לא מקושרים!",
"No nests available!": "No nests available!",
"No eggs have been linked!": "אין eggs מקושרים",
"Software \/ Games": "תוכנה \/ משחקים",
"Software / Games": "תוכנה / משחקים",
"Please select software ...": "בבקשה תחבר תוכנה ...",
"---": "---",
"Specification ": "ציין ",
@ -411,9 +411,9 @@
"Specification": "לציין",
"Resource plan": "תוכנית משאבים",
"RAM": "RAM",
"MySQL Databases": "בסיס הנתונים <bdi dir=\"ltr\">MySQL<\/bdi>",
"per Hour": "\/שעה",
"per Month": "\/חודש",
"MySQL Databases": "בסיס הנתונים <bdi dir=\"ltr\">MySQL</bdi>",
"per Hour": "/שעה",
"per Month": "/חודש",
"Manage": "לנהל",
"Are you sure?": "האם אתה בטוח?",
"This is an irreversible action, all files of this server will be removed.": "זוהי פעולה בלתי הפיכה, כל הקבצים של שרת זה יוסרו.",
@ -460,5 +460,7 @@
"tr": "טורקית",
"ru": "רוסית",
"sv": "שוודית",
"sk": "סלובקית"
"sk": "סלובקית",
"Upgrading/Downgrading your server will reset your billing cycle to now. Your overpayed Credits will be refunded. The price for the new billing cycle will be withdrawed": "שדרוג / הורדת שרת יאפס את מחזור החיוב שלך לעכשיו. הקרדיטים ששילמת יוחזרו. המחיר למחזור החיוב החדש יוחסם",
"Caution": "אזהרה"
}

View file

@ -81,7 +81,7 @@
"Someone registered using your Code!": "Someone registered using your Code!",
"Server Creation Error": "सर्वर निर्माण त्रुटि",
"Your servers have been suspended!": "आपके सर्वर निलंबित कर दिए गए हैं!",
"To automatically re-enable your server\/s, you need to purchase more credits.": "अपने सर्वर\/सर्वर को स्वचालित रूप से पुन: सक्षम करने के लिए, आपको अधिक क्रेडिट खरीदने की आवश्यकता है।",
"To automatically re-enable your server/s, you need to purchase more credits.": "अपने सर्वर/सर्वर को स्वचालित रूप से पुन: सक्षम करने के लिए, आपको अधिक क्रेडिट खरीदने की आवश्यकता है।",
"Purchase credits": "क्रेडिट खरीदें",
"If you have any questions please let us know.": "यदि आपके पास कोई प्रश्न है, तो हमें बताएं।",
"Regards": "सादर",
@ -93,7 +93,7 @@
"Getting started!": "शुरू करना!",
"Welcome to our dashboard": "Welcome to our dashboard",
"Verification": "Verification",
"You can verify your e-mail address and link\/verify your Discord account.": "You can verify your e-mail address and link\/verify your Discord account.",
"You can verify your e-mail address and link/verify your Discord account.": "You can verify your e-mail address and link/verify your Discord account.",
"Information": "Information",
"This dashboard can be used to create and delete servers": "This dashboard can be used to create and delete servers",
"These servers can be used and managed on our pterodactyl panel": "These servers can be used and managed on our pterodactyl panel",
@ -187,7 +187,7 @@
"Default language": "डिफ़ॉल्ट भाषा",
"The fallback Language, if something goes wrong": "फ़ॉलबैक भाषा, अगर कुछ गलत हो जाता है",
"Datable language": "डेटा योग्य भाषा",
"The datatables lang-code. <br><strong>Example:<\/strong> en-gb, fr_fr, de_de<br>More Information: ": "डेटाटेबल्स लैंग-कोड। <br><strong>उदाहरण:<\/strong> en-gb, fr_fr, de_de<br>अधिक जानकारी: ",
"The datatables lang-code. <br><strong>Example:</strong> en-gb, fr_fr, de_de<br>More Information: ": "डेटाटेबल्स लैंग-कोड। <br><strong>उदाहरण:</strong> en-gb, fr_fr, de_de<br>अधिक जानकारी: ",
"Auto-translate": "ऑटो का अनुवाद",
"If this is checked, the Dashboard will translate itself to the Clients language, if available": "यदि यह चेक किया जाता है, तो डैशबोर्ड स्वयं को क्लाइंट भाषा में अनुवाद करेगा, यदि उपलब्ध हो",
"Client Language-Switch": "क्लाइंट भाषा-स्विच",
@ -243,9 +243,9 @@
"Charges the first hour worth of credits upon creating a server.": "सर्वर बनाने पर पहले घंटे के क्रेडिट का शुल्क लेता है।",
"Credits Display Name": "क्रेडिट प्रदर्शन नाम",
"PHPMyAdmin URL": "PhpMyAdmin URL",
"Enter the URL to your PHPMyAdmin installation. <strong>Without a trailing slash!<\/strong>": "अपने PHPMyAdmin इंस्टॉलेशन का URL दर्ज करें। <strong>पिछली स्लैश के बिना!<\/strong>",
"Enter the URL to your PHPMyAdmin installation. <strong>Without a trailing slash!</strong>": "अपने PHPMyAdmin इंस्टॉलेशन का URL दर्ज करें। <strong>पिछली स्लैश के बिना!</strong>",
"Pterodactyl URL": "पटरोडैक्टाइल यूआरएल",
"Enter the URL to your Pterodactyl installation. <strong>Without a trailing slash!<\/strong>": "अपने Pterodactyl संस्थापन का URL दर्ज करें। <strong>पिछली स्लैश के बिना!<\/strong>",
"Enter the URL to your Pterodactyl installation. <strong>Without a trailing slash!</strong>": "अपने Pterodactyl संस्थापन का URL दर्ज करें। <strong>पिछली स्लैश के बिना!</strong>",
"Pterodactyl API Key": "पटरोडैक्टाइल एपीआई कुंजी",
"Enter the API Key to your Pterodactyl installation.": "अपने Pterodactyl स्थापना के लिए API कुंजी दर्ज करें।",
"Force Discord verification": "बल विवाद सत्यापन",
@ -316,7 +316,7 @@
"A voucher can only be used one time per user. Uses specifies the number of different users that can use this voucher.": "वाउचर प्रति उपयोगकर्ता केवल एक बार उपयोग किया जा सकता है। उपयोग इस वाउचर का उपयोग करने वाले विभिन्न उपयोगकर्ताओं की संख्या को निर्दिष्ट करता है।",
"Max": "मैक्स",
"Expires at": "पर समाप्त हो रहा है",
"Used \/ Uses": "प्रयुक्त \/ उपयोग",
"Used / Uses": "प्रयुक्त / उपयोग",
"Expires": "समय-सीमा समाप्त",
"Sign in to start your session": "अपना सत्र शुरू करने के लिए साइन इन करें",
"Password": "पासवर्ड",
@ -388,7 +388,7 @@
"No nodes have been linked!": "कोई नोड लिंक नहीं किया गया है!",
"No nests available!": "कोई घोंसला उपलब्ध नहीं है!",
"No eggs have been linked!": "कोई अंडे नहीं जोड़े गए हैं!",
"Software \/ Games": "सॉफ्टवेयर \/ खेल",
"Software / Games": "सॉफ्टवेयर / खेल",
"Please select software ...": "कृपया सॉफ्टवेयर चुनें...",
"---": "---",
"Specification ": "विनिर्देश",
@ -447,6 +447,8 @@
"Notes": "टिप्पणियाँ",
"Amount in words": "राशि शब्दों में",
"Please pay until": "कृपया भुगतान करें",
"Upgrading/Downgrading your server will reset your billing cycle to now. Your overpayed Credits will be refunded. The price for the new billing cycle will be withdrawed": "अपने सर्वर को अपग्रेड / डाउनग्रेड करने से आपका बिलिंग साइकिल अब तक रीसेट हो जाएगा। आपके ओवरपेड क्रेडिट वापस किया जाएगा। नए बिलिंग साइकिल के लिए की गई मूल्य निकाला जाएगा",
"Caution": "सावधान",
"cs": "चेक",
"de": "जर्मन",
"en": "अंग्रेज़ी",

View file

@ -81,7 +81,7 @@
"Someone registered using your Code!": "Valaki regisztrált a te Kódoddal!",
"Server Creation Error": "Hiba a szerver készítése közben",
"Your servers have been suspended!": "A szervered fel lett függesztve!",
"To automatically re-enable your server\/s, you need to purchase more credits.": "A szervered\/szervereid autómatikus újraengedélyezéséhez Kreditet kell vásárolnod.",
"To automatically re-enable your server/s, you need to purchase more credits.": "A szervered/szervereid autómatikus újraengedélyezéséhez Kreditet kell vásárolnod.",
"Purchase credits": "Kreditek vásárlása",
"If you have any questions please let us know.": "Ha kérdésed van, kérjük fordulj hozzánk.",
"Regards": "Üdvözlettel",
@ -93,7 +93,7 @@
"Getting started!": "Kezdhetjük!",
"Welcome to our dashboard": "Üdvözlünk az Irányítópultban",
"Verification": "Hitelesítés",
"You can verify your e-mail address and link\/verify your Discord account.": "Hitelesíteni tudod az email címedet és a Discord fiókodat.",
"You can verify your e-mail address and link/verify your Discord account.": "Hitelesíteni tudod az email címedet és a Discord fiókodat.",
"Information": "Információk",
"This dashboard can be used to create and delete servers": "Ebben az Irányítópultban szervereket tudsz létrehozni és törölni",
"These servers can be used and managed on our pterodactyl panel": "Ezeket a szervereket a Pterodactyl panelben tudod kezelni",
@ -187,7 +187,7 @@
"Default language": "Alapértelmezett nyelv",
"The fallback Language, if something goes wrong": "A tartalék nyelv, ha bármi rosszul működne",
"Datable language": "Keltezhető nyelv",
"The datatables lang-code. <br><strong>Example:<\/strong> en-gb, fr_fr, de_de<br>More Information: ": "Az adattáblák kódnyelve. <br><strong>Például:<\/strong> en-gb, fr_fr, de_de<br>Több információ: ",
"The datatables lang-code. <br><strong>Example:</strong> en-gb, fr_fr, de_de<br>More Information: ": "Az adattáblák kódnyelve. <br><strong>Például:</strong> en-gb, fr_fr, de_de<br>Több információ: ",
"Auto-translate": "Autómatikus fordítás",
"If this is checked, the Dashboard will translate itself to the Clients language, if available": "Ha be van kapcsolva, akkor az Irányítópult autómatikusan le lesz fordítva a Kliens által használt nyelvre, ha az elérhető",
"Client Language-Switch": "Kliens nyelv váltás",
@ -243,9 +243,9 @@
"Charges the first hour worth of credits upon creating a server.": "Első óra kifizetése szerver létrehozásnál.",
"Credits Display Name": "Kredit megnevezése",
"PHPMyAdmin URL": "PHPMyAdmin Hivatkozás",
"Enter the URL to your PHPMyAdmin installation. <strong>Without a trailing slash!<\/strong>": "Írd be a hivatkozást a PHPMyAdmin telepítéséhez. <strong>A zárjó perjel nélkül!<\/strong>",
"Enter the URL to your PHPMyAdmin installation. <strong>Without a trailing slash!</strong>": "Írd be a hivatkozást a PHPMyAdmin telepítéséhez. <strong>A zárjó perjel nélkül!</strong>",
"Pterodactyl URL": "Pterodactyl Hivatkozás",
"Enter the URL to your Pterodactyl installation. <strong>Without a trailing slash!<\/strong>": "Írd be a hivatkozást a Pterodactyl telepítéséhez. <strong>A zárjó perjel nélkül!<\/strong>",
"Enter the URL to your Pterodactyl installation. <strong>Without a trailing slash!</strong>": "Írd be a hivatkozást a Pterodactyl telepítéséhez. <strong>A zárjó perjel nélkül!</strong>",
"Pterodactyl API Key": "Pterodactyl API Kulcs",
"Enter the API Key to your Pterodactyl installation.": "Írd be az API Kulcsot a Pterodactyl telepítéséhez.",
"Force Discord verification": "Discord hitelesítés kötelezése",
@ -316,7 +316,7 @@
"A voucher can only be used one time per user. Uses specifies the number of different users that can use this voucher.": "Az utalványt egy felhasználó csak egyszer használhatja fel. Ezzel meg tudod adni, hogy hány felhasználó tudja felhasználni az utalványt.",
"Max": "Max",
"Expires at": "Lejárás ideje",
"Used \/ Uses": "Felhasználva \/ Felhasználások száma",
"Used / Uses": "Felhasználva / Felhasználások száma",
"Expires": "Lejár",
"Sign in to start your session": "Jelentkezz be a munkamenet elindításához",
"Password": "Jelszó",
@ -388,7 +388,7 @@
"No nodes have been linked!": "Nem lett csomópont hozzácsatolva!",
"No nests available!": "Nincs elérhető fészek!",
"No eggs have been linked!": "Nem lett tojás hozzácsatolva!",
"Software \/ Games": "Szoftver \/ Játékok",
"Software / Games": "Szoftver / Játékok",
"Please select software ...": "Szoftver kiválasztása ...",
"---": "---",
"Specification ": "Specifikációk ",
@ -447,6 +447,8 @@
"Notes": "Jegyzetek",
"Amount in words": "Mennyiség szavakban",
"Please pay until": "Fizetési határidő",
"Upgrading/Downgrading your server will reset your billing cycle to now. Your overpayed Credits will be refunded. The price for the new billing cycle will be withdrawed": "A szerver frissítése / lefrissítése visszaállítja a számlázási ciklust az aktuálisra. A túlfizetett Kreditet visszatérítjük. A számlázási ciklus új ára lesz kivonva",
"Caution": "Figyelem",
"cs": "Cseh",
"de": "Német",
"en": "Angol",

View file

@ -81,7 +81,7 @@
"Someone registered using your Code!": "Someone registered using your Code!",
"Server Creation Error": "Errore di creazione del server",
"Your servers have been suspended!": "I tuoi server sono stati sospesi!",
"To automatically re-enable your server\/s, you need to purchase more credits.": "Per ri-abilitare i tuoi server automaticamente, devi acquistare più crediti.",
"To automatically re-enable your server/s, you need to purchase more credits.": "Per ri-abilitare i tuoi server automaticamente, devi acquistare più crediti.",
"Purchase credits": "Acquista crediti",
"If you have any questions please let us know.": "Se hai una domanda faccelo sapere.",
"Regards": "Cordialmente",
@ -93,7 +93,7 @@
"Getting started!": "Come iniziare!",
"Welcome to our dashboard": "Welcome to our dashboard",
"Verification": "Verification",
"You can verify your e-mail address and link\/verify your Discord account.": "You can verify your e-mail address and link\/verify your Discord account.",
"You can verify your e-mail address and link/verify your Discord account.": "You can verify your e-mail address and link/verify your Discord account.",
"Information": "Information",
"This dashboard can be used to create and delete servers": "This dashboard can be used to create and delete servers",
"These servers can be used and managed on our pterodactyl panel": "These servers can be used and managed on our pterodactyl panel",
@ -187,7 +187,7 @@
"Default language": "Lingua predefinita",
"The fallback Language, if something goes wrong": "La lingua secondaria, se qualcosa va storto",
"Datable language": "Datable language",
"The datatables lang-code. <br><strong>Example:<\/strong> en-gb, fr_fr, de_de<br>More Information: ": "Il lang-code dei datatables. <br><strong>Esempio:<\/strong> en-gb, fr_fr, de_de<br>Piu informazioni: ",
"The datatables lang-code. <br><strong>Example:</strong> en-gb, fr_fr, de_de<br>More Information: ": "Il lang-code dei datatables. <br><strong>Esempio:</strong> en-gb, fr_fr, de_de<br>Piu informazioni: ",
"Auto-translate": "Traduzione-automatica",
"If this is checked, the Dashboard will translate itself to the Clients language, if available": "Se questo è abilitato la dashboard si traducerà automaticamente alla lingua dei clienti, se disponibile",
"Client Language-Switch": "Switch delle lingue dei clienti",
@ -243,9 +243,9 @@
"Charges the first hour worth of credits upon creating a server.": "Addebita la prima ora in crediti alla creazione di un server.",
"Credits Display Name": "Nome di Visualizzazione dei Crediti",
"PHPMyAdmin URL": "URL PHPMyAdmin",
"Enter the URL to your PHPMyAdmin installation. <strong>Without a trailing slash!<\/strong>": "Inserisci l'URL alla tua installazione di PHPMyAdmin. <strong>Senza lo slash finale!<\/strong>",
"Enter the URL to your PHPMyAdmin installation. <strong>Without a trailing slash!</strong>": "Inserisci l'URL alla tua installazione di PHPMyAdmin. <strong>Senza lo slash finale!</strong>",
"Pterodactyl URL": "URL di Pterodactyl",
"Enter the URL to your Pterodactyl installation. <strong>Without a trailing slash!<\/strong>": "Inserisci l'URL alla tua installazione di Pterodactyl. <strong>Senza un trailing slash!<\/strong>",
"Enter the URL to your Pterodactyl installation. <strong>Without a trailing slash!</strong>": "Inserisci l'URL alla tua installazione di Pterodactyl. <strong>Senza un trailing slash!</strong>",
"Pterodactyl API Key": "Chiave API di Pterodactyl",
"Enter the API Key to your Pterodactyl installation.": "Inserisci la Chiave API alla tua installazione di Pterodactyl.",
"Force Discord verification": "Forza la verifica di Discord",
@ -316,7 +316,7 @@
"A voucher can only be used one time per user. Uses specifies the number of different users that can use this voucher.": "Un voucher può essere utilizzato solo una volta per utente. Il numero di usi specifica il numero di utenti diversi che possono utilizzare questo voucher.",
"Max": "Massimo",
"Expires at": "Scade il",
"Used \/ Uses": "Usato \/ Utilizzi",
"Used / Uses": "Usato / Utilizzi",
"Expires": "Scade",
"Sign in to start your session": "Accedi per iniziare la sessione",
"Password": "Password",
@ -388,7 +388,7 @@
"No nodes have been linked!": "Nessun nodo è stato connesso!",
"No nests available!": "Nessun nido (nest) disponibile!",
"No eggs have been linked!": "Nessun uovo (egg) è stato connesso!",
"Software \/ Games": "Software \/ Giochi",
"Software / Games": "Software / Giochi",
"Please select software ...": "Per favore selezione il software...",
"---": "---",
"Specification ": "Specifiche ",
@ -447,6 +447,8 @@
"Notes": "Note",
"Amount in words": "Numero in parole",
"Please pay until": "Per favore paga fino",
"Upgrading/Downgrading your server will reset your billing cycle to now. Your overpayed Credits will be refunded. The price for the new billing cycle will be withdrawed": "Laggiornamento / riduzione del tuo server reimposterà il tuo ciclo di fatturazione a ora. I tuoi crediti in eccesso saranno rimborsati. Il prezzo per il nuovo ciclo di fatturazione sarà prelevato",
"Caution": "Attenzione",
"cs": "Ceco",
"de": "Tedesco",
"en": "Inglese",

View file

@ -81,7 +81,7 @@
"Someone registered using your Code!": "Someone registered using your Code!",
"Server Creation Error": "Fout bij het maken van de server",
"Your servers have been suspended!": "Uw servers zijn opgeschort!",
"To automatically re-enable your server\/s, you need to purchase more credits.": "Om uw server(s) automatisch opnieuw in te schakelen, moet u meer credits kopen.",
"To automatically re-enable your server/s, you need to purchase more credits.": "Om uw server(s) automatisch opnieuw in te schakelen, moet u meer credits kopen.",
"Purchase credits": "Credits kopen",
"If you have any questions please let us know.": "Als u vragen heeft, laat het ons dan weten.",
"Regards": "Met vriendelijke groet",
@ -93,7 +93,7 @@
"Getting started!": "Aan de slag!",
"Welcome to our dashboard": "Welkom bij ons dashboard",
"Verification": "Verificatie",
"You can verify your e-mail address and link\/verify your Discord account.": "You can verify your e-mail address and link\/verify your Discord account.",
"You can verify your e-mail address and link/verify your Discord account.": "You can verify your e-mail address and link/verify your Discord account.",
"Information": "Informatie",
"This dashboard can be used to create and delete servers": "This dashboard can be used to create and delete servers",
"These servers can be used and managed on our pterodactyl panel": "These servers can be used and managed on our pterodactyl panel",
@ -187,7 +187,7 @@
"Default language": "Standaard taal",
"The fallback Language, if something goes wrong": "De terugval-taal, als er iets misgaat",
"Datable language": "Dateerbare taal",
"The datatables lang-code. <br><strong>Example:<\/strong> en-gb, fr_fr, de_de<br>More Information: ": "De datatabellen lang-code. <br><strong>Voorbeeld:<\/strong> nl-gb, fr_fr, de_de<br>Meer informatie: ",
"The datatables lang-code. <br><strong>Example:</strong> en-gb, fr_fr, de_de<br>More Information: ": "De datatabellen lang-code. <br><strong>Voorbeeld:</strong> nl-gb, fr_fr, de_de<br>Meer informatie: ",
"Auto-translate": "Automatisch vertalen",
"If this is checked, the Dashboard will translate itself to the Clients language, if available": "Als dit is aangevinkt, zal het dashboard zichzelf vertalen naar de taal van de klant, indien beschikbaar",
"Client Language-Switch": "Klant Taal-Switch",
@ -243,9 +243,9 @@
"Charges the first hour worth of credits upon creating a server.": "Brengt het eerste uur aan credits in rekening bij het maken van een server.",
"Credits Display Name": "Weergavenaam tegoed",
"PHPMyAdmin URL": "PHPMyAdmin-URL",
"Enter the URL to your PHPMyAdmin installation. <strong>Without a trailing slash!<\/strong>": "Voer de URL naar uw PHPMyAdmin-installatie in. <strong>Zonder een slash!<\/strong>",
"Enter the URL to your PHPMyAdmin installation. <strong>Without a trailing slash!</strong>": "Voer de URL naar uw PHPMyAdmin-installatie in. <strong>Zonder een slash!</strong>",
"Pterodactyl URL": "Pterodactyl URL",
"Enter the URL to your Pterodactyl installation. <strong>Without a trailing slash!<\/strong>": "Voer de URL naar uw Pterodactyl-installatie in. <strong>Zonder een slash!<\/strong>",
"Enter the URL to your Pterodactyl installation. <strong>Without a trailing slash!</strong>": "Voer de URL naar uw Pterodactyl-installatie in. <strong>Zonder een slash!</strong>",
"Pterodactyl API Key": "Pterodactyl API sleutel",
"Enter the API Key to your Pterodactyl installation.": "Voer de API-sleutel in voor uw Pterodactyl-installatie.",
"Force Discord verification": "Forceer Discord Verificatie",
@ -316,7 +316,7 @@
"A voucher can only be used one time per user. Uses specifies the number of different users that can use this voucher.": "Een voucher kan slechts één keer per gebruiker worden gebruikt. Gebruik geeft het aantal verschillende gebruikers aan dat deze voucher kan gebruiken.",
"Max": "Maximum",
"Expires at": "Verloopt om",
"Used \/ Uses": "Gebruikt \/ Toepassingen",
"Used / Uses": "Gebruikt / Toepassingen",
"Expires": "Verloopt",
"Sign in to start your session": "Login om te beginnen",
"Password": "Wachtwoord",
@ -388,7 +388,7 @@
"No nodes have been linked!": "Er zijn geen nodes gekoppeld!",
"No nests available!": "Er zijn geen nesten beschikbaar!",
"No eggs have been linked!": "Geen eieren gekoppeld!",
"Software \/ Games": "Software \/ Spellen",
"Software / Games": "Software / Spellen",
"Please select software ...": "Selecteer software...",
"---": "---",
"Specification ": "Specificatie ",
@ -447,6 +447,8 @@
"Notes": "Notities",
"Amount in words": "Hoeveelheid in eenheden",
"Please pay until": "Gelieve te betalen tot",
"Upgrading/Downgrading your server will reset your billing cycle to now. Your overpayed Credits will be refunded. The price for the new billing cycle will be withdrawed": "Upgraden/downgraden van uw server zal uw facturatiecyclus resetten naar nu. Uw overbetalen krediet zal worden terugbetaald. De prijs voor de nieuwe facturatiecyclus zal worden afgeschreven",
"Caution": "Let op",
"cs": "Tsjechisch",
"de": "Duits",
"en": "Engels",

View file

@ -81,7 +81,7 @@
"Someone registered using your Code!": "Someone registered using your Code!",
"Server Creation Error": "Błąd podczas tworzenia serwera",
"Your servers have been suspended!": "Serwery zostały zawieszone!",
"To automatically re-enable your server\/s, you need to purchase more credits.": "Aby reaktywować swoje serwery, musisz kupić więcej kredytów.",
"To automatically re-enable your server/s, you need to purchase more credits.": "Aby reaktywować swoje serwery, musisz kupić więcej kredytów.",
"Purchase credits": "Zakup kredyty",
"If you have any questions please let us know.": "W razie jakichkolwiek pytań prosimy o kontakt.",
"Regards": "Z poważaniem",
@ -93,7 +93,7 @@
"Getting started!": "Zaczynajmy!",
"Welcome to our dashboard": "Welcome to our dashboard",
"Verification": "Verification",
"You can verify your e-mail address and link\/verify your Discord account.": "You can verify your e-mail address and link\/verify your Discord account.",
"You can verify your e-mail address and link/verify your Discord account.": "You can verify your e-mail address and link/verify your Discord account.",
"Information": "Information",
"This dashboard can be used to create and delete servers": "This dashboard can be used to create and delete servers",
"These servers can be used and managed on our pterodactyl panel": "These servers can be used and managed on our pterodactyl panel",
@ -187,7 +187,7 @@
"Default language": "Domyślny język",
"The fallback Language, if something goes wrong": "The fallback Language, if something goes wrong",
"Datable language": "Domyślny język",
"The datatables lang-code. <br><strong>Example:<\/strong> en-gb, fr_fr, de_de<br>More Information: ": "The datatables lang-code. <br><strong>Example:<\/strong> en-gb, fr_fr, de_de<br>More Information: ",
"The datatables lang-code. <br><strong>Example:</strong> en-gb, fr_fr, de_de<br>More Information: ": "The datatables lang-code. <br><strong>Example:</strong> en-gb, fr_fr, de_de<br>More Information: ",
"Auto-translate": "Automatyczne tłumaczenie",
"If this is checked, the Dashboard will translate itself to the Clients language, if available": "If this is checked, the Dashboard will translate itself to the Clients language, if available",
"Client Language-Switch": "Client Language-Switch",
@ -243,9 +243,9 @@
"Charges the first hour worth of credits upon creating a server.": "Charges the first hour worth of credits upon creating a server.",
"Credits Display Name": "Nazwa Waluty",
"PHPMyAdmin URL": "PHPMyAdmin URL",
"Enter the URL to your PHPMyAdmin installation. <strong>Without a trailing slash!<\/strong>": "Enter the URL to your PHPMyAdmin installation. <strong>Without a trailing slash!<\/strong>",
"Enter the URL to your PHPMyAdmin installation. <strong>Without a trailing slash!</strong>": "Enter the URL to your PHPMyAdmin installation. <strong>Without a trailing slash!</strong>",
"Pterodactyl URL": "URL Pterodactyl Panelu",
"Enter the URL to your Pterodactyl installation. <strong>Without a trailing slash!<\/strong>": "Enter the URL to your Pterodactyl installation. <strong>Without a trailing slash!<\/strong>",
"Enter the URL to your Pterodactyl installation. <strong>Without a trailing slash!</strong>": "Enter the URL to your Pterodactyl installation. <strong>Without a trailing slash!</strong>",
"Pterodactyl API Key": "Klucz API Pterodactyl panelu",
"Enter the API Key to your Pterodactyl installation.": "Enter the API Key to your Pterodactyl installation.",
"Force Discord verification": "Force Discord verification",
@ -316,7 +316,7 @@
"A voucher can only be used one time per user. Uses specifies the number of different users that can use this voucher.": "Kupon może zostać zrealizowany tylko raz przez użytkownika. „Użycie” określa liczbę użytkowników, którzy mogą zrealizować ten kupon.",
"Max": "Max",
"Expires at": "Wygasa",
"Used \/ Uses": "Użyto \/ Użyć",
"Used / Uses": "Użyto / Użyć",
"Expires": "Wygasa",
"Sign in to start your session": "Zaloguj się, aby rozpocząć sesję",
"Password": "Hasło",
@ -388,7 +388,7 @@
"No nodes have been linked!": "Żaden węzeł nie został połączony!",
"No nests available!": "Brak dostępnych gniazd!",
"No eggs have been linked!": "Jajka nie zostały połaczone!",
"Software \/ Games": "Oprogramowanie \/ gry",
"Software / Games": "Oprogramowanie / gry",
"Please select software ...": "Proszę wybrać oprogramowanie...",
"---": "---",
"Specification ": "Specyfikacja ",
@ -447,6 +447,8 @@
"Notes": "Uwagi",
"Amount in words": "Wszystkie słowa",
"Please pay until": "Zapłać w ciągu:",
"Upgrading/Downgrading your server will reset your billing cycle to now. Your overpayed Credits will be refunded. The price for the new billing cycle will be withdrawed": "Aktualizacja / degradacja twojego serwera spowoduje zresetowanie cyklu rozliczeniowego do teraz. Twoje nadpłacone kredyty zostaną zwrócone. Cena za nowy cykl rozliczeniowy zostanie pobrana",
"Caution": "Uwaga",
"cs": "Czeski",
"de": "Niemiecki",
"en": "Angielski",

View file

@ -81,7 +81,7 @@
"Someone registered using your Code!": "Alguém se registrou usando seu código!",
"Server Creation Error": "Erro de criação do servidor",
"Your servers have been suspended!": "Os seus servidores foram suspensos!",
"To automatically re-enable your server\/s, you need to purchase more credits.": "Para reativar automaticamente o seu(s) servidor(es), é preciso comprar mais créditos.",
"To automatically re-enable your server/s, you need to purchase more credits.": "Para reativar automaticamente o seu(s) servidor(es), é preciso comprar mais créditos.",
"Purchase credits": "Compra de créditos",
"If you have any questions please let us know.": "Se tiver alguma dúvida, por favor, nos avise.",
"Regards": "Cumprimentos,",
@ -93,7 +93,7 @@
"Getting started!": "Começar",
"Welcome to our dashboard": "Bem-vindo ao nosso painel",
"Verification": "Verificação",
"You can verify your e-mail address and link\/verify your Discord account.": "Você pode verificar o seu endereço de e-mail e link",
"You can verify your e-mail address and link/verify your Discord account.": "Você pode verificar o seu endereço de e-mail e link",
"Information": "Informações",
"This dashboard can be used to create and delete servers": "Este painel pode ser usado para criar e excluir servidores",
"These servers can be used and managed on our pterodactyl panel": "Esses servidores podem ser usados e gerenciados no nosso painel pterodactyl ",
@ -187,7 +187,7 @@
"Default language": "Idioma padrão",
"The fallback Language, if something goes wrong": "Um idioma padrão, se algo der errado",
"Datable language": "Idioma de dados",
"The datatables lang-code. <br><strong>Example:<\/strong> en-gb, fr_fr, de_de<br>More Information: ": "Os lang-codes disponíveis. <br><strong>Exemplo:<\/strong> en-gb, fr_fr, de_de<br>Mais informações:",
"The datatables lang-code. <br><strong>Example:</strong> en-gb, fr_fr, de_de<br>More Information: ": "Os lang-codes disponíveis. <br><strong>Exemplo:</strong> en-gb, fr_fr, de_de<br>Mais informações:",
"Auto-translate": "Traduzir Automaticamente",
"If this is checked, the Dashboard will translate itself to the Clients language, if available": "Se isto for ativado, o Painel se traduzirá para o idioma do cliente, se disponível.",
"Client Language-Switch": "Trocar Idioma do cliente",
@ -243,9 +243,9 @@
"Charges the first hour worth of credits upon creating a server.": "Cobra a primeira hora de créditos ao criar um servidor.",
"Credits Display Name": "Nome de exibição dos créditos",
"PHPMyAdmin URL": "PHPMyAdmin URL",
"Enter the URL to your PHPMyAdmin installation. <strong>Without a trailing slash!<\/strong>": "Insira o URL do seu PHPMyAdmin. <strong>Sem barra de arrasto!<\/strong>",
"Enter the URL to your PHPMyAdmin installation. <strong>Without a trailing slash!</strong>": "Insira o URL do seu PHPMyAdmin. <strong>Sem barra de arrasto!</strong>",
"Pterodactyl URL": "Pterodactyl URL",
"Enter the URL to your Pterodactyl installation. <strong>Without a trailing slash!<\/strong>": "Insira o URL do seu pterodactyl. <strong>Sem barra de arrasto!<\/strong>",
"Enter the URL to your Pterodactyl installation. <strong>Without a trailing slash!</strong>": "Insira o URL do seu pterodactyl. <strong>Sem barra de arrasto!</strong>",
"Pterodactyl API Key": "Chave API pterodactyl",
"Enter the API Key to your Pterodactyl installation.": "Insira a chave API do seu painel pterodactyl.",
"Force Discord verification": "Forçar verificação do Discord",
@ -316,7 +316,7 @@
"A voucher can only be used one time per user. Uses specifies the number of different users that can use this voucher.": "Um vale só pode ser usado uma vez por utilizador. Os usos especificam o número de diferentes utilizadores que podem usar este comprovante.",
"Max": "Máximo",
"Expires at": "Expira em",
"Used \/ Uses": "Usados \/ Usos",
"Used / Uses": "Usados / Usos",
"Expires": "Expira",
"Sign in to start your session": "Entre para iniciar a sua sessão",
"Password": "Senha",
@ -388,7 +388,7 @@
"No nodes have been linked!": "Nenhum nó foi ligado!",
"No nests available!": "Não há ninhos disponíveis!",
"No eggs have been linked!": "Nenhum ovo foi ligado!",
"Software \/ Games": "“Software” \/ Jogos",
"Software / Games": "“Software” / Jogos",
"Please select software ...": "Por favor, selecione o “software”...",
"---": "—",
"Specification ": "Especificação",
@ -447,6 +447,8 @@
"Notes": "Notas",
"Amount in words": "Quantia em palavras",
"Please pay until": "Favor pagar até",
"Upgrading/Downgrading your server will reset your billing cycle to now. Your overpayed Credits will be refunded. The price for the new billing cycle will be withdrawed": "Atualizar / Reduzir o seu servidor irá redefinir o seu ciclo de faturação para agora. Os seus créditos pagos a mais serão reembolsados. O preço para o novo ciclo de faturação será debitado",
"Caution": "Cuidado",
"cs": "Tcheco",
"de": "Alemão",
"en": "Inglês",

View file

@ -81,7 +81,7 @@
"Someone registered using your Code!": "Someone registered using your Code!",
"Server Creation Error": "Server Creation Error",
"Your servers have been suspended!": "Your servers have been suspended!",
"To automatically re-enable your server\/s, you need to purchase more credits.": "To automatically re-enable your server\/s, you need to purchase more credits.",
"To automatically re-enable your server/s, you need to purchase more credits.": "To automatically re-enable your server/s, you need to purchase more credits.",
"Purchase credits": "Purchase credits",
"If you have any questions please let us know.": "If you have any questions please let us know.",
"Regards": "Regards",
@ -93,7 +93,7 @@
"Getting started!": "Getting started!",
"Welcome to our dashboard": "Welcome to our dashboard",
"Verification": "Verification",
"You can verify your e-mail address and link\/verify your Discord account.": "You can verify your e-mail address and link\/verify your Discord account.",
"You can verify your e-mail address and link/verify your Discord account.": "You can verify your e-mail address and link/verify your Discord account.",
"Information": "Information",
"This dashboard can be used to create and delete servers": "This dashboard can be used to create and delete servers",
"These servers can be used and managed on our pterodactyl panel": "These servers can be used and managed on our pterodactyl panel",
@ -187,7 +187,7 @@
"Default language": "Default language",
"The fallback Language, if something goes wrong": "The fallback Language, if something goes wrong",
"Datable language": "Datable language",
"The datatables lang-code. <br><strong>Example:<\/strong> en-gb, fr_fr, de_de<br>More Information: ": "The datatables lang-code. <br><strong>Example:<\/strong> en-gb, fr_fr, de_de<br>More Information: ",
"The datatables lang-code. <br><strong>Example:</strong> en-gb, fr_fr, de_de<br>More Information: ": "The datatables lang-code. <br><strong>Example:</strong> en-gb, fr_fr, de_de<br>More Information: ",
"Auto-translate": "Auto-translate",
"If this is checked, the Dashboard will translate itself to the Clients language, if available": "If this is checked, the Dashboard will translate itself to the Clients language, if available",
"Client Language-Switch": "Client Language-Switch",
@ -243,9 +243,9 @@
"Charges the first hour worth of credits upon creating a server.": "Charges the first hour worth of credits upon creating a server.",
"Credits Display Name": "Credits Display Name",
"PHPMyAdmin URL": "PHPMyAdmin URL",
"Enter the URL to your PHPMyAdmin installation. <strong>Without a trailing slash!<\/strong>": "Enter the URL to your PHPMyAdmin installation. <strong>Without a trailing slash!<\/strong>",
"Enter the URL to your PHPMyAdmin installation. <strong>Without a trailing slash!</strong>": "Enter the URL to your PHPMyAdmin installation. <strong>Without a trailing slash!</strong>",
"Pterodactyl URL": "Pterodactyl URL",
"Enter the URL to your Pterodactyl installation. <strong>Without a trailing slash!<\/strong>": "Enter the URL to your Pterodactyl installation. <strong>Without a trailing slash!<\/strong>",
"Enter the URL to your Pterodactyl installation. <strong>Without a trailing slash!</strong>": "Enter the URL to your Pterodactyl installation. <strong>Without a trailing slash!</strong>",
"Pterodactyl API Key": "Pterodactyl API Key",
"Enter the API Key to your Pterodactyl installation.": "Enter the API Key to your Pterodactyl installation.",
"Force Discord verification": "Force Discord verification",
@ -316,7 +316,7 @@
"A voucher can only be used one time per user. Uses specifies the number of different users that can use this voucher.": "A voucher can only be used one time per user. Uses specifies the number of different users that can use this voucher.",
"Max": "Max",
"Expires at": "Expires at",
"Used \/ Uses": "Used \/ Uses",
"Used / Uses": "Used / Uses",
"Expires": "Expires",
"Sign in to start your session": "Sign in to start your session",
"Password": "Password",
@ -388,7 +388,7 @@
"No nodes have been linked!": "No nodes have been linked!",
"No nests available!": "No nests available!",
"No eggs have been linked!": "No eggs have been linked!",
"Software \/ Games": "Software \/ Games",
"Software / Games": "Software / Games",
"Please select software ...": "Please select software ...",
"---": "---",
"Specification ": "Specification ",
@ -447,6 +447,8 @@
"Notes": "Notes",
"Amount in words": "Amount in words",
"Please pay until": "Please pay until",
"Upgrading/Downgrading your server will reset your billing cycle to now. Your overpayed Credits will be refunded. The price for the new billing cycle will be withdrawed": "Upgrading/Downgrading your server will reset your billing cycle to now. Your overpayed Credits will be refunded. The price for the new billing cycle will be withdrawed",
"Caution": "Caution",
"cs": "Czech",
"de": "German",
"en": "English",

View file

@ -39,7 +39,7 @@
"Store item has been removed!": "Товар в магазине был удален!",
"link has been created!": "Ссылка была создана!",
"link has been updated!": "Ссылка была обновлена!",
"product has been removed!": "Продукт\/Товар был удалён!",
"product has been removed!": "Продукт/Товар был удалён!",
"User does not exists on pterodactyl's panel": "Пользователь не был найден в панеле птеродактиль",
"user has been removed!": "Пользователь был удален!",
"Notification sent!": "Оповещение отправлено!",
@ -81,7 +81,7 @@
"Someone registered using your Code!": "Someone registered using your Code!",
"Server Creation Error": "Ошибка создание сервера",
"Your servers have been suspended!": "Ваши сервера были заблокированы!",
"To automatically re-enable your server\/s, you need to purchase more credits.": "Чтобы автоматически повторно включить ваш сервер \/ серверы, вам необходимо приобрести больше кредитов.",
"To automatically re-enable your server/s, you need to purchase more credits.": "Чтобы автоматически повторно включить ваш сервер / серверы, вам необходимо приобрести больше кредитов.",
"Purchase credits": "Приобрести кредиты",
"If you have any questions please let us know.": "Пожалуйста, сообщите нам, если у Вас есть какие-либо вопросы.",
"Regards": "С уважением,",
@ -93,7 +93,7 @@
"Getting started!": "Начало работы!",
"Welcome to our dashboard": "Welcome to our dashboard",
"Verification": "Verification",
"You can verify your e-mail address and link\/verify your Discord account.": "You can verify your e-mail address and link\/verify your Discord account.",
"You can verify your e-mail address and link/verify your Discord account.": "You can verify your e-mail address and link/verify your Discord account.",
"Information": "Information",
"This dashboard can be used to create and delete servers": "This dashboard can be used to create and delete servers",
"These servers can be used and managed on our pterodactyl panel": "These servers can be used and managed on our pterodactyl panel",
@ -187,7 +187,7 @@
"Default language": "Язык по умолчанию",
"The fallback Language, if something goes wrong": "Резервный язык, если что-то пойдет не так",
"Datable language": "Датадатируемый язык",
"The datatables lang-code. <br><strong>Example:<\/strong> en-gb, fr_fr, de_de<br>More Information: ": "Языковой код таблицы данных. <br><strong>Пример:<\/strong> en-gb, fr_fr, de_de<br>Дополнительная информация:",
"The datatables lang-code. <br><strong>Example:</strong> en-gb, fr_fr, de_de<br>More Information: ": "Языковой код таблицы данных. <br><strong>Пример:</strong> en-gb, fr_fr, de_de<br>Дополнительная информация:",
"Auto-translate": "Автоперевод",
"If this is checked, the Dashboard will translate itself to the Clients language, if available": "Если этот флажок установлен, информационная панель будет переводиться на язык клиентов, если он доступен",
"Client Language-Switch": "Переключение языка клиента",
@ -243,9 +243,9 @@
"Charges the first hour worth of credits upon creating a server.": "Взимает кредиты за первый час при создании сервера.",
"Credits Display Name": "Отображаемое имя кредитов",
"PHPMyAdmin URL": "URL-адрес PHPMyAdmin",
"Enter the URL to your PHPMyAdmin installation. <strong>Without a trailing slash!<\/strong>": "Введите URL-адрес вашей установки PHPMyAdmin. <strong>Без косой черты в конце!<\/strong>",
"Enter the URL to your PHPMyAdmin installation. <strong>Without a trailing slash!</strong>": "Введите URL-адрес вашей установки PHPMyAdmin. <strong>Без косой черты в конце!</strong>",
"Pterodactyl URL": "URL-адрес птеродактиля",
"Enter the URL to your Pterodactyl installation. <strong>Without a trailing slash!<\/strong>": "Введите URL-адрес вашей установки Pterodactyl. <strong>Без косой черты в конце!<\/strong>",
"Enter the URL to your Pterodactyl installation. <strong>Without a trailing slash!</strong>": "Введите URL-адрес вашей установки Pterodactyl. <strong>Без косой черты в конце!</strong>",
"Pterodactyl API Key": "API-ключ птеродактиля",
"Enter the API Key to your Pterodactyl installation.": "Введите ключ API для установки Pterodactyl.",
"Force Discord verification": "Требуется верификация в Discord",
@ -316,7 +316,7 @@
"A voucher can only be used one time per user. Uses specifies the number of different users that can use this voucher.": "Промокод можно использовать только один раз для каждого пользователя. Пользователь указывает количество различных пользователей, которые могут использовать этот промокод.",
"Max": "Макс.",
"Expires at": "Срок действия до",
"Used \/ Uses": "Используется \/ Использует",
"Used / Uses": "Используется / Использует",
"Expires": "Истекает",
"Sign in to start your session": "Войдите, чтобы начать сессию",
"Password": "Пароль",
@ -388,7 +388,7 @@
"No nodes have been linked!": "Ни один узел не был связан!",
"No nests available!": "Гнезда в наличии нет!",
"No eggs have been linked!": "Группы были связаны!",
"Software \/ Games": "Программное обеспечение \/ Игры",
"Software / Games": "Программное обеспечение / Игры",
"Please select software ...": "Пожалуйста, выберите программное обеспечение...",
"---": "---",
"Specification ": "Характеристики ",
@ -447,6 +447,8 @@
"Notes": "Примечания",
"Amount in words": "Сумма прописью",
"Please pay until": "Пожалуйста, платите до",
"Upgrading/Downgrading your server will reset your billing cycle to now. Your overpayed Credits will be refunded. The price for the new billing cycle will be withdrawed": "Обновление/Уменьшение вашего сервера сбросит ваш цикл оплаты на текущий. Ваши переплаты будут возвращены. Цена за новый цикл оплаты будет списана",
"Caution": "Внимание",
"cs": "Czech",
"de": "German",
"en": "English",

View file

@ -80,7 +80,7 @@
"User ID": "User ID",
"Server Creation Error": "Server Creation Error",
"Your servers have been suspended!": "Your servers have been suspended!",
"To automatically re-enable your server\/s, you need to purchase more credits.": "To automatically re-enable your server\/s, you need to purchase more credits.",
"To automatically re-enable your server/s, you need to purchase more credits.": "To automatically re-enable your server/s, you need to purchase more credits.",
"Purchase credits": "Purchase credits",
"If you have any questions please let us know.": "If you have any questions please let us know.",
"Regards": "Regards",
@ -173,7 +173,7 @@
"Default language": "Default language",
"The fallback Language, if something goes wrong": "The fallback Language, if something goes wrong",
"Datable language": "Datable language",
"The datatables lang-code. <br><strong>Example:<\/strong> en-gb, fr_fr, de_de<br>More Information: ": "The datatables lang-code. <br><strong>Example:<\/strong> en-gb, fr_fr, de_de<br>More Information: ",
"The datatables lang-code. <br><strong>Example:</strong> en-gb, fr_fr, de_de<br>More Information: ": "The datatables lang-code. <br><strong>Example:</strong> en-gb, fr_fr, de_de<br>More Information: ",
"Auto-translate": "Auto-translate",
"If this is checked, the Dashboard will translate itself to the Clients language, if available": "If this is checked, the Dashboard will translate itself to the Clients language, if available",
"Client Language-Switch": "Client Language-Switch",
@ -214,9 +214,9 @@
"Charges the first hour worth of credits upon creating a server.": "Charges the first hour worth of credits upon creating a server.",
"Credits Display Name": "Credits Display Name",
"PHPMyAdmin URL": "PHPMyAdmin URL",
"Enter the URL to your PHPMyAdmin installation. <strong>Without a trailing slash!<\/strong>": "Enter the URL to your PHPMyAdmin installation. <strong>Without a trailing slash!<\/strong>",
"Enter the URL to your PHPMyAdmin installation. <strong>Without a trailing slash!</strong>": "Enter the URL to your PHPMyAdmin installation. <strong>Without a trailing slash!</strong>",
"Pterodactyl URL": "Pterodactyl URL",
"Enter the URL to your Pterodactyl installation. <strong>Without a trailing slash!<\/strong>": "Enter the URL to your Pterodactyl installation. <strong>Without a trailing slash!<\/strong>",
"Enter the URL to your Pterodactyl installation. <strong>Without a trailing slash!</strong>": "Enter the URL to your Pterodactyl installation. <strong>Without a trailing slash!</strong>",
"Pterodactyl API Key": "Pterodactyl API Key",
"Enter the API Key to your Pterodactyl installation.": "Enter the API Key to your Pterodactyl installation.",
"Force Discord verification": "Force Discord verification",
@ -284,7 +284,7 @@
"A voucher can only be used one time per user. Uses specifies the number of different users that can use this voucher.": "A voucher can only be used one time per user. Uses specifies the number of different users that can use this voucher.",
"Max": "Max",
"Expires at": "Expires at",
"Used \/ Uses": "Used \/ Uses",
"Used / Uses": "Used / Uses",
"Expires": "Expires",
"Sign in to start your session": "Sign in to start your session",
"Password": "Password",
@ -354,7 +354,7 @@
"No nodes have been linked!": "No nodes have been linked!",
"No nests available!": "No nests available!",
"No eggs have been linked!": "No eggs have been linked!",
"Software \/ Games": "Software \/ Games",
"Software / Games": "Software / Games",
"Please select software ...": "Please select software ...",
"---": "---",
"Specification ": "Specification ",
@ -430,6 +430,8 @@
"The Language of the Datatables. Grab the Language-Codes from here": "The Language of the Datatables. Grab the Language-Codes from here",
"Let the Client change the Language": "Let the Client change the Language",
"Icons updated!": "Icons updated!",
"Upgrading/Downgrading your server will reset your billing cycle to now. Your overpayed Credits will be refunded. The price for the new billing cycle will be withdrawed": "Upgrading/Downgrading your server will reset your billing cycle to now. Your overpayed Credits will be refunded. The price for the new billing cycle will be withdrawed",
"Caution": "Caution",
"cs": "Czech",
"de": "German",
"en": "English",

View file

@ -81,7 +81,7 @@
"Someone registered using your Code!": "Someone registered using your Code!",
"Server Creation Error": "Server Creation Error",
"Your servers have been suspended!": "Your servers have been suspended!",
"To automatically re-enable your server\/s, you need to purchase more credits.": "To automatically re-enable your server\/s, you need to purchase more credits.",
"To automatically re-enable your server/s, you need to purchase more credits.": "To automatically re-enable your server/s, you need to purchase more credits.",
"Purchase credits": "Purchase credits",
"If you have any questions please let us know.": "If you have any questions please let us know.",
"Regards": "Regards",
@ -93,7 +93,7 @@
"Getting started!": "Getting started!",
"Welcome to our dashboard": "Welcome to our dashboard",
"Verification": "Verification",
"You can verify your e-mail address and link\/verify your Discord account.": "You can verify your e-mail address and link\/verify your Discord account.",
"You can verify your e-mail address and link/verify your Discord account.": "You can verify your e-mail address and link/verify your Discord account.",
"Information": "Information",
"This dashboard can be used to create and delete servers": "This dashboard can be used to create and delete servers",
"These servers can be used and managed on our pterodactyl panel": "These servers can be used and managed on our pterodactyl panel",
@ -187,7 +187,7 @@
"Default language": "Default language",
"The fallback Language, if something goes wrong": "The fallback Language, if something goes wrong",
"Datable language": "Datable language",
"The datatables lang-code. <br><strong>Example:<\/strong> en-gb, fr_fr, de_de<br>More Information: ": "The datatables lang-code. <br><strong>Example:<\/strong> en-gb, fr_fr, de_de<br>More Information: ",
"The datatables lang-code. <br><strong>Example:</strong> en-gb, fr_fr, de_de<br>More Information: ": "The datatables lang-code. <br><strong>Example:</strong> en-gb, fr_fr, de_de<br>More Information: ",
"Auto-translate": "Auto-translate",
"If this is checked, the Dashboard will translate itself to the Clients language, if available": "If this is checked, the Dashboard will translate itself to the Clients language, if available",
"Client Language-Switch": "Client Language-Switch",
@ -243,9 +243,9 @@
"Charges the first hour worth of credits upon creating a server.": "Charges the first hour worth of credits upon creating a server.",
"Credits Display Name": "Credits Display Name",
"PHPMyAdmin URL": "PHPMyAdmin URL",
"Enter the URL to your PHPMyAdmin installation. <strong>Without a trailing slash!<\/strong>": "Enter the URL to your PHPMyAdmin installation. <strong>Without a trailing slash!<\/strong>",
"Enter the URL to your PHPMyAdmin installation. <strong>Without a trailing slash!</strong>": "Enter the URL to your PHPMyAdmin installation. <strong>Without a trailing slash!</strong>",
"Pterodactyl URL": "Pterodactyl URL",
"Enter the URL to your Pterodactyl installation. <strong>Without a trailing slash!<\/strong>": "Enter the URL to your Pterodactyl installation. <strong>Without a trailing slash!<\/strong>",
"Enter the URL to your Pterodactyl installation. <strong>Without a trailing slash!</strong>": "Enter the URL to your Pterodactyl installation. <strong>Without a trailing slash!</strong>",
"Pterodactyl API Key": "Pterodactyl API Key",
"Enter the API Key to your Pterodactyl installation.": "Enter the API Key to your Pterodactyl installation.",
"Force Discord verification": "Force Discord verification",
@ -316,7 +316,7 @@
"A voucher can only be used one time per user. Uses specifies the number of different users that can use this voucher.": "A voucher can only be used one time per user. Uses specifies the number of different users that can use this voucher.",
"Max": "Max",
"Expires at": "Expires at",
"Used \/ Uses": "Used \/ Uses",
"Used / Uses": "Used / Uses",
"Expires": "Expires",
"Sign in to start your session": "Sign in to start your session",
"Password": "Password",
@ -388,7 +388,7 @@
"No nodes have been linked!": "No nodes have been linked!",
"No nests available!": "No nests available!",
"No eggs have been linked!": "No eggs have been linked!",
"Software \/ Games": "Software \/ Games",
"Software / Games": "Software / Games",
"Please select software ...": "Please select software ...",
"---": "---",
"Specification ": "Specification ",
@ -447,6 +447,8 @@
"Notes": "Notes",
"Amount in words": "Amount in words",
"Please pay until": "Please pay until",
"Upgrading/Downgrading your server will reset your billing cycle to now. Your overpayed Credits will be refunded. The price for the new billing cycle will be withdrawed": "Aktualizácia alebo deaktualizácia servera resetuje Vašu fakturačnú dobu na aktuálny čas. Vaše nadbytočné kredity budú vrátené. Cena za novú fakturačnú dobu bude odobraná.",
"Caution": "Upozornenie",
"cs": "Czech",
"de": "German",
"en": "English",

View file

@ -81,7 +81,7 @@
"Someone registered using your Code!": "Someone registered using your Code!",
"Server Creation Error": "Greška pri kreiranju servera",
"Your servers have been suspended!": "Vaši serveri su suspendovani!",
"To automatically re-enable your server\/s, you need to purchase more credits.": "Da biste automatski ponovo omogućili svoje servere, potrebno je da kupite još kredita.",
"To automatically re-enable your server/s, you need to purchase more credits.": "Da biste automatski ponovo omogućili svoje servere, potrebno je da kupite još kredita.",
"Purchase credits": "Kupite kredite",
"If you have any questions please let us know.": "Ako imate bilo kakvih pitanja, molimo vas da nas obavestite.",
"Regards": "Pozdravi",
@ -93,7 +93,7 @@
"Getting started!": "Početak!",
"Welcome to our dashboard": "Welcome to our dashboard",
"Verification": "Verification",
"You can verify your e-mail address and link\/verify your Discord account.": "You can verify your e-mail address and link\/verify your Discord account.",
"You can verify your e-mail address and link/verify your Discord account.": "You can verify your e-mail address and link/verify your Discord account.",
"Information": "Information",
"This dashboard can be used to create and delete servers": "This dashboard can be used to create and delete servers",
"These servers can be used and managed on our pterodactyl panel": "These servers can be used and managed on our pterodactyl panel",
@ -187,7 +187,7 @@
"Default language": "Podrazumevani jezik",
"The fallback Language, if something goes wrong": "Sekundarni jezik, u slučaju da bude problema",
"Datable language": "Datable language",
"The datatables lang-code. <br><strong>Example:<\/strong> en-gb, fr_fr, de_de<br>More Information: ": "The datatables lang-code. <br><strong>Example:<\/strong> en-gb, fr_fr, de_de<br>More Information: ",
"The datatables lang-code. <br><strong>Example:</strong> en-gb, fr_fr, de_de<br>More Information: ": "The datatables lang-code. <br><strong>Example:</strong> en-gb, fr_fr, de_de<br>More Information: ",
"Auto-translate": "Automatski prevod",
"If this is checked, the Dashboard will translate itself to the Clients language, if available": "If this is checked, the Dashboard will translate itself to the Clients language, if available",
"Client Language-Switch": "Korisnički izbor za jezik",
@ -243,9 +243,9 @@
"Charges the first hour worth of credits upon creating a server.": "Naplaćuje kredite u vrednosti od prvog sata prilikom kreiranja servera.",
"Credits Display Name": "Ime prikaza kredita",
"PHPMyAdmin URL": "PHPMyAdmin Link",
"Enter the URL to your PHPMyAdmin installation. <strong>Without a trailing slash!<\/strong>": "Unesite URL adresu instalacije PHPMyAdmin. <strong>Bez kose crte!<\/strong>",
"Enter the URL to your PHPMyAdmin installation. <strong>Without a trailing slash!</strong>": "Unesite URL adresu instalacije PHPMyAdmin. <strong>Bez kose crte!</strong>",
"Pterodactyl URL": "Pterodactyl URL",
"Enter the URL to your Pterodactyl installation. <strong>Without a trailing slash!<\/strong>": "Enter the URL to your Pterodactyl installation. <strong>Without a trailing slash!<\/strong>",
"Enter the URL to your Pterodactyl installation. <strong>Without a trailing slash!</strong>": "Enter the URL to your Pterodactyl installation. <strong>Without a trailing slash!</strong>",
"Pterodactyl API Key": "Pterodactyl API Key",
"Enter the API Key to your Pterodactyl installation.": "Enter the API Key to your Pterodactyl installation.",
"Force Discord verification": "Force Discord verification",
@ -316,7 +316,7 @@
"A voucher can only be used one time per user. Uses specifies the number of different users that can use this voucher.": "A voucher can only be used one time per user. Uses specifies the number of different users that can use this voucher.",
"Max": "Maksimalno",
"Expires at": "Ističe",
"Used \/ Uses": "Upotrebljeno \/ Upotrebe",
"Used / Uses": "Upotrebljeno / Upotrebe",
"Expires": "Ističe",
"Sign in to start your session": "Prijavite se da biste započeli sesiju",
"Password": "Lozinka",
@ -388,7 +388,7 @@
"No nodes have been linked!": "Node-ovi nisu povezani!",
"No nests available!": "Nema dostupnih gnezda!",
"No eggs have been linked!": "Jaja nisu povezana!",
"Software \/ Games": "Softver \/ Igrice",
"Software / Games": "Softver / Igrice",
"Please select software ...": "Molimo izaberite softver ...",
"---": "---",
"Specification ": "Specification ",
@ -447,6 +447,8 @@
"Notes": "Napomena",
"Amount in words": "Iznos u rečima",
"Please pay until": "Molimo platite do",
"Upgrading/Downgrading your server will reset your billing cycle to now. Your overpayed Credits will be refunded. The price for the new billing cycle will be withdrawed": "Upgrading/Downgrading your server will reset your billing cycle to now. Your overpayed Credits will be refunded. The price for the new billing cycle will be withdrawed",
"Caution": "Caution",
"cs": "Czech",
"de": "German",
"en": "English",

View file

@ -81,7 +81,7 @@
"Someone registered using your Code!": "Someone registered using your Code!",
"Server Creation Error": "Serverskapande fel",
"Your servers have been suspended!": "Ditt konto har blivit avstängt!",
"To automatically re-enable your server\/s, you need to purchase more credits.": "För att automatiskt återaktivera din server\/s, så måste du köpa mer krediter.",
"To automatically re-enable your server/s, you need to purchase more credits.": "För att automatiskt återaktivera din server/s, så måste du köpa mer krediter.",
"Purchase credits": "Köp krediter",
"If you have any questions please let us know.": "Kontakta oss gärna om du har några eventuella frågor.",
"Regards": "Hälsningar",
@ -93,7 +93,7 @@
"Getting started!": "Kom igång!",
"Welcome to our dashboard": "Welcome to our dashboard",
"Verification": "Verification",
"You can verify your e-mail address and link\/verify your Discord account.": "You can verify your e-mail address and link\/verify your Discord account.",
"You can verify your e-mail address and link/verify your Discord account.": "You can verify your e-mail address and link/verify your Discord account.",
"Information": "Information",
"This dashboard can be used to create and delete servers": "This dashboard can be used to create and delete servers",
"These servers can be used and managed on our pterodactyl panel": "These servers can be used and managed on our pterodactyl panel",
@ -187,7 +187,7 @@
"Default language": "Förvalt språk",
"The fallback Language, if something goes wrong": "Reservspråket, om något går fel",
"Datable language": "Daterbart språk",
"The datatables lang-code. <br><strong>Example:<\/strong> en-gb, fr_fr, de_de<br>More Information: ": "Datatabellernas språkkod. <br><strong>Exempel:<\/strong> en-gb, fr_fr, de_de<br>Mer information: ",
"The datatables lang-code. <br><strong>Example:</strong> en-gb, fr_fr, de_de<br>More Information: ": "Datatabellernas språkkod. <br><strong>Exempel:</strong> en-gb, fr_fr, de_de<br>Mer information: ",
"Auto-translate": "Auto-översätt",
"If this is checked, the Dashboard will translate itself to the Clients language, if available": "If this is checked, the Dashboard will translate itself to the Clients language, if available",
"Client Language-Switch": "Client Language-Switch",
@ -243,9 +243,9 @@
"Charges the first hour worth of credits upon creating a server.": "Charges the first hour worth of credits upon creating a server.",
"Credits Display Name": "Credits Display Name",
"PHPMyAdmin URL": "PHPMyAdmin URL",
"Enter the URL to your PHPMyAdmin installation. <strong>Without a trailing slash!<\/strong>": "Enter the URL to your PHPMyAdmin installation. <strong>Without a trailing slash!<\/strong>",
"Enter the URL to your PHPMyAdmin installation. <strong>Without a trailing slash!</strong>": "Enter the URL to your PHPMyAdmin installation. <strong>Without a trailing slash!</strong>",
"Pterodactyl URL": "Pterodactyl URL",
"Enter the URL to your Pterodactyl installation. <strong>Without a trailing slash!<\/strong>": "Enter the URL to your Pterodactyl installation. <strong>Without a trailing slash!<\/strong>",
"Enter the URL to your Pterodactyl installation. <strong>Without a trailing slash!</strong>": "Enter the URL to your Pterodactyl installation. <strong>Without a trailing slash!</strong>",
"Pterodactyl API Key": "Pterodactyl API Key",
"Enter the API Key to your Pterodactyl installation.": "Enter the API Key to your Pterodactyl installation.",
"Force Discord verification": "Force Discord verification",
@ -316,7 +316,7 @@
"A voucher can only be used one time per user. Uses specifies the number of different users that can use this voucher.": "A voucher can only be used one time per user. Uses specifies the number of different users that can use this voucher.",
"Max": "Max",
"Expires at": "Expires at",
"Used \/ Uses": "Used \/ Uses",
"Used / Uses": "Used / Uses",
"Expires": "Expires",
"Sign in to start your session": "Sign in to start your session",
"Password": "Password",
@ -388,7 +388,7 @@
"No nodes have been linked!": "No nodes have been linked!",
"No nests available!": "No nests available!",
"No eggs have been linked!": "No eggs have been linked!",
"Software \/ Games": "Software \/ Games",
"Software / Games": "Software / Games",
"Please select software ...": "Please select software ...",
"---": "---",
"Specification ": "Specification ",
@ -447,6 +447,8 @@
"Notes": "Notes",
"Amount in words": "Amount in words",
"Please pay until": "Please pay until",
"Upgrading/Downgrading your server will reset your billing cycle to now. Your overpayed Credits will be refunded. The price for the new billing cycle will be withdrawed": "Upgrading/Downgrading your server will reset your billing cycle to now. Your overpayed Credits will be refunded. The price for the new billing cycle will be withdrawed",
"Caution": "Caution",
"cs": "Czech",
"de": "German",
"en": "English",

View file

@ -81,7 +81,7 @@
"Someone registered using your Code!": "Birileri senin kodunu kullanarak kayıt oldu!",
"Server Creation Error": "Sunucu Oluşturma Hatası",
"Your servers have been suspended!": "Sunucularınız askıya alındı!",
"To automatically re-enable your server\/s, you need to purchase more credits.": "Sunucularınızı\/sunucularınızı otomatik olarak yeniden etkinleştirmek için daha fazla kredi satın almanız gerekir.",
"To automatically re-enable your server/s, you need to purchase more credits.": "Sunucularınızı/sunucularınızı otomatik olarak yeniden etkinleştirmek için daha fazla kredi satın almanız gerekir.",
"Purchase credits": "Satın alma kredisi",
"If you have any questions please let us know.": "Herhangi bir sorunuz varsa lütfen bize bildirin.",
"Regards": "Saygılarımızla",
@ -93,7 +93,7 @@
"Getting started!": "Başlarken!",
"Welcome to our dashboard": "Kontrol panelimize hoş geldiniz",
"Verification": "Doğrulama",
"You can verify your e-mail address and link\/verify your Discord account.": "E-posta adresinizi doğrulayabilir ve Discord hesabınızı bağlayabilir\/doğrulayabilirsiniz.",
"You can verify your e-mail address and link/verify your Discord account.": "E-posta adresinizi doğrulayabilir ve Discord hesabınızı bağlayabilir/doğrulayabilirsiniz.",
"Information": "Bilgi",
"This dashboard can be used to create and delete servers": "Bu gösterge panosu, sunucular oluşturmak ve silmek için kullanılabilir",
"These servers can be used and managed on our pterodactyl panel": "Bu sunucular pterodactyl panelimizde kullanılabilir ve yönetilebilir",
@ -187,7 +187,7 @@
"Default language": "Varsayılan Dil",
"The fallback Language, if something goes wrong": "Yedek dil, eğer bir şeyler yanlış giderse",
"Datable language": "Tarih Dili",
"The datatables lang-code. <br><strong>Example:<\/strong> en-gb, fr_fr, de_de<br>More Information: ": "Tarihlerde kullanılacak dil kodu. <br><strong>Örnek:<\/strong> en-gb, fr_fr, de_de<br> Daha fazla bilgi: ",
"The datatables lang-code. <br><strong>Example:</strong> en-gb, fr_fr, de_de<br>More Information: ": "Tarihlerde kullanılacak dil kodu. <br><strong>Örnek:</strong> en-gb, fr_fr, de_de<br> Daha fazla bilgi: ",
"Auto-translate": "Otomatik çeviri",
"If this is checked, the Dashboard will translate itself to the Clients language, if available": "Eğer bu seçili ise Yönetim paneli kendisini kullanıcının diline çevirecek, eğer kullanılabiliyorsa",
"Client Language-Switch": "Müşteri Dil Değiştiricisi",
@ -243,9 +243,9 @@
"Charges the first hour worth of credits upon creating a server.": "Kullanıcı sunucu oluşturduğumda ilk saatin ödemesini direkt olarak alır.",
"Credits Display Name": "Kredi ismi",
"PHPMyAdmin URL": "PHPMyAdmin linki",
"Enter the URL to your PHPMyAdmin installation. <strong>Without a trailing slash!<\/strong>": "PHPMyAdmin kurulumunuzun linkini girin <strong> Sonda eğik çizgi olmadan<\/strong>",
"Enter the URL to your PHPMyAdmin installation. <strong>Without a trailing slash!</strong>": "PHPMyAdmin kurulumunuzun linkini girin <strong> Sonda eğik çizgi olmadan</strong>",
"Pterodactyl URL": "Pterodactyl Linki",
"Enter the URL to your Pterodactyl installation. <strong>Without a trailing slash!<\/strong>": "Pterodactyl kurulumunuzun linkini girin <strong> Sonda eğik çizgi olmadan!<\/strong>",
"Enter the URL to your Pterodactyl installation. <strong>Without a trailing slash!</strong>": "Pterodactyl kurulumunuzun linkini girin <strong> Sonda eğik çizgi olmadan!</strong>",
"Pterodactyl API Key": "Pterodactyl API Anahtarı",
"Enter the API Key to your Pterodactyl installation.": "Pterodactyl kurulumunuzun API anahtarını girin.",
"Force Discord verification": "Discord Doğrulamasını zorunlu yap",
@ -316,7 +316,7 @@
"A voucher can only be used one time per user. Uses specifies the number of different users that can use this voucher.": "Bir kupon, kullanıcı başına yalnızca bir kez kullanılabilir. Kullanımlar, bu kuponu kullanabilecek farklı kullanıcıların sayısını belirtir.",
"Max": "Maks",
"Expires at": "Sona eriyor",
"Used \/ Uses": "Kullanılmış \/ Kullanım Alanları",
"Used / Uses": "Kullanılmış / Kullanım Alanları",
"Expires": "Sona eriyor",
"Sign in to start your session": "Oturumunuzu başlatmak için oturum açın",
"Password": "Parola",
@ -388,7 +388,7 @@
"No nodes have been linked!": "Hiçbir makine bağlanmamış!",
"No nests available!": "Hiçbir nest bulunamadı!",
"No eggs have been linked!": "Hiçbir egg bağlanmamış!",
"Software \/ Games": "Yazılımlar \/ Oyunlar",
"Software / Games": "Yazılımlar / Oyunlar",
"Please select software ...": "Lütfen bir yazılım seçin ...",
"---": "---",
"Specification ": "Özellikler ",
@ -447,6 +447,8 @@
"Notes": "Notlar",
"Amount in words": "Yazı ile Tutar",
"Please pay until": "Lütfen şu tarihe kadar ödeyin",
"Upgrading/Downgrading your server will reset your billing cycle to now. Your overpayed Credits will be refunded. The price for the new billing cycle will be withdrawed": "Sunucunuzu yükseltmek / düşürmek faturalandırma döngünüzü şimdiye sıfırlayacaktır. Aşırı ödenen kredileriniz iade edilecektir. Yeni faturalandırma döngüsü için ödenen tutar çekilecektir",
"Caution": "Dikkat",
"cs": "Çekçe",
"de": "Almanca",
"en": "İngilizce",

View file

@ -81,7 +81,7 @@
"Someone registered using your Code!": "已经有人使用您的代码注册了",
"Server Creation Error": "服务器创建错误",
"Your servers have been suspended!": "您的服务器已被暂停",
"To automatically re-enable your server\/s, you need to purchase more credits.": "如需重新启用你的服务器,您需要购买更多的余额",
"To automatically re-enable your server/s, you need to purchase more credits.": "如需重新启用你的服务器,您需要购买更多的余额",
"Purchase credits": "购买余额",
"If you have any questions please let us know.": "如果您有其他任何问题,欢迎联系我们。",
"Regards": "此致",
@ -93,7 +93,7 @@
"Getting started!": "开始吧!",
"Welcome to our dashboard": "欢迎访问 dashboard",
"Verification": "验证",
"You can verify your e-mail address and link\/verify your Discord account.": "你可以验证你的邮箱地址或者连接到你的Discord账户",
"You can verify your e-mail address and link/verify your Discord account.": "你可以验证你的邮箱地址或者连接到你的Discord账户",
"Information": "相关信息",
"This dashboard can be used to create and delete servers": "此仪表板可用于创建和删除服务器",
"These servers can be used and managed on our pterodactyl panel": "这些服务器可以在我们的pterodactyl面板上使用和管理",
@ -187,7 +187,7 @@
"Default language": "默认语言",
"The fallback Language, if something goes wrong": "备用语言",
"Datable language": "可用语言",
"The datatables lang-code. <br><strong>Example:<\/strong> en-gb, fr_fr, de_de<br>More Information: ": "数据表语言代码 <br><strong>示例:<\/strong> en-gb、fr_fr、de_de<br> 更多信息: ",
"The datatables lang-code. <br><strong>Example:</strong> en-gb, fr_fr, de_de<br>More Information: ": "数据表语言代码 <br><strong>示例:</strong> en-gb、fr_fr、de_de<br> 更多信息: ",
"Auto-translate": "自动翻译",
"If this is checked, the Dashboard will translate itself to the Clients language, if available": "如果勾选此项,系统将把自己翻译成客户语言(如果有)",
"Client Language-Switch": "客户语言切换",
@ -243,9 +243,9 @@
"Charges the first hour worth of credits upon creating a server.": "在创建服务器时收取第一个小时的费用",
"Credits Display Name": "积分显示名称",
"PHPMyAdmin URL": "PHPMyAdmin地址",
"Enter the URL to your PHPMyAdmin installation. <strong>Without a trailing slash!<\/strong>": "输入你PHPMyAdmin的URL。<strong>不要有尾部斜线!<\/strong>",
"Enter the URL to your PHPMyAdmin installation. <strong>Without a trailing slash!</strong>": "输入你PHPMyAdmin的URL。<strong>不要有尾部斜线!</strong>",
"Pterodactyl URL": "Pterodactyl地址",
"Enter the URL to your Pterodactyl installation. <strong>Without a trailing slash!<\/strong>": "输入你Pterodactyl的URL。<strong>不要有尾部斜线!<\/strong>",
"Enter the URL to your Pterodactyl installation. <strong>Without a trailing slash!</strong>": "输入你Pterodactyl的URL。<strong>不要有尾部斜线!</strong>",
"Pterodactyl API Key": "Pterodactyl API密钥",
"Enter the API Key to your Pterodactyl installation.": "输入Pterodactyl API密钥",
"Force Discord verification": "强制Discord验证",
@ -316,7 +316,7 @@
"A voucher can only be used one time per user. Uses specifies the number of different users that can use this voucher.": "每个用户只能使用一次代金券。使用次数指定了可以使用此代金券的不同用户的数量。",
"Max": "最大",
"Expires at": "过期时间",
"Used \/ Uses": "已使用\/使用情况",
"Used / Uses": "已使用/使用情况",
"Expires": "过期",
"Sign in to start your session": "登录以开始您的会议",
"Password": "密码",
@ -388,7 +388,7 @@
"No nodes have been linked!": "没有节点被链接!",
"No nests available!": "没有可用的巢穴!",
"No eggs have been linked!": "没有蛋被链接!",
"Software \/ Games": "软件\/游戏",
"Software / Games": "软件/游戏",
"Please select software ...": "请选择软件...",
"---": "---",
"Specification ": "规格 ",
@ -447,6 +447,8 @@
"Notes": "笔记",
"Amount in words": "税额的字数",
"Please pay until": "请支付至",
"Upgrading/Downgrading your server will reset your billing cycle to now. Your overpayed Credits will be refunded. The price for the new billing cycle will be withdrawed": "升级/降级你的服务器将重置你的账单周期。你的多余的点数将被退还。新的账单周期的价格将被扣除",
"Caution": "警告",
"cs": "捷克语",
"de": "德语",
"en": "英语",

View file

@ -70,6 +70,7 @@ Route::middleware(['auth', 'checkSuspended'])->group(function () {
//normal routes
Route::get('notifications/readAll', [NotificationController::class, 'readAll'])->name('notifications.readAll');
Route::resource('notifications', NotificationController::class);
Route::patch('/servers/cancel/{server}', [ServerController::class, 'cancel'])->name('servers.cancel');
Route::resource('servers', ServerController::class);
if (config('SETTINGS::SYSTEM:ENABLE_UPGRADE')) {
Route::post('servers/{server}/upgrade', [ServerController::class, 'upgrade'])->name('servers.upgrade');
@ -136,6 +137,7 @@ Route::middleware(['auth', 'checkSuspended'])->group(function () {
//servers
Route::get('servers/datatable', [AdminServerController::class, 'datatable'])->name('servers.datatable');
Route::post('servers/togglesuspend/{server}', [AdminServerController::class, 'toggleSuspended'])->name('servers.togglesuspend');
Route::patch('servers/cancel/{server}', [AdminServerController::class, 'cancel'])->name('servers.cancel');
Route::get('servers/sync', [AdminServerController::class, 'syncServers'])->name('servers.sync');
Route::resource('servers', AdminServerController::class);

View file

@ -66,6 +66,7 @@
<label for="price">{{__('Price in')}} {{CREDITS_DISPLAY_NAME}}</label>
<input value="{{$product->price ?? old('price')}}" id="price" name="price" step=".01"
type="number"
step="0.0001"
class="form-control @error('price') is-invalid @enderror"
required="required">
@error('price')
@ -116,6 +117,20 @@
@enderror
</div>
<div class="form-group">
<label for="allocations">{{__('Allocations')}}</label>
<input value="{{$product->allocations ?? old('allocations') ?? 0}}"
id="allocations" name="allocations"
type="number"
class="form-control @error('allocations') is-invalid @enderror"
required="required">
@error('allocations')
<div class="invalid-feedback">
{{ $message }}
</div>
@enderror
</div>
<div class="form-group">
<label for="description">{{__('Description')}} <i data-toggle="popover"
data-trigger="hover"
@ -148,6 +163,43 @@
@enderror
</div>
<div class="form-group">
<label for="billing_period">{{__('Billing Period')}} <i
data-toggle="popover" data-trigger="hover"
data-content="{{__('Period when the user will be charged for the given price')}}"
class="fas fa-info-circle"></i></label>
<select id="billing_period" style="width:100%" class="custom-select" name="billing_period" required
autocomplete="off" @error('billing_period') is-invalid @enderror>
<option value="hourly" selected>
{{__('Hourly')}}
</option>
<option value="daily">
{{__('Daily')}}
</option>
<option value="weekly">
{{__('Weekly')}}
</option>
<option value="monthly">
{{__('Monthly')}}
</option>
<option value="quarterly">
{{__('Quarterly')}}
</option>
<option value="half-annually">
{{__('Half Annually')}}
</option>
<option value="annually">
{{__('Annually')}}
</option>
</select>
@error('billing_period')
<div class="invalid-feedback">
{{ $message }}
</div>
@enderror
</div>
<div class="form-group">
<label for="minimum_credits">{{__('Minimum')}} {{ CREDITS_DISPLAY_NAME }} <i
data-toggle="popover" data-trigger="hover"
@ -205,19 +257,6 @@
</div>
@enderror
</div>
<div class="form-group">
<label for="allocations">{{__('Allocations')}}</label>
<input value="{{$product->allocations ?? old('allocations') ?? 0}}"
id="allocations" name="allocations"
type="number"
class="form-control @error('allocations') is-invalid @enderror"
required="required">
@error('allocations')
<div class="invalid-feedback">
{{ $message }}
</div>
@enderror
</div>
</div>
</div>

View file

@ -75,8 +75,10 @@
</div>
<div class="form-group">
<label for="price">{{__('Price in')}} {{ CREDITS_DISPLAY_NAME }}</label>
<input value="{{ $product->price }}" id="price" name="price" type="number" step=".01"
<label for="price">{{__('Price in')}} {{CREDITS_DISPLAY_NAME}}</label>
<input value="{{$product->price}}" id="price" name="price"
type="number"
step="0.0001"
class="form-control @error('price') is-invalid @enderror"
required="required">
@error('price')
@ -122,7 +124,18 @@
</div>
@enderror
</div>
<div class="form-group">
<label for="allocations">{{__('Allocations')}}</label>
<input value="{{ $product->allocations }}" id="allocations"
name="allocations" type="number"
class="form-control @error('allocations') is-invalid @enderror"
required="required">
@error('allocations')
<div class="invalid-feedback">
{{ $message }}
</div>
@enderror
</div>
<div class="form-group">
<label for="description">{{__('Description')}} <i data-toggle="popover"
data-trigger="hover"
@ -152,6 +165,51 @@
</div>
@enderror
</div>
<div class="form-group">
<label for="billing_period">{{__('Billing Period')}} <i
data-toggle="popover" data-trigger="hover"
data-content="{{__('Period when the user will be charged for the given price')}}"
class="fas fa-info-circle"></i></label>
<select id="billing_period" style="width:100%" class="custom-select" name="billing_period" required
autocomplete="off" @error('billing_period') is-invalid @enderror>
<option value="hourly" @if ($product->billing_period == 'hourly') selected
@endif>
{{__('Hourly')}}
</option>
<option value="daily" @if ($product->billing_period == 'daily') selected
@endif>
{{__('Daily')}}
</option>
<option value="weekly" @if ($product->billing_period == 'weekly') selected
@endif>
{{__('Weekly')}}
</option>
<option value="monthly" @if ($product->billing_period == 'monthly') selected
@endif>
{{__('Monthly')}}
</option>
<option value="quarterly" @if ($product->billing_period == 'quarterly') selected
@endif>
{{__('Quarterly')}}
</option>
<option value="half-annually" @if ($product->billing_period == 'half-annually') selected
@endif>
{{__('Half Annually')}}
</option>
<option value="annually" @if ($product->billing_period == 'annually') selected
@endif>
{{__('Annually')}}
</option>
</select>
@error('billing_period')
<div class="invalid-feedback">
{{ $message }}
</div>
@enderror
</div>
<div class="form-group">
<label for="minimum_credits">{{__('Minimum')}} {{ CREDITS_DISPLAY_NAME }} <i
data-toggle="popover" data-trigger="hover"
@ -202,18 +260,6 @@
</div>
@enderror
</div>
<div class="form-group">
<label for="allocations">{{__('Allocations')}}</label>
<input value="{{ $product->allocations }}" id="allocations"
name="allocations" type="number"
class="form-control @error('allocations') is-invalid @enderror"
required="required">
@error('allocations')
<div class="invalid-feedback">
{{ $message }}
</div>
@enderror
</div>
</div>
</div>

View file

@ -44,6 +44,7 @@
<th>{{__('Active')}}</th>
<th>{{__('Name')}}</th>
<th>{{__('Price')}}</th>
<th>{{__('Billing period')}}</th>
<th>{{__('Memory')}}</th>
<th>{{__('Cpu')}}</th>
<th>{{__('Swap')}}</th>
@ -92,6 +93,7 @@
{data: "disabled"},
{data: "name"},
{data: "price"},
{data: "billing_period"},
{data: "memory"},
{data: "cpu"},
{data: "swap"},

View file

@ -67,22 +67,6 @@
</div>
</div>
<div class="custom-control mb-3 p-0">
<div class="col m-0 p-0 d-flex justify-content-between align-items-center">
<div>
<input value="true" id="server-create-charge-first-hour"
name="server-create-charge-first-hour"
{{ config('SETTINGS::SYSTEM:SERVER_CREATE_CHARGE_FIRST_HOUR') == 'true' ? 'checked' : '' }}
type="checkbox">
<label for="server-create-charge-first-hour">{{ __('Charge first hour at creation') }}
</label>
</div>
<i data-toggle="popover" data-trigger="hover" data-html="true"
data-content="{{ __('Charges the first hour worth of credits upon creating a server.') }}"
class="fas fa-info-circle"></i>
</div>
</div>
<div class="custom-control mb-3 p-0">
<label for="credits-display-name">{{ __('Credits Display Name') }}</label>
<input x-model="credits-display-name" id="credits-display-name" name="credits-display-name"

View file

@ -208,11 +208,20 @@
<span class="d-inline-block" x-text="product.allocations"></span>
</li>
<li class="d-flex justify-content-between">
<span class="d-inline-block"><i class="fa fa-coins"></i>
<<<<<<< HEAD:themes/default/views/servers/create.blade.php <span
class="d-inline-block"><i class="fa fa-coins"></i>
{{ __('Required') }} {{ CREDITS_DISPLAY_NAME }}
{{ __('to create this server') }}</span>
<span class="d-inline-block"
x-text="product.minimum_credits === -1 ? {{ config('SETTINGS::USER:MINIMUM_REQUIRED_CREDITS_TO_MAKE_SERVER') }} : product.minimum_credit"></span>
<span class="d-inline-block"
x-text="product.minimum_credits === -1 ? {{ config('SETTINGS::USER:MINIMUM_REQUIRED_CREDITS_TO_MAKE_SERVER') }} : product.minimum_credit"></span>
=======
<span class="d-inline-block"><i class="fas fa-clock"></i>
{{ __('Billing Period') }}</span>
<span class="d-inline-block"
x-text="product.billing_period"></span>
>>>>>>>
addon/billing_system:resources/views/servers/create.blade.php
</li>
</ul>
</div>
@ -224,8 +233,8 @@
</div>
<div class="mt-auto border rounded border-secondary">
<div class="d-flex justify-content-between p-2">
<span class="d-inline-block mr-4">
{{ __('Price') }}:
<span class="d-inline-block mr-4"
x-text="'{{ __('Price') }}' + ' (' + product.billing_period + ')'">
</span>
<span class="d-inline-block"
x-text="product.price + ' {{ CREDITS_DISPLAY_NAME }}'"></span>
@ -237,11 +246,11 @@
<div>
<button type="submit" x-model="selectedProduct" name="product"
:disabled="product.minimum_credits > user.credits || product.doesNotFit == true ||
submitClicked"
product.price > user.credits || submitClicked"
:class="product.minimum_credits > user.credits || product.doesNotFit == true ||
submitClicked ? 'disabled' : ''"
product.price > user.credits || submitClicked ? 'disabled' : ''"
class="btn btn-primary btn-block mt-2" @click="setProduct(product.id);"
x-text=" product.doesNotFit == true ? '{{ __('Server cant fit on this Node') }}' : (product.minimum_credits > user.credits ? '{{ __('Not enough') }} {{ CREDITS_DISPLAY_NAME }}!' : '{{ __('Create server') }}')">
x-text=" product.doesNotFit == true ? '{{ __('Server cant fit on this Node') }}' : (product.minimum_credits > user.credits || product.price > user.credits ? '{{ __('Not enough') }} {{ CREDITS_DISPLAY_NAME }}!' : '{{ __('Create server') }}')">
</button>
</div>
</div>
@ -372,6 +381,7 @@
.catch(console.error)
this.fetchedProducts = true;
// TODO: Sortable by user chosen property (cpu, ram, disk...)
this.products = response.data.sort((p1, p2) => parseInt(p1.price, 10) > parseInt(p2.price, 10) &&
1 || -1)
@ -381,11 +391,19 @@
product.cpu = product.cpu / 100;
})
//format price to have no decimals if it is a whole number
this.products.forEach(product => {
if (product.price % 1 === 0) {
product.price = Math.round(product.price);
}
})
this.loading = false;
this.updateSelectedObjects()
},
/**
* @description map selected id's to selected objects
* @note being used in the server info box

View file

@ -48,34 +48,57 @@
<div class="row d-flex flex-row justify-content-center justify-content-md-start">
@foreach ($servers as $server)
@if($server->location&&$server->node&&$server->nest&&$server->egg)
<div class="col-xl-3 col-lg-5 col-md-6 col-sm-6 col-xs-12 card pr-0 pl-0 ml-sm-2 mr-sm-3"
style="max-width: 350px">
<div class="card-header">
<div class="d-flex justify-content-between align-items-center">
<h5 class="card-title mt-1">{{ $server->name }}
</h5>
</div>
</div>
<div class="card-body">
<div class="container mt-1">
<div class="row mb-3">
<div class="col my-auto">{{ __('Status') }}:</div>
<div class="col-7 my-auto">
<i
class="fas {{ $server->isSuspended() ? 'text-danger' : 'text-success' }} fa-circle mr-2"></i>
{{ $server->isSuspended() ? 'Suspended' : 'Active' }}
<div class="col-xl-3 col-lg-5 col-md-6 col-sm-6 col-xs-12 card pr-0 pl-0 ml-sm-2 mr-sm-3"
style="max-width: 350px">
<div class="card-header">
<div class="d-flex justify-content-between align-items-center">
<h5 class="card-title mt-1">{{ $server->name }}
</h5>
<div class="card-tools mt-1">
<div class="dropdown no-arrow">
<a href="#" role="button" id="dropdownMenuLink" data-toggle="dropdown"
aria-haspopup="true" aria-expanded="false">
<i class="fas fa-ellipsis-v fa-sm fa-fw text-white-50"></i>
</a>
<div class="dropdown-menu dropdown-menu-right shadow animated--fade-in"
aria-labelledby="dropdownMenuLink">
@if (!empty(config('SETTINGS::MISC:PHPMYADMIN:URL')))
<a href="{{ config('SETTINGS::MISC:PHPMYADMIN:URL') }}"
class="dropdown-item text-info" target="__blank"><i title="manage"
class="fas fa-database mr-2"></i><span>{{ __('Database') }}</span></a>
@endif
<div class="dropdown-divider"></div>
<span class="dropdown-item"><i title="Created at"
class="fas fa-sync-alt mr-2"></i><span>{{ $server->created_at->isoFormat('LL') }}</span></span>
</div>
</div>
<div class="row mb-2">
<div class="col-5">
{{ __('Location') }}:
</div>
<div class="col-7 d-flex justify-content-between align-items-center">
<span class="">{{ $server->location }}</span>
<i data-toggle="popover" data-trigger="hover"
data-content="{{ __('Node') }}: {{ $server->node }}"
class="fas fa-info-circle"></i>
</div>
</div>
</div>
</div>
<div class="card-body">
<div class="container mt-1">
<div class="row mb-3">
<div class="col my-auto">{{ __('Status') }}:</div>
<div class="col-7 my-auto">
@if($server->suspended)
<span class="badge badge-danger">{{ __('Suspended') }}</span>
@elseif($server->cancelled)
<span class="badge badge-warning">{{ __('Cancelled') }}</span>
@else
<span class="badge badge-success">{{ __('Active') }}</span>
@endif
</div>
</div>
<div class="row mb-2">
<div class="col-5">
{{ __('Location') }}:
</div>
<div class="col-7 d-flex justify-content-between align-items-center">
<span class="">{{ $server->location }}</span>
<i data-toggle="popover" data-trigger="hover"
data-content="{{ __('Node') }}: {{ $server->node }}"
class="fas fa-info-circle"></i>
</div>
</div>
<div class="row mb-2">
@ -86,69 +109,127 @@
<span>{{ $server->nest }}</span>
</div>
</div>
<div class="row mb-2">
<div class="col-5 ">
{{ __('Specification') }}:
</div>
<div class="row mb-2">
<div class="col-5 ">
{{ __('Specification') }}:
</div>
<div class="col-7 text-wrap">
<span>{{ $server->egg }}</span>
</div>
<div class="col-7 text-wrap">
<span>{{ $server->egg }}</span>
</div>
<div class="row mb-4">
<div class="col-5 ">
{{ __('Resource plan') }}:
</div>
<div class="col-7 text-wrap d-flex justify-content-between align-items-center">
<span>{{ $server->product->name }}
</span>
<i data-toggle="popover" data-trigger="hover" data-html="true"
data-content="{{ __('CPU') }}: {{ $server->product->cpu / 100 }} {{ __('vCores') }} <br/>{{ __('RAM') }}: {{ $server->product->memory }} MB <br/>{{ __('Disk') }}: {{ $server->product->disk }} MB <br/>{{ __('Backups') }}: {{ $server->product->backups }} <br/> {{ __('MySQL Databases') }}: {{ $server->product->databases }} <br/> {{ __('Allocations') }}: {{ $server->product->allocations }} <br/>"
class="fas fa-info-circle"></i>
</div>
</div>
<div class="row mb-2">
<div class="col-5 ">
{{ __('Resource plan') }}:
</div>
<div class="col-7 text-wrap d-flex justify-content-between align-items-center">
<span>{{ $server->product->name }}
</span>
<i data-toggle="popover" data-trigger="hover" data-html="true"
data-content="{{ __('CPU') }}: {{ $server->product->cpu / 100 }} {{ __('vCores') }} <br/>{{ __('RAM') }}: {{ $server->product->memory }} MB <br/>{{ __('Disk') }}: {{ $server->product->disk }} MB <br/>{{ __('Backups') }}: {{ $server->product->backups }} <br/> {{ __('MySQL Databases') }}: {{ $server->product->databases }} <br/> {{ __('Allocations') }}: {{ $server->product->allocations }} <br/> {{ __('Billing Period') }}: {{$server->product->billing_period}}"
class="fas fa-info-circle"></i>
</div>
</div>
<div class="row mb-4 ">
<div class="col-5 word-break" style="hyphens: auto">
{{ __('Next Billing Cycle') }}:
</div>
<div class="row mb-2">
<div class="col-4">
{{ __('Price') }}:
<span class="text-muted">
({{ CREDITS_DISPLAY_NAME }})
</span>
</div>
<div class="col-8">
<div class="row">
<div class="col-6 text-center">
<div class="text-muted">{{ __('per Hour') }}</div>
<span>
{{ number_format($server->product->getHourlyPrice(), 2, '.', '') }}
</span>
</div>
<div class="col-6 text-center">
<div class="text-muted">{{ __('per Month') }}
</div>
<span>
{{ $server->product->getHourlyPrice() * 24 * 30 }}
</span>
</div>
<div class="col-7 d-flex text-wrap align-items-center">
<span>
@if ($server->suspended)
-
@else
@switch($server->product->billing_period)
@case('monthly')
{{ \Carbon\Carbon::parse($server->last_billed)->addMonth()->toDayDateTimeString(); }}
@break
@case('weekly')
{{ \Carbon\Carbon::parse($server->last_billed)->addWeek()->toDayDateTimeString(); }}
@break
@case('daily')
{{ \Carbon\Carbon::parse($server->last_billed)->addDay()->toDayDateTimeString(); }}
@break
@case('hourly')
{{ \Carbon\Carbon::parse($server->last_billed)->addHour()->toDayDateTimeString(); }}
@break
@case('quarterly')
{{ \Carbon\Carbon::parse($server->last_billed)->addMonths(3)->toDayDateTimeString(); }}
@break
@case('half-annually')
{{ \Carbon\Carbon::parse($server->last_billed)->addMonths(6)->toDayDateTimeString(); }}
@break
@case('annually')
{{ \Carbon\Carbon::parse($server->last_billed)->addYear()->toDayDateTimeString(); }}
@break
@default
{{ __('Unknown') }}
@endswitch
@endif
</span>
</div>
</div>
<div class="row mb-2">
<div class="col-4">
{{ __('Price') }}:
<span class="text-muted">
({{ CREDITS_DISPLAY_NAME }})
</span>
</div>
<div class="col-8 text-center">
<div class="text-muted">
@if($server->product->billing_period == 'monthly')
{{ __('per Month') }}
@elseif($server->product->billing_period == 'half-annually')
{{ __('per 6 Months') }}
@elseif($server->product->billing_period == 'quarterly')
{{ __('per 3 Months') }}
@elseif($server->product->billing_period == 'annually')
{{ __('per Year') }}
@elseif($server->product->billing_period == 'weekly')
{{ __('per Week') }}
@elseif($server->product->billing_period == 'daily')
{{ __('per Day') }}
@elseif($server->product->billing_period == 'hourly')
{{ __('per Hour') }}
@endif
</div>
</div>
<span>
{{ $server->product->price == round($server->product->price) ? round($server->product->price) : $server->product->price }}
</span>
</div>
</div>
</div>
<div class="card-footer d-flex align-items-center justify-content-between">
<a href="{{ config('SETTINGS::SYSTEM:PTERODACTYL:URL') }}/server/{{ $server->identifier }}"
target="__blank"
class="btn btn-info mx-3 w-100 align-items-center justify-content-center d-flex">
<i class="fas fa-tools mr-2"></i>
<span>{{ __('Manage') }}</span>
</a>
<a href="{{ route('servers.show', ['server' => $server->id])}}" class="btn btn-warning mx-3 w-100 align-items-center justify-content-center d-flex">
<i class="fas fa-cog mr-2"></i>
<span>{{ __('Settings') }}</span>
</a>
</div>
</div>
<div class="card-footer text-center">
<a href="{{ config('SETTINGS::SYSTEM:PTERODACTYL:URL') }}/server/{{ $server->identifier }}"
target="__blank"
class="btn btn-info text-center float-left ml-2"
data-toggle="tooltip" data-placement="bottom" title="{{ __('Manage Server') }}">
<i class="fas fa-tools mx-2"></i>
</a>
@if(config("SETTINGS::SYSTEM:PTERODACTYL:ADMIN_USER_TOKEN"))
<a href="{{ route('servers.show', ['server' => $server->id])}}"
class="btn btn-info text-center mr-3"
data-toggle="tooltip" data-placement="bottom" title="{{ __('Server Settings') }}">
<i class="fas fa-cog mx-2"></i>
</a>
@endif
<button onclick="handleServerCancel('{{ $server->id }}');" target="__blank"
class="btn btn-warning text-center"
{{ $server->suspended || $server->cancelled ? "disabled" : "" }}
data-toggle="tooltip" data-placement="bottom" title="{{ __('Cancel Server') }}">
<i class="fas fa-ban mx-2"></i>
</button>
<button onclick="handleServerDelete('{{ $server->id }}');" target="__blank"
class="btn btn-danger text-center float-right mr-2"
data-toggle="tooltip" data-placement="bottom" title="{{ __('Delete Server') }}">
<i class="fas fa-trash mx-2"></i>
</button>
</div>
</div>
@endif
@endforeach
</div>
@ -156,4 +237,68 @@
</div>
</section>
<!-- END CONTENT -->
<script>
const handleServerCancel = (serverId) => {
// Handle server cancel with sweetalert
Swal.fire({
title: "{{ __('Cancel Server?') }}",
text: "{{ __('This will cancel your current server to the next billing period. It will get suspended when the current period runs out.') }}",
icon: 'warning',
confirmButtonColor: '#d9534f',
showCancelButton: true,
confirmButtonText: "{{ __('Yes, cancel it!') }}",
cancelButtonText: "{{ __('No, abort!') }}",
reverseButtons: true
}).then((result) => {
if (result.value) {
// Delete server
fetch("{{ route('servers.cancel', '') }}" + '/' + serverId, {
method: 'PATCH',
headers: {
'X-CSRF-TOKEN': '{{ csrf_token() }}'
}
}).then(() => {
window.location.reload();
});
return
}
})
}
const handleServerDelete = (serverId) => {
Swal.fire({
title: "{{ __('Delete Server?') }}",
html: "{{!! __('This is an irreversible action, all files of this server will be removed. <strong>No funds will get refunded</strong>. We recommend deleting the server when server is suspended.') !!}}",
icon: 'warning',
confirmButtonColor: '#d9534f',
showCancelButton: true,
confirmButtonText: "{{ __('Yes, delete it!') }}",
cancelButtonText: "{{ __('No, abort!') }}",
reverseButtons: true
}).then((result) => {
if (result.value) {
// Delete server
fetch("{{ route('servers.destroy', '') }}" + '/' + serverId, {
method: 'DELETE',
headers: {
'X-CSRF-TOKEN': '{{ csrf_token() }}'
}
}).then(() => {
window.location.reload();
});
return
}
});
}
document.addEventListener('DOMContentLoaded', () => {
$('[data-toggle="popover"]').popover();
});
$(function () {
$('[data-toggle="tooltip"]').tooltip()
})
</script>
@endsection

View file

@ -243,10 +243,7 @@
</button>
</div>
<div class="modal-body card-body">
<strong>{{__("FOR DOWNGRADE PLEASE CHOOSE A PLAN BELOW YOUR PLAN")}}</strong>
<br>
<br>
<strong>{{__("YOUR PRODUCT")}} : </strong> {{ $server->product->name }}
<strong>{{__("Current Product")}}: </strong> {{ $server->product->name }}
<br>
<br>
@ -256,12 +253,13 @@
<option value="">{{__("Select the product")}}</option>
@foreach($products as $product)
@if(in_array($server->egg, $product->eggs) && $product->id != $server->product->id && $product->disabled == false)
<option value="{{ $product->id }}" @if($product->doesNotFit)disabled @endif>{{ $product->name }} [ {{ CREDITS_DISPLAY_NAME }} {{ $product->price }} @if($product->doesNotFit)] {{__('Server can´t fit on this node')}} @else @if($product->minimum_credits!=-1) /
<option value="{{ $product->id }}" @if($product->doesNotFit)disabled @endif>{{ $product->name }} [ {{ CREDITS_DISPLAY_NAME }} {{ $product->price }} @if($product->doesNotFit)] {{__('Server can\'t fit on this node')}} @else @if($product->minimum_credits!=-1) /
{{__("Required")}}: {{$product->minimum_credits}} {{ CREDITS_DISPLAY_NAME }}@endif ] @endif</option>
@endif
@endforeach
</select>
<br> {{__("Once the Upgrade button is pressed, we will automatically deduct the amount for the first hour according to the new product from your credits")}}. <br>
<br> <strong>{{__("Caution") }}:</strong> {{__("Upgrading/Downgrading your server will reset your billing cycle to now. Your overpayed Credits will be refunded. The price for the new billing cycle will be withdrawed")}}. <br>
<br> {{__("Server will be automatically restarted once upgraded")}}
</div>
<div class="modal-footer card-body">