- fixed an error on finance in admin panel
- flight ident now use this format: VA IATA(if empty ICAO) + Flight Number + - + Flight Code (without C) + - + Flight Leg (without L) - added function __trans_choice in helpers.php for translation - fixed error in flight edit/insert panel not showing/inserting Tuesday in days - fixed an error occurring when metar retrieved is empty - edited now-ui-kit.css to align login fields correctly - added /public/assets/frontend/js/core/jquery-3.3.1.min.js to fix a missed resource error in authentication pages - added translations file for en and it locales - translated all the frontend templates
This commit is contained in:
committed by
Nabeel Shahzad
parent
77a2fd70c3
commit
ba8a819c7d
@@ -51,7 +51,7 @@ class FinanceController extends Controller
|
||||
# group by the airline
|
||||
foreach ($airlines as $airline) {
|
||||
# Return all the transactions, grouped by the transaction group
|
||||
$transactions = JournalTransaction::groupBy('transaction_group')
|
||||
$transactions = JournalTransaction::groupBy('transaction_group', 'currency')
|
||||
->selectRaw('transaction_group, currency,
|
||||
SUM(credit) as sum_credits,
|
||||
SUM(debit) as sum_debits')
|
||||
|
||||
@@ -69,7 +69,10 @@ class Airline extends Model
|
||||
*/
|
||||
public function getCodeAttribute()
|
||||
{
|
||||
return $this->icao;
|
||||
if ($this->iata && $this->iata !== '')
|
||||
return $this->iata;
|
||||
else
|
||||
return $this->icao;
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -112,12 +112,12 @@ class Flight extends Model
|
||||
$flight_id = $this->airline->code;
|
||||
$flight_id .= $this->flight_number;
|
||||
|
||||
if (filled($this->route_leg)) {
|
||||
$flight_id .= '/L'.$this->route_leg;
|
||||
if (filled($this->route_code)) {
|
||||
$flight_id .= '-'.$this->route_code;
|
||||
}
|
||||
|
||||
if (filled($this->route_code)) {
|
||||
$flight_id .= '/C'.$this->route_code;
|
||||
if (filled($this->route_leg)) {
|
||||
$flight_id .= '-'.$this->route_leg;
|
||||
}
|
||||
|
||||
return $flight_id;
|
||||
|
||||
@@ -32,7 +32,10 @@ class AviationWeather extends Metar
|
||||
try {
|
||||
$res = Http::get($url, []);
|
||||
$xml = simplexml_load_string($res);
|
||||
return $xml->data->METAR->raw_text->__toString();
|
||||
if (count($xml->data->METAR->raw_text) == 0)
|
||||
return '';
|
||||
else
|
||||
return $xml->data->METAR->raw_text->__toString();
|
||||
|
||||
} catch (\Exception $e) {
|
||||
return '';
|
||||
|
||||
@@ -481,9 +481,9 @@ class Metar implements \ArrayAccess
|
||||
$time_diff = floor(($now - $local) / 60);
|
||||
|
||||
if ($time_diff < 91) {
|
||||
$this->set_result_value('observed_age', $time_diff.' min. ago');
|
||||
$this->set_result_value('observed_age', $time_diff.' '.__trans_choice('min ago', $time_diff));
|
||||
} else {
|
||||
$this->set_result_value('observed_age', floor($time_diff / 60).':'.sprintf("%02d", $time_diff % 60).' hr. ago');
|
||||
$this->set_result_value('observed_age', floor($time_diff / 60).':'.sprintf("%02d", $time_diff % 60).' '.__trans_choice('hr ago', floor($time_diff / 60)));
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -221,3 +221,19 @@ if (!function_exists('_fmt')) {
|
||||
return $line;
|
||||
}
|
||||
}
|
||||
|
||||
if (!function_exists('__trans_choice')) {
|
||||
/**
|
||||
* Translates the given message based on a count from json key.
|
||||
*
|
||||
* @param $key
|
||||
* @param $number
|
||||
* @param array $replace
|
||||
* @param null $locale
|
||||
* @return string
|
||||
*/
|
||||
function __trans_choice($key, $number, array $replace = [], $locale = null)
|
||||
{
|
||||
return trans_choice(__($key), $number, $replace, $locale);
|
||||
}
|
||||
}
|
||||
@@ -2089,7 +2089,6 @@ fieldset[disabled]
|
||||
|
||||
.form-group .form-control,
|
||||
.input-group .form-control {
|
||||
margin-top: 2px;
|
||||
padding: 4px 14px 4px 14px;
|
||||
}
|
||||
|
||||
|
||||
2
public/assets/frontend/js/core/jquery-3.3.1.min.js
vendored
Normal file
2
public/assets/frontend/js/core/jquery-3.3.1.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
BIN
public/assets/img/Airplane.jpg
Normal file
BIN
public/assets/img/Airplane.jpg
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 393 KiB |
151
resources/lang/en.json
Normal file
151
resources/lang/en.json
Normal file
@@ -0,0 +1,151 @@
|
||||
{
|
||||
"Welcome!": "Welcome!",
|
||||
"Dashboard": "Dashboard",
|
||||
"Live Map": "Live Map",
|
||||
"Pilot": "Pilot|Pilots",
|
||||
"Flight": "Flight|Flights",
|
||||
"Login": "Login",
|
||||
"Register": "Register",
|
||||
"PIREP": "PIREP|PIREPs",
|
||||
"Profile": "Profile",
|
||||
"Downloads": "Downloads",
|
||||
"Administration": "Administration",
|
||||
"Log Out": "Esci",
|
||||
"Welcome Message": "Welcome in Piemonte Virtual Airlines",
|
||||
"Newest Pilots": "Newest Pilots",
|
||||
"Total Hours": "Total Hours",
|
||||
"Your Balance": "Your Balance",
|
||||
"Current Airport": "Current Airport",
|
||||
"Your Last Report": "Your Last Report",
|
||||
"No reports yet.": "No reports yet.",
|
||||
"File one now.": "File one now.",
|
||||
"Weather at :ICAO": "Weather at :ICAO",
|
||||
"Recent Reports": "Recent Reports",
|
||||
"to": "to",
|
||||
"Ground Speed": "Ground Speed",
|
||||
"Altitude": "Altitude",
|
||||
"Heading": "Heading",
|
||||
"Status": "Status",
|
||||
"Flight Time": "Flight Time",
|
||||
"Distance": "Distance",
|
||||
"There are no flights.": "There are no flights.",
|
||||
"Departure": "Departure",
|
||||
"Arrival": "Arrival",
|
||||
"Aircraft": "Aircraft",
|
||||
"GS": "GS",
|
||||
"Name": "Name",
|
||||
"Airline": "Airline",
|
||||
"Location": "Location",
|
||||
"Hour": "Hour|Hours",
|
||||
"My Bid": "My Bid|My Bids",
|
||||
"Search": "Search",
|
||||
"Flight Number": "Flight Number",
|
||||
"Departure Airport": "Departure Airport",
|
||||
"Arrival Airport": "Arrival Airport",
|
||||
"Find": "Find",
|
||||
"Reset": "Reset",
|
||||
"Add/Remove Bid": "Add/Remove Bid",
|
||||
"DEP": "DEP",
|
||||
"ARR": "ARR",
|
||||
"DISTANCE": "DISTANCE",
|
||||
"LEVEL": "LEVEL",
|
||||
"ROUTE": "ROUTE",
|
||||
"Alternate Airport": "Alternate Airport",
|
||||
"Route": "Route",
|
||||
"Notes": "Notes",
|
||||
"File New PIREP": "File New PIREP",
|
||||
"Pilot Report": "Pilot Report|Pilot Reports",
|
||||
"Arrived": "Arrived",
|
||||
"Submit": "Submit",
|
||||
"Source": "Source",
|
||||
"Flight Type": "Flight Type",
|
||||
"Filed Route": "Filed Route",
|
||||
"Filed On": "Filed On",
|
||||
"Field": "Field|Fields",
|
||||
"Value": "Value",
|
||||
"Fare": "Fare|Fares",
|
||||
"Class": "Class",
|
||||
"Count": "Count",
|
||||
"Flight Level": "Flight Level",
|
||||
"Once a PIREP has been accepted/rejected, certain fields go into read-only mode.": "Once a PIREP has been accepted/rejected, certain fields go into read-only mode.",
|
||||
"Flight Informations": "Flight Informations",
|
||||
"Flight Number/Code/Leg": "Flight Number/Code/Leg",
|
||||
"Code (optional)": "Code (optional)",
|
||||
"Leg (optional)": "Leg (optional)",
|
||||
"Minute": "Minute|Minutes",
|
||||
"Departure/Arrival Informations": "Departure/Arrival Informations",
|
||||
"Aircraft Informations": "Aircraft Informations",
|
||||
"Remarks": "Remarks",
|
||||
"Date Flown": "Date Flown",
|
||||
"Departure Time": "Departure Time",
|
||||
"Arrival Time": "Arrival Time",
|
||||
"Delete PIREP": "Delete PIREP",
|
||||
"Save PIREP": "Save PIREP",
|
||||
"Submit PIREP": "Submit PIREP",
|
||||
"Edit Flight Report": "Edit Flight Report",
|
||||
"File New Report": "File New Report",
|
||||
"New Flight Report": "New Flight Report",
|
||||
"Flight Hours": "Flight Hours",
|
||||
"Home Airport": "Home Airport",
|
||||
"New API Key": "New API Key",
|
||||
"Edit": "Edit",
|
||||
"Your Profile": "Your Profile",
|
||||
"Email": "Email",
|
||||
"API Key": "API Key",
|
||||
"don't share this!": "don\'t share this!",
|
||||
"Timezone": "Timezone",
|
||||
"Country": "Country",
|
||||
"Change Password": "Change Password",
|
||||
"Confirm Password": "Confirm Password",
|
||||
"Avatar": "Avatar",
|
||||
"Update Profile": "Update Profile",
|
||||
"Edit Profile": "Edit Profile",
|
||||
"Edit Your Profile": "Edit Your Profile",
|
||||
"Download": "Download|Downloads",
|
||||
"There are no downloads!": "There are no downloads!",
|
||||
"Log In": "Log In",
|
||||
"Create Account": "Create Account",
|
||||
"Forgot Password": "Forgot Password",
|
||||
"Full Name": "Full Name",
|
||||
"Email Address": "Email Address",
|
||||
"Password": "Password",
|
||||
"Fill out the captcha": "Fill out the captcha",
|
||||
"Terms and Conditions": "Terms and Conditions",
|
||||
"By registering, you agree to the Terms and Conditions.": "By registering, you agree to the Terms and Conditions.",
|
||||
"Register!": "Register!",
|
||||
"Reset Password": "Reset Password",
|
||||
"Send Password Reset Link": "Send Password Reset Link",
|
||||
"Click here to reset your password": "Click here to reset your password",
|
||||
"Registration Pending": "Registration Pending",
|
||||
"Your registration is pending approval. Please check your email!": "Your registration is pending approval. Please check your email!",
|
||||
"Registration Submitted": "Registration Submitted",
|
||||
"Registration Confirmation": "Registration Confirmation",
|
||||
"Your application has been submitted. It requires staff member approval, once a\nstaff member has reviewed your application, you will receive a confirmation email.": "Your application has been submitted. It requires staff member approval, once a\nstaff member has reviewed your application, you will receive a confirmation email.",
|
||||
"Registration Denied": "Registration Denied",
|
||||
"Your registration was denied. Please contact an administrator.": "Your registration was denied. Please contact an administrator.",
|
||||
"Account Suspended": "Account Suspended",
|
||||
"Your account has been suspended. Please contact an administrator.": "Your account has been suspended. Please contact an administrator.",
|
||||
"Inbound Flights": "Inbound Flights",
|
||||
"Outbound Flights": "Outbound Flights",
|
||||
"No Flight Found": "No Flight Found",
|
||||
"Ident": "Ident",
|
||||
"From": "From",
|
||||
"To": "To",
|
||||
"Close": "Close",
|
||||
"News": "News",
|
||||
"No News Found": "No News Found",
|
||||
"METAR/TAF data could not be retrieved": "METAR/TAF data could not be retrieved",
|
||||
"Conditions": "Conditions",
|
||||
"visibility": "visibility",
|
||||
"humidity": "humidity",
|
||||
"dew point": "dew point",
|
||||
"Barometer": "Barometer",
|
||||
"Clouds": "Clouds",
|
||||
"Wind": "Wind",
|
||||
"from": "from",
|
||||
"gusts to": "gusts to",
|
||||
"METAR": "METAR",
|
||||
"Updated": "Updated",
|
||||
"hr ago": "hr ago|hrs ago",
|
||||
"min ago": "min ago|mins ago"
|
||||
}
|
||||
150
resources/lang/it.json
Normal file
150
resources/lang/it.json
Normal file
@@ -0,0 +1,150 @@
|
||||
{
|
||||
"Welcome!": "Benvenuti!",
|
||||
"Dashboard": "Dashboard",
|
||||
"Live Map": "Mappa Live",
|
||||
"Pilot": "Pilota|Piloti",
|
||||
"Flight": "Volo|Voli",
|
||||
"Login": "Accedi",
|
||||
"Register": "Registrazione",
|
||||
"PIREP": "PIREP|PIREPs",
|
||||
"Profile": "Profilo",
|
||||
"Administration": "Amministrazione",
|
||||
"Log Out": "Esci",
|
||||
"Welcome Message": "Benvenuti in Piemonte Virtual Airlines",
|
||||
"Newest Pilots": "Ultimi Piloti",
|
||||
"Total Hours": "Ore Totali",
|
||||
"Your Balance": "Il Tuo Bilancio",
|
||||
"Current Airport": "Aeroporto Corrente",
|
||||
"Your Last Report": "Il Tuo Ultimo Rapporto",
|
||||
"No reports yet.": "Ancora nessun rapporto.",
|
||||
"File one now.": "Inseriscine uno ora.",
|
||||
"Weather at :ICAO": "Tempo a :ICAO",
|
||||
"Recent Reports": "Rapporti Recenti",
|
||||
"to": "a",
|
||||
"Ground Speed": "Velocità al Suolo",
|
||||
"Altitude": "Altitudine",
|
||||
"Heading": "Direzione",
|
||||
"Status": "Stato",
|
||||
"Flight Time": "Tempo di Volo",
|
||||
"Distance": "Distanza",
|
||||
"There are no flights.": "Non ci sono voli.",
|
||||
"Departure": "Partenza",
|
||||
"Arrival": "Arrivo",
|
||||
"Aircraft": "Aereo",
|
||||
"GS": "VS",
|
||||
"Name": "Nome",
|
||||
"Airline": "Compagnia Aerea",
|
||||
"Location": "Posizione",
|
||||
"Hour": "Ora|Ore",
|
||||
"My Bid": "La Mia Prenotazione|Le Mie Prenotazioni",
|
||||
"Search": "Cerca",
|
||||
"Flight Number": "Numero di Volo",
|
||||
"Departure Airport": "Aeroporto di Partenza",
|
||||
"Arrival Airport": "Aeroporto d'Arrivo",
|
||||
"Find": "Trova",
|
||||
"Reset": "Resetta",
|
||||
"Add/Remove Bid": "Aggiungi/Rimuovi Prenotazione",
|
||||
"DEP": "PAR",
|
||||
"ARR": "ARR",
|
||||
"DISTANCE": "DISTANZA",
|
||||
"LEVEL": "LIVELLO",
|
||||
"ROUTE": "ROTTA",
|
||||
"Alternate Airport": "Aeroporto Alternativo",
|
||||
"Route": "Rotta",
|
||||
"Notes": "Note",
|
||||
"File New PIREP": "Inserisci Nuovo PIREP",
|
||||
"Pilot Report": "Rapporto Pilota|Rapporti Pilota",
|
||||
"Arrived": "Arrivato",
|
||||
"Submit": "Invia",
|
||||
"Source": "Fonte",
|
||||
"Flight Type": "Tipo di Volo",
|
||||
"Filed Route": "Rotta Inserita",
|
||||
"Filed On": "Inserito il",
|
||||
"Field": "Campo|Campi",
|
||||
"Value": "Valore",
|
||||
"Fare": "Tariffa|Tariffe",
|
||||
"Class": "Classe",
|
||||
"Count": "Numero",
|
||||
"Flight Level": "Livello di Volo",
|
||||
"Once a PIREP has been accepted/rejected, certain fields go into read-only mode.": "Quando un PIREP viene accettato/rifiutato, alcuni campi vanno in modalità di sola lettura.",
|
||||
"Flight Informations": "Informazioni di Volo",
|
||||
"Flight Number/Code/Leg": "Numero di Volo/Codice/Tappa",
|
||||
"Code (optional)": "Codice (facoltativo)",
|
||||
"Leg (optional)": "Tappa (facoltativo)",
|
||||
"Minute": "Minuto|Minuti",
|
||||
"Departure/Arrival Informations": "Informazioni di Partenza/Arrivo",
|
||||
"Aircraft Informations": "Informazioni sull'Aeromobile",
|
||||
"Remarks": "Promemoria",
|
||||
"Date Flown": "Volato in Data",
|
||||
"Departure Time": "Orario di Partenza",
|
||||
"Arrival Time": "Orario di Arrivo",
|
||||
"Delete PIREP": "Cancella PIREP",
|
||||
"Save PIREP": "Salva PIREP",
|
||||
"Submit PIREP": "Invia PIREP",
|
||||
"Edit Flight Report": "Modifica Rapporto di Volo",
|
||||
"File New Report": "Inserisci Nuovo Rapporto",
|
||||
"New Flight Report": "Nuovo Rapporto di Volo",
|
||||
"Flight Hours": "Ore di Volo",
|
||||
"Home Airport": "Aeroporto di Casa",
|
||||
"New API Key": "Nuova Chiave API",
|
||||
"Edit": "Modifica",
|
||||
"Your Profile": "Il Tuo Profilo",
|
||||
"Email": "Email",
|
||||
"API Key": "Chiave API",
|
||||
"don't share this!": "Non condividerla!",
|
||||
"Timezone": "Fuso Orario",
|
||||
"Country": "Paese",
|
||||
"Change Password": "Cambia Password",
|
||||
"Confirm Password": "Conferma Password",
|
||||
"Avatar": "Avatar",
|
||||
"Update Profile": "Aggiorna Profilo",
|
||||
"Edit Profile": "Modifica Profilo",
|
||||
"Edit Your Profile": "Modifica il Tuo Profilo",
|
||||
"Download": "Download|Downloads",
|
||||
"There are no downloads!": "Non ci sono downloads!",
|
||||
"Log In": "Accesso",
|
||||
"Create Account": "Crea Account",
|
||||
"Forgot Password": "Password Dimenticata",
|
||||
"Full Name": "Nome Completo",
|
||||
"Email Address": "Indirizzo Email",
|
||||
"Password": "Password",
|
||||
"Fill out the captcha": "Compila la captcha",
|
||||
"Terms and Conditions": "Termini e Condizioni di Utilizzo",
|
||||
"By registering, you agree to the Terms and Conditions.": "Registrandoti accetti i Termini e le Condizioni di Utilizzo.",
|
||||
"Register!": "Registrati!",
|
||||
"Reset Password": "Resetta Password",
|
||||
"Send Password Reset Link": "Invia Link per Resettare la Password",
|
||||
"Click here to reset your password": "Clicca qui per resettare la tua password",
|
||||
"Registration Pending": "Registrazione in Sospeso",
|
||||
"Your registration is pending approval. Please check your email!": "La tua registrazione è in attesa di approvazione. Controlla la tua email per favore!",
|
||||
"Registration Submitted": "Registrazione Inviata",
|
||||
"Registration Confirmation": "Conferma di Registrazione",
|
||||
"Your application has been submitted. It requires staff member approval, once a\nstaff member has reviewed your application, you will receive a confirmation email.": "La tua domanda è stata inviata e richiede l'approvazione di un membro dello staff, appena\nun membro dello staff l'avrà esaminata riceverai un'email di conferma.",
|
||||
"Registration Denied": "Registrazione Rifiutata",
|
||||
"Your registration was denied. Please contact an administrator.": "La tua registrazione è stata rifiutata. Contatta un amministratore per favore.",
|
||||
"Account Suspended": "Account Sospeso",
|
||||
"Your account has been suspended. Please contact an administrator.": "Il tuo account è stato sospeso. Contatta un amministratore per favore.",
|
||||
"Inbound Flights": "Voli in Entrata",
|
||||
"Outbound Flights": "Voli in Uscita",
|
||||
"No Flight Found": "Nessun Volo Trovato",
|
||||
"Ident": "Identificativo",
|
||||
"From": "Da",
|
||||
"To": "A",
|
||||
"Close": "Chiudi",
|
||||
"News": "Novità",
|
||||
"No News Found": "Nessuna Novità Trovata",
|
||||
"METAR/TAF data could not be retrieved": "I dati METAR/TAF non sono stati recuperati",
|
||||
"Conditions": "Condizioni",
|
||||
"visibility": "visibilità",
|
||||
"humidity": "umidità",
|
||||
"dew point": "punto di rugiada",
|
||||
"Barometer": "Barometro",
|
||||
"Clouds": "Nuvole",
|
||||
"Wind": "Vento",
|
||||
"from": "da",
|
||||
"gusts to": "raffiche a",
|
||||
"METAR": "METAR",
|
||||
"Updated": "Aggiornato",
|
||||
"hr ago": "ora fa|ore fa",
|
||||
"min ago": "minuto fa|minuti fa"
|
||||
}
|
||||
19
resources/lang/it/auth.php
Normal file
19
resources/lang/it/auth.php
Normal file
@@ -0,0 +1,19 @@
|
||||
<?php
|
||||
|
||||
return [
|
||||
|
||||
/*
|
||||
|--------------------------------------------------------------------------
|
||||
| Authentication Language Lines
|
||||
|--------------------------------------------------------------------------
|
||||
|
|
||||
| The following language lines are used during authentication for various
|
||||
| messages that we need to display to the user. You are free to modify
|
||||
| these language lines according to your application's requirements.
|
||||
|
|
||||
*/
|
||||
|
||||
'failed' => 'These credentials do not match our records.',
|
||||
'throttle' => 'Too many login attempts. Please try again in :seconds seconds.',
|
||||
|
||||
];
|
||||
246
resources/lang/it/installer_messages.php
Normal file
246
resources/lang/it/installer_messages.php
Normal file
@@ -0,0 +1,246 @@
|
||||
<?php
|
||||
|
||||
return [
|
||||
|
||||
/**
|
||||
*
|
||||
* Shared translations.
|
||||
*
|
||||
*/
|
||||
'title' => 'phpVMS Installer',
|
||||
'next' => 'Next Step',
|
||||
'back' => 'Previous',
|
||||
'finish' => 'Install',
|
||||
'forms' => [
|
||||
'errorTitle' => 'The Following errors occurred:',
|
||||
],
|
||||
|
||||
/**
|
||||
*
|
||||
* Home page translations.
|
||||
*
|
||||
*/
|
||||
'welcome' => [
|
||||
'templateTitle' => 'Welcome',
|
||||
'title' => 'phpVMS Installer',
|
||||
'message' => 'Easy Installation and Setup Wizard.',
|
||||
'next' => 'Check Requirements',
|
||||
],
|
||||
|
||||
/**
|
||||
*
|
||||
* Requirements page translations.
|
||||
*
|
||||
*/
|
||||
'requirements' => [
|
||||
'templateTitle' => 'Step 1 | Server Requirements',
|
||||
'title' => 'Server Requirements',
|
||||
'next' => 'Check Permissions',
|
||||
],
|
||||
|
||||
/**
|
||||
*
|
||||
* Permissions page translations.
|
||||
*
|
||||
*/
|
||||
'permissions' => [
|
||||
'templateTitle' => 'Step 2 | Permissions',
|
||||
'title' => 'Permissions',
|
||||
'next' => 'Configure Environment',
|
||||
],
|
||||
|
||||
/**
|
||||
*
|
||||
* Environment page translations.
|
||||
*
|
||||
*/
|
||||
'environment' => [
|
||||
'menu' => [
|
||||
'templateTitle' => 'Step 3 | Environment Settings',
|
||||
'title' => 'Environment Settings',
|
||||
'desc' => 'Please select how you want to configure the apps <code>.env</code> file.',
|
||||
'wizard-button' => 'Form Wizard Setup',
|
||||
'classic-button' => 'Classic Text Editor',
|
||||
],
|
||||
'wizard' => [
|
||||
'templateTitle' => 'Step 3 | Environment Settings | Guided Wizard',
|
||||
'title' => 'Guided <code>.env</code> Wizard',
|
||||
'tabs' => [
|
||||
'environment' => 'Environment',
|
||||
'database' => 'Database',
|
||||
'application' => 'Application'
|
||||
],
|
||||
'form' => [
|
||||
'name_required' => 'An environment name is required.',
|
||||
'app_name_label' => 'App Name',
|
||||
'app_name_placeholder' => 'App Name',
|
||||
'app_environment_label' => 'App Environment',
|
||||
'app_environment_label_local' => 'Local',
|
||||
'app_environment_label_developement' => 'Development',
|
||||
'app_environment_label_qa' => 'Qa',
|
||||
'app_environment_label_production' => 'Production',
|
||||
'app_environment_label_other' => 'Other',
|
||||
'app_environment_placeholder_other' => 'Enter your environment...',
|
||||
'app_debug_label' => 'App Debug',
|
||||
'app_debug_label_true' => 'True',
|
||||
'app_debug_label_false' => 'False',
|
||||
'app_log_level_label' => 'App Log Level',
|
||||
'app_log_level_label_debug' => 'debug',
|
||||
'app_log_level_label_info' => 'info',
|
||||
'app_log_level_label_notice' => 'notice',
|
||||
'app_log_level_label_warning' => 'warning',
|
||||
'app_log_level_label_error' => 'error',
|
||||
'app_log_level_label_critical' => 'critical',
|
||||
'app_log_level_label_alert' => 'alert',
|
||||
'app_log_level_label_emergency' => 'emergency',
|
||||
'app_url_label' => 'App Url',
|
||||
'app_url_placeholder' => 'App Url',
|
||||
'db_connection_label' => 'Database Connection',
|
||||
'db_connection_label_mysql' => 'mysql',
|
||||
'db_connection_label_sqlite' => 'sqlite',
|
||||
'db_connection_label_pgsql' => 'pgsql',
|
||||
'db_connection_label_sqlsrv' => 'sqlsrv',
|
||||
'db_host_label' => 'Database Host',
|
||||
'db_host_placeholder' => 'Database Host',
|
||||
'db_port_label' => 'Database Port',
|
||||
'db_port_placeholder' => 'Database Port',
|
||||
'db_name_label' => 'Database Name',
|
||||
'db_name_placeholder' => 'Database Name',
|
||||
'db_username_label' => 'Database User Name',
|
||||
'db_username_placeholder' => 'Database User Name',
|
||||
'db_password_label' => 'Database Password',
|
||||
'db_password_placeholder' => 'Database Password',
|
||||
|
||||
'app_tabs' => [
|
||||
'more_info' => 'More Info',
|
||||
'broadcasting_title' => 'Broadcasting, Caching, Session, & Queue',
|
||||
'broadcasting_label' => 'Broadcast Driver',
|
||||
'broadcasting_placeholder' => 'Broadcast Driver',
|
||||
'cache_label' => 'Cache Driver',
|
||||
'cache_placeholder' => 'Cache Driver',
|
||||
'session_label' => 'Session Driver',
|
||||
'session_placeholder' => 'Session Driver',
|
||||
'queue_label' => 'Queue Driver',
|
||||
'queue_placeholder' => 'Queue Driver',
|
||||
'redis_label' => 'Redis Driver',
|
||||
'redis_host' => 'Redis Host',
|
||||
'redis_password' => 'Redis Password',
|
||||
'redis_port' => 'Redis Port',
|
||||
|
||||
'mail_label' => 'Mail',
|
||||
'mail_driver_label' => 'Mail Driver',
|
||||
'mail_driver_placeholder' => 'Mail Driver',
|
||||
'mail_host_label' => 'Mail Host',
|
||||
'mail_host_placeholder' => 'Mail Host',
|
||||
'mail_port_label' => 'Mail Port',
|
||||
'mail_port_placeholder' => 'Mail Port',
|
||||
'mail_username_label' => 'Mail Username',
|
||||
'mail_username_placeholder' => 'Mail Username',
|
||||
'mail_password_label' => 'Mail Password',
|
||||
'mail_password_placeholder' => 'Mail Password',
|
||||
'mail_encryption_label' => 'Mail Encryption',
|
||||
'mail_encryption_placeholder' => 'Mail Encryption',
|
||||
|
||||
'pusher_label' => 'Pusher',
|
||||
'pusher_app_id_label' => 'Pusher App Id',
|
||||
'pusher_app_id_palceholder' => 'Pusher App Id',
|
||||
'pusher_app_key_label' => 'Pusher App Key',
|
||||
'pusher_app_key_palceholder' => 'Pusher App Key',
|
||||
'pusher_app_secret_label' => 'Pusher App Secret',
|
||||
'pusher_app_secret_palceholder' => 'Pusher App Secret',
|
||||
],
|
||||
'buttons' => [
|
||||
'setup_database' => 'Setup Database',
|
||||
'setup_application' => 'Setup Application',
|
||||
'install' => 'Install',
|
||||
],
|
||||
],
|
||||
],
|
||||
'classic' => [
|
||||
'templateTitle' => 'Step 3 | Environment Settings | Classic Editor',
|
||||
'title' => 'Classic Environment Editor',
|
||||
'save' => 'Save .env',
|
||||
'back' => 'Use Form Wizard',
|
||||
'install' => 'Save and Install',
|
||||
],
|
||||
'success' => 'Your .env file settings have been saved.',
|
||||
'errors' => 'Unable to save the .env file, Please create it manually.',
|
||||
],
|
||||
|
||||
'install' => 'Install',
|
||||
|
||||
/**
|
||||
*
|
||||
* Installed Log translations.
|
||||
*
|
||||
*/
|
||||
'installed' => [
|
||||
'success_log_message' => 'Laravel Installer successfully INSTALLED on ',
|
||||
],
|
||||
|
||||
/**
|
||||
*
|
||||
* Final page translations.
|
||||
*
|
||||
*/
|
||||
'final' => [
|
||||
'title' => 'Installation Finished',
|
||||
'templateTitle' => 'Installation Finished',
|
||||
'finished' => 'Application has been successfully installed.',
|
||||
'migration' => 'Migration & Seed Console Output:',
|
||||
'console' => 'Application Console Output:',
|
||||
'log' => 'Installation Log Entry:',
|
||||
'env' => 'Final .env File:',
|
||||
'exit' => 'Click here to exit',
|
||||
],
|
||||
|
||||
/**
|
||||
*
|
||||
* Update specific translations
|
||||
*
|
||||
*/
|
||||
'updater' => [
|
||||
/**
|
||||
*
|
||||
* Shared translations.
|
||||
*
|
||||
*/
|
||||
'title' => 'Laravel Updater',
|
||||
|
||||
/**
|
||||
*
|
||||
* Welcome page translations for update feature.
|
||||
*
|
||||
*/
|
||||
'welcome' => [
|
||||
'title' => 'Welcome To The Updater',
|
||||
'message' => 'Welcome to the update wizard.',
|
||||
],
|
||||
|
||||
/**
|
||||
*
|
||||
* Welcome page translations for update feature.
|
||||
*
|
||||
*/
|
||||
'overview' => [
|
||||
'title' => 'Overview',
|
||||
'message' => 'There is 1 update.|There are :number updates.',
|
||||
'install_updates' => "Install Updates"
|
||||
],
|
||||
|
||||
/**
|
||||
*
|
||||
* Final page translations.
|
||||
*
|
||||
*/
|
||||
'final' => [
|
||||
'title' => 'Finished',
|
||||
'finished' => 'Application\'s database has been successfully updated.',
|
||||
'exit' => 'Click here to exit',
|
||||
],
|
||||
|
||||
'log' => [
|
||||
'success_message' => 'Laravel Installer successfully UPDATED on ',
|
||||
],
|
||||
],
|
||||
];
|
||||
19
resources/lang/it/pagination.php
Normal file
19
resources/lang/it/pagination.php
Normal file
@@ -0,0 +1,19 @@
|
||||
<?php
|
||||
|
||||
return [
|
||||
|
||||
/*
|
||||
|--------------------------------------------------------------------------
|
||||
| Pagination Language Lines
|
||||
|--------------------------------------------------------------------------
|
||||
|
|
||||
| The following language lines are used by the paginator library to build
|
||||
| the simple pagination links. You are free to change them to anything
|
||||
| you want to customize your views to better match your application.
|
||||
|
|
||||
*/
|
||||
|
||||
'previous' => '« Previous',
|
||||
'next' => 'Next »',
|
||||
|
||||
];
|
||||
22
resources/lang/it/passwords.php
Normal file
22
resources/lang/it/passwords.php
Normal file
@@ -0,0 +1,22 @@
|
||||
<?php
|
||||
|
||||
return [
|
||||
|
||||
/*
|
||||
|--------------------------------------------------------------------------
|
||||
| Password Reset Language Lines
|
||||
|--------------------------------------------------------------------------
|
||||
|
|
||||
| The following language lines are the default lines which match reasons
|
||||
| that are given by the password broker for a password update attempt
|
||||
| has failed, such as for an invalid token or invalid new password.
|
||||
|
|
||||
*/
|
||||
|
||||
'password' => 'Passwords must be at least six characters and match the confirmation.',
|
||||
'reset' => 'Your password has been reset!',
|
||||
'sent' => 'We have e-mailed your password reset link!',
|
||||
'token' => 'This password reset token is invalid.',
|
||||
'user' => "We can't find a user with that e-mail address.",
|
||||
|
||||
];
|
||||
106
resources/lang/it/system.php
Normal file
106
resources/lang/it/system.php
Normal file
@@ -0,0 +1,106 @@
|
||||
<?php
|
||||
|
||||
return [
|
||||
|
||||
'global' => [
|
||||
'active' => 'Active',
|
||||
'inactive' => 'Inactive'
|
||||
],
|
||||
|
||||
'aircraft' => [
|
||||
'status' => [
|
||||
'active' => 'Active',
|
||||
'stored' => 'Stored',
|
||||
'retired' => 'Retired',
|
||||
'scrapped' => 'Scrapped',
|
||||
'written' => 'Written Off',
|
||||
],
|
||||
],
|
||||
|
||||
'days' => [
|
||||
'mon' => 'Monday',
|
||||
'tues' => 'Tuesday',
|
||||
'wed' => 'Wednesday',
|
||||
'thurs' => 'Thursday',
|
||||
'fri' => 'Friday',
|
||||
'sat' => 'Saturday',
|
||||
'sun' => 'Sunday',
|
||||
],
|
||||
|
||||
'expenses' => [
|
||||
'type' => [
|
||||
'flight' => 'Flight',
|
||||
'daily' => 'Daily',
|
||||
'monthly' => 'Monthly',
|
||||
],
|
||||
],
|
||||
|
||||
'flights' => [
|
||||
'type' => [
|
||||
'pass_scheduled' => 'Passenger - Scheduled',
|
||||
'cargo_scheduled' => 'Cargo - Scheduled',
|
||||
'charter_pass_only' => 'Charter - Passenger Only',
|
||||
'addtl_cargo_mail' => 'Additional Cargo/Mail',
|
||||
'special_vip' => 'Special VIP Flight (FAA/Government)',
|
||||
'pass_addtl' => 'Passenger - Additional',
|
||||
'charter_cargo' => 'Charter - Cargo/Mail',
|
||||
'ambulance' => 'Ambulance Flight',
|
||||
'training_flight' => 'Training Flight',
|
||||
'mail_service' => 'Mail Service',
|
||||
'charter_special' => 'Charter w/ Special Handling',
|
||||
'positioning' => 'Positioning (Ferry/Delivery/Demo)',
|
||||
'technical_test' => 'Technical Test',
|
||||
'military' => 'Military',
|
||||
'technical_stop' => 'Technical Stop',
|
||||
],
|
||||
],
|
||||
|
||||
'pireps' => [
|
||||
'source' => [
|
||||
'manual' => 'Manual',
|
||||
'acars' => 'ACARS',
|
||||
],
|
||||
'state' => [
|
||||
'accepted' => 'Accepted',
|
||||
'pending' => 'Pending Approval',
|
||||
'rejected' => 'Rejected',
|
||||
'in_progress' => 'In Progress',
|
||||
'cancelled' => 'Cancelled',
|
||||
'deleted' => 'Deleted',
|
||||
'draft' => 'Draft',
|
||||
],
|
||||
'status' => [
|
||||
'initialized' => 'Initiated',
|
||||
'scheduled' => 'Scheduled',
|
||||
'boarding' => 'Boarding',
|
||||
'ready_start' => 'Ready for start',
|
||||
'push_tow' => 'Pushback/towing',
|
||||
'departed' => 'Departed',
|
||||
'ready_deice' => 'Ready for de-icing',
|
||||
'deicing' => 'De-icing in progress',
|
||||
'ground_ret' => 'Ground return',
|
||||
'taxi' => 'Taxi',
|
||||
'takeoff' => 'Takeoff',
|
||||
'initial_clb' => 'Initial Climb',
|
||||
'enroute' => 'Enroute',
|
||||
'diverted' => 'Diverted',
|
||||
'approach' => 'Approach',
|
||||
'final_appr' => 'Final approach',
|
||||
'landing' => 'Landing',
|
||||
'landed' => 'Landed',
|
||||
'arrived' => 'Arrived',
|
||||
'cancelled' => 'Cancelled',
|
||||
'emerg_decent' => 'Emergency decent',
|
||||
]
|
||||
],
|
||||
|
||||
'users' => [
|
||||
'state' => [
|
||||
'pending' => 'Pending',
|
||||
'active' => 'Active',
|
||||
'rejected' => 'Rejected',
|
||||
'on_leave' => 'On Leave',
|
||||
'suspended' => 'Suspended',
|
||||
],
|
||||
],
|
||||
];
|
||||
120
resources/lang/it/validation.php
Normal file
120
resources/lang/it/validation.php
Normal file
@@ -0,0 +1,120 @@
|
||||
<?php
|
||||
|
||||
return [
|
||||
|
||||
/**
|
||||
* Validation Language Lines
|
||||
*/
|
||||
|
||||
'accepted' => 'The :attribute must be accepted.',
|
||||
'active_url' => 'The :attribute is not a valid URL.',
|
||||
'after' => 'The :attribute must be a date after :date.',
|
||||
'alpha' => 'The :attribute may only contain letters.',
|
||||
'alpha_dash' => 'The :attribute may only contain letters, numbers, and dashes.',
|
||||
'alpha_num' => 'The :attribute may only contain letters and numbers.',
|
||||
'array' => 'The :attribute must be an array.',
|
||||
'before' => 'The :attribute must be a date before :date.',
|
||||
'between' => [
|
||||
'numeric' => 'The :attribute must be between :min and :max.',
|
||||
'file' => 'The :attribute must be between :min and :max kilobytes.',
|
||||
'string' => 'The :attribute must be between :min and :max characters.',
|
||||
'array' => 'The :attribute must have between :min and :max items.',
|
||||
],
|
||||
'boolean' => 'The :attribute field must be true or false.',
|
||||
'confirmed' => 'The :attribute confirmation does not match.',
|
||||
'date' => 'The :attribute is not a valid date.',
|
||||
'date_format' => 'The :attribute does not match the format :format.',
|
||||
'different' => 'The :attribute and :other must be different.',
|
||||
'digits' => 'The :attribute must be :digits digits.',
|
||||
'digits_between' => 'The :attribute must be between :min and :max digits.',
|
||||
'dimensions' => 'The :attribute has invalid image dimensions.',
|
||||
'distinct' => 'The :attribute field has a duplicate value.',
|
||||
'email' => 'The :attribute must be a valid email address.',
|
||||
'exists' => 'The selected :attribute is invalid.',
|
||||
'file' => 'The :attribute must be a file.',
|
||||
'filled' => 'The ":attribute" is required.',
|
||||
'image' => 'The :attribute must be an image.',
|
||||
'in' => 'The selected :attribute is invalid.',
|
||||
'in_array' => 'The :attribute field does not exist in :other.',
|
||||
'integer' => 'The :attribute must be an integer.',
|
||||
'ip' => 'The :attribute must be a valid IP address.',
|
||||
'json' => 'The :attribute must be a valid JSON string.',
|
||||
'max' => [
|
||||
'numeric' => 'The :attribute may not be greater than :max.',
|
||||
'file' => 'The :attribute may not be greater than :max kilobytes.',
|
||||
'string' => 'The :attribute may not be greater than :max characters.',
|
||||
'array' => 'The :attribute may not have more than :max items.',
|
||||
],
|
||||
'mimes' => 'The :attribute must be a file of type: :values.',
|
||||
'min' => [
|
||||
'numeric' => 'The :attribute must be at least :min.',
|
||||
'file' => 'The :attribute must be at least :min kilobytes.',
|
||||
'string' => 'The :attribute must be at least :min characters.',
|
||||
'array' => 'The :attribute must have at least :min items.',
|
||||
],
|
||||
'not_in' => 'The selected :attribute is invalid.',
|
||||
'numeric' => 'The :attribute must be a number.',
|
||||
'present' => 'The :attribute field must be present.',
|
||||
'regex' => 'The :attribute format is invalid.',
|
||||
'required' => 'The ":attribute" field is required.',
|
||||
'required_if' => 'The :attribute field is required when :other is :value.',
|
||||
'required_unless' => 'The :attribute field is required unless :other is in :values.',
|
||||
'required_with' => 'The :attribute field is required when :values is present.',
|
||||
'required_with_all' => 'The :attribute field is required when :values is present.',
|
||||
'required_without' => 'The :attribute field is required when :values is not present.',
|
||||
'required_without_all' => 'The :attribute field is required when none of :values are present.',
|
||||
'same' => 'The :attribute and :other must match.',
|
||||
'size' => [
|
||||
'numeric' => 'The :attribute must be :size.',
|
||||
'file' => 'The :attribute must be :size kilobytes.',
|
||||
'string' => 'The :attribute must be :size characters.',
|
||||
'array' => 'The :attribute must contain :size items.',
|
||||
],
|
||||
'string' => 'The :attribute must be a string.',
|
||||
'timezone' => 'The :attribute must be a valid zone.',
|
||||
'unique' => 'The :attribute has already been taken.',
|
||||
'url' => 'The :attribute format is invalid.',
|
||||
|
||||
/**
|
||||
* Custom Validation Language Lines
|
||||
*/
|
||||
|
||||
'custom' => [
|
||||
'airline_id' => [
|
||||
'required' => 'An airline is required',
|
||||
'exists' => 'The airline doesn\'t exist',
|
||||
],
|
||||
'aircraft_id' => [
|
||||
'required' => 'An aircraft is required',
|
||||
'exists' => 'The aircraft doesn\'t exist',
|
||||
],
|
||||
'arr_airport_id' => [
|
||||
'required' => 'An arrival airport is required',
|
||||
],
|
||||
'dpt_airport_id' => [
|
||||
'required' => 'A departure airport is required',
|
||||
],
|
||||
'flight_time' => [
|
||||
'required' => 'Flight time, in minutes, is required',
|
||||
'integer' => 'Flight time, in minutes, is required',
|
||||
],
|
||||
'planned_flight_time' => [
|
||||
'required' => 'Flight time, in minutes, is required',
|
||||
'integer' => 'Flight time, in minutes, is required',
|
||||
],
|
||||
'source_name' => [
|
||||
'required' => 'PIREP Source is required',
|
||||
],
|
||||
'g-recaptcha-response' => [
|
||||
'required' => 'Please verify that you are not a robot.',
|
||||
'captcha' => 'Captcha error! try again later or contact site admin.',
|
||||
],
|
||||
],
|
||||
|
||||
/**
|
||||
* Custom Validation Attributes
|
||||
*/
|
||||
|
||||
'attributes' => [],
|
||||
|
||||
];
|
||||
@@ -142,7 +142,7 @@
|
||||
</div>
|
||||
|
||||
<div class="form-group col-sm-4">
|
||||
{{Form::label('days', 'Days of Week')}}
|
||||
{{ Form::label('days', 'Days of Week') }}
|
||||
<span class="description small">optional</span>
|
||||
<select id="days_of_week" name="days[]" multiple="multiple" size="7" style="width: 100%;">
|
||||
<option value="{{\App\Models\Enums\Days::MONDAY}}"
|
||||
@@ -150,7 +150,7 @@
|
||||
@lang('system.days.mon')
|
||||
</option>
|
||||
<option value="{{\App\Models\Enums\Days::TUESDAY}}"
|
||||
{{in_mask($days, \App\Models\Enums\Days::TUESDAY) ? 'select':'' }}>
|
||||
{{in_mask($days, \App\Models\Enums\Days::TUESDAY) ? 'selected':'' }}>
|
||||
@lang('system.days.tues')
|
||||
</option>
|
||||
<option value="{{\App\Models\Enums\Days::WEDNESDAY}}"
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
@extends('app')
|
||||
@section('title', 'live map')
|
||||
@section('title', __('Live Map'))
|
||||
|
||||
@section('content')
|
||||
{{ Widget::liveMap() }}
|
||||
|
||||
@@ -28,7 +28,7 @@
|
||||
{{-- There are files uploaded and a user is logged in--}}
|
||||
@if(count($airport->files) > 0 && Auth::check())
|
||||
<div class="col-12">
|
||||
<h3>Downloads</h3>
|
||||
<h3>{{ __trans_choice('Download', 2) }}</h3>
|
||||
@include('downloads.table', ['files' => $airport->files])
|
||||
</div>
|
||||
@endif
|
||||
@@ -36,19 +36,19 @@
|
||||
|
||||
<div class="row">
|
||||
<div class="col-6">
|
||||
<h5>Inbound Flights</h5>
|
||||
<h5>{{ __('Inbound Flights') }}</h5>
|
||||
@if(!$inbound_flights)
|
||||
<div class="jumbotron text-center">
|
||||
no flights found
|
||||
{{ __('No Flight Found') }}
|
||||
</div>
|
||||
@else
|
||||
<table class="table table-striped table-condensed">
|
||||
<thead>
|
||||
<tr>
|
||||
<th class="text-left">Ident</th>
|
||||
<th class="text-left">From</th>
|
||||
<th>Departure</th>
|
||||
<th>Arrival</th>
|
||||
<th class="text-left">{{ __('Ident') }}</th>
|
||||
<th class="text-left">{{ __('From') }}</th>
|
||||
<th>{{ __('Departure') }}</th>
|
||||
<th>{{ __('Arrival') }}</th>
|
||||
</tr>
|
||||
</thead>
|
||||
@foreach($inbound_flights as $flight)
|
||||
@@ -71,19 +71,19 @@
|
||||
</div>
|
||||
|
||||
<div class="col-6">
|
||||
<h5>Outbound Flights</h5>
|
||||
<h5>{{ __('Outbound Flights') }}</h5>
|
||||
@if(!$outbound_flights)
|
||||
<div class="jumbotron text-center">
|
||||
no flights found
|
||||
{{ __('No Flight Found') }}
|
||||
</div>
|
||||
@else
|
||||
<table class="table table-striped table-condensed">
|
||||
<thead>
|
||||
<tr>
|
||||
<th class="text-left">Ident</th>
|
||||
<th class="text-left">To</th>
|
||||
<th>Departure</th>
|
||||
<th>Arrival</th>
|
||||
<th class="text-left">{{ __('Ident') }}</th>
|
||||
<th class="text-left">{{ __('To') }}</th>
|
||||
<th>{{ __('Departure') }}</th>
|
||||
<th>{{ __('Arrival') }}</th>
|
||||
</tr>
|
||||
</thead>
|
||||
@foreach($outbound_flights as $flight)
|
||||
|
||||
@@ -1 +1 @@
|
||||
Click here to reset your password: <a href="{{ $link = url('password/reset', $token).'?email='.urlencode($user->getEmailForPasswordReset()) }}"> {{ $link }} </a>
|
||||
{{ __('Click here to reset your password') }}: <a href="{{ $link = url('password/reset', $token).'?email='.urlencode($user->getEmailForPasswordReset()) }}"> {{ $link }} </a>
|
||||
|
||||
@@ -40,7 +40,7 @@
|
||||
</div>
|
||||
</body>
|
||||
|
||||
<script src="{{ public_asset('/assets/frontend/js/core/jquery.3.2.1.min.js') }}" type="text/javascript"></script>
|
||||
<script src="{{ public_asset('/assets/frontend/js/core/jquery-3.3.1.min.js') }}" type="text/javascript"></script>
|
||||
|
||||
@yield('scripts')
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
@extends('auth.layout')
|
||||
@section('title', 'Log In')
|
||||
@section('title', __('Log In'))
|
||||
|
||||
@section('content')
|
||||
<div class="col-md-4 content-center">
|
||||
@@ -51,16 +51,16 @@
|
||||
|
||||
</div>
|
||||
<div class="footer text-center">
|
||||
<button href="#pablo" class="btn btn-primary btn-round btn-lg btn-block">login</button>
|
||||
<button href="#pablo" class="btn btn-primary btn-round btn-lg btn-block">{{ __('Login') }}</button>
|
||||
</div>
|
||||
<div class="pull-left">
|
||||
<h6>
|
||||
<a href="{{ url('/register') }}" class="link">Create Account</a>
|
||||
<a href="{{ url('/register') }}" class="link">{{ __('Create Account') }}</a>
|
||||
</h6>
|
||||
</div>
|
||||
<div class="pull-right">
|
||||
<h6>
|
||||
<a href="{{ url('/password/reset') }}" class="link">Forgot Password?</a>
|
||||
<a href="{{ url('/password/reset') }}" class="link">{{ __('Forgot Password') }}?</a>
|
||||
</h6>
|
||||
</div>
|
||||
{{ Form::close() }}
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
@extends('app')
|
||||
@section('title', __('Reset Password'))
|
||||
|
||||
<!-- Main Content -->
|
||||
@section('content')
|
||||
@@ -6,7 +7,7 @@
|
||||
<div class="row">
|
||||
<div class="col-md-8 col-md-offset-2">
|
||||
<div class="panel panel-default">
|
||||
<div class="panel-heading">Reset Password</div>
|
||||
<div class="panel-heading">{{ __('Reset Password') }}</div>
|
||||
<div class="panel-body">
|
||||
@if (session('status'))
|
||||
<div class="alert alert-success">
|
||||
@@ -18,7 +19,7 @@
|
||||
{{ csrf_field() }}
|
||||
|
||||
<div class="form-group{{ $errors->has('email') ? ' has-error' : '' }}">
|
||||
<label for="email" class="col-md-4 control-label">E-Mail Address</label>
|
||||
<label for="email" class="col-md-4 control-label">{{ __('Email Address') }}</label>
|
||||
|
||||
<div class="col-md-6">
|
||||
<input id="email" type="email" class="form-control" name="email" value="{{ old('email') }}" required>
|
||||
@@ -34,7 +35,7 @@
|
||||
<div class="form-group">
|
||||
<div class="col-md-6 col-md-offset-4">
|
||||
<button type="submit" class="btn btn-primary">
|
||||
Send Password Reset Link
|
||||
{{ __('Send Password Reset Link') }}
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
@extends('app')
|
||||
@section('title', 'Reset Password')
|
||||
@section('title', __('Reset Password'))
|
||||
|
||||
@section('content')
|
||||
<div class="container">
|
||||
<div class="row">
|
||||
<div class="col-md-8 col-md-offset-2">
|
||||
<div class="panel panel-default">
|
||||
<div class="panel-heading">Reset Password</div>
|
||||
<div class="panel-heading">{{ __('Reset Password') }}</div>
|
||||
<div class="panel-body">
|
||||
{{ Form::open([
|
||||
'url' => url('/password/reset'),
|
||||
@@ -18,7 +18,7 @@
|
||||
<input type="hidden" name="token" value="{{ $token }}">
|
||||
|
||||
<div class="form-group{{ $errors->has('email') ? ' has-error' : '' }}">
|
||||
<label for="email" class="col-md-4 control-label">E-Mail Address</label>
|
||||
<label for="email" class="col-md-4 control-label">{{ __('Email Address') }}</label>
|
||||
|
||||
<div class="col-md-6">
|
||||
<input id="email" type="email" class="form-control" name="email" value="{{ $email or old('email') }}" required autofocus>
|
||||
@@ -32,7 +32,7 @@
|
||||
</div>
|
||||
|
||||
<div class="form-group{{ $errors->has('password') ? ' has-error' : '' }}">
|
||||
<label for="password" class="col-md-4 control-label">Password</label>
|
||||
<label for="password" class="col-md-4 control-label">{{ __('Password') }}</label>
|
||||
|
||||
<div class="col-md-6">
|
||||
<input id="password" type="password" class="form-control" name="password" required>
|
||||
@@ -46,7 +46,7 @@
|
||||
</div>
|
||||
|
||||
<div class="form-group{{ $errors->has('password_confirmation') ? ' has-error' : '' }}">
|
||||
<label for="password-confirm" class="col-md-4 control-label">Confirm Password</label>
|
||||
<label for="password-confirm" class="col-md-4 control-label">{{ __('Confirm Password') }}</label>
|
||||
<div class="col-md-6">
|
||||
<input id="password-confirm" type="password" class="form-control" name="password_confirmation" required>
|
||||
|
||||
@@ -61,7 +61,7 @@
|
||||
<div class="form-group">
|
||||
<div class="col-md-6 col-md-offset-4">
|
||||
<button type="submit" class="btn btn-primary">
|
||||
Reset Password
|
||||
{{ __('Reset Password') }}
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
@extends('app')
|
||||
@section('title', 'registration pending')
|
||||
@section('title', __('Registration Pending'))
|
||||
|
||||
@section('content')
|
||||
<div class="row">
|
||||
<div class="col-md-12 " style="text-align: center;">
|
||||
<div class="flex-center position-ref full-height">
|
||||
<div class="title m-b-md">
|
||||
<h2 class="description">your registration is pending approval. please check your email!</h2>
|
||||
<h2 class="description">{{ __('Your registration is pending approval. Please check your email!') }}</h2>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
@extends('app')
|
||||
@section('title', 'register')
|
||||
@section('title', __('Register'))
|
||||
|
||||
@section('content')
|
||||
<div class="row">
|
||||
@@ -10,8 +10,8 @@
|
||||
|
||||
<div class="panel periodic-login">
|
||||
<div class="panel-body">
|
||||
<h2>Register</h2>
|
||||
<label for="name" class="control-label">Full Name</label>
|
||||
<h2>{{ __('Register') }}</h2>
|
||||
<label for="name" class="control-label">{{ __('Full Name') }}</label>
|
||||
<div class="input-group form-group-no-border {{ $errors->has('name') ? 'has-danger' : '' }}">
|
||||
{{ Form::text('name', null, ['class' => 'form-control']) }}
|
||||
</div>
|
||||
@@ -19,7 +19,7 @@
|
||||
<p class="text-danger">{{ $errors->first('name') }}</p>
|
||||
@endif
|
||||
|
||||
<label for="email" class="control-label">Email Address</label>
|
||||
<label for="email" class="control-label">{{ __('Email Address') }}</label>
|
||||
<div class="input-group form-group-no-border {{ $errors->has('email') ? 'has-danger' : '' }}">
|
||||
{{ Form::text('email', null, ['class' => 'form-control']) }}
|
||||
</div>
|
||||
@@ -27,7 +27,7 @@
|
||||
<p class="text-danger">{{ $errors->first('email') }}</p>
|
||||
@endif
|
||||
|
||||
<label for="airline" class="control-label">Airline</label>
|
||||
<label for="airline" class="control-label">{{ __('Airline') }}</label>
|
||||
<div class="input-group form-group-no-border {{ $errors->has('airline') ? 'has-danger' : '' }}">
|
||||
{{ Form::select('airline_id', $airlines, null , ['class' => 'form-control select2']) }}
|
||||
</div>
|
||||
@@ -35,7 +35,7 @@
|
||||
<p class="text-danger">{{ $errors->first('airline_id') }}</p>
|
||||
@endif
|
||||
|
||||
<label for="home_airport" class="control-label">Home Airport</label>
|
||||
<label for="home_airport" class="control-label">{{ __('Home Airport') }}</label>
|
||||
<div class="input-group form-group-no-border {{ $errors->has('home_airport') ? 'has-danger' : '' }}">
|
||||
{{ Form::select('home_airport_id', $airports, null , ['class' => 'form-control select2']) }}
|
||||
</div>
|
||||
@@ -43,7 +43,7 @@
|
||||
<p class="text-danger">{{ $errors->first('home_airport_id') }}</p>
|
||||
@endif
|
||||
|
||||
<label for="country" class="control-label">Country</label>
|
||||
<label for="country" class="control-label">{{ __('Country') }}</label>
|
||||
<div class="input-group form-group-no-border {{ $errors->has('country') ? 'has-danger' : '' }}">
|
||||
{{ Form::select('country', $countries, null, ['class' => 'form-control select2' ]) }}
|
||||
</div>
|
||||
@@ -51,7 +51,7 @@
|
||||
<p class="text-danger">{{ $errors->first('country') }}</p>
|
||||
@endif
|
||||
|
||||
<label for="timezone" class="control-label">Timezone</label>
|
||||
<label for="timezone" class="control-label">{{ __('Timezone') }}</label>
|
||||
<div class="input-group form-group-no-border {{ $errors->has('timezone') ? 'has-danger' : '' }}">
|
||||
{{ Form::select('timezone', $timezones, null, ['id'=>'timezone', 'class' => 'form-control select2' ]) }}
|
||||
</div>
|
||||
@@ -59,7 +59,7 @@
|
||||
<p class="text-danger">{{ $errors->first('timezone') }}</p>
|
||||
@endif
|
||||
|
||||
<label for="password" class="control-label">Password</label>
|
||||
<label for="password" class="control-label">{{ __('Password') }}</label>
|
||||
<div class="input-group form-group-no-border {{ $errors->has('password') ? 'has-danger' : '' }}">
|
||||
{{ Form::password('password', ['class' => 'form-control']) }}
|
||||
</div>
|
||||
@@ -67,7 +67,7 @@
|
||||
<p class="text-danger">{{ $errors->first('password') }}</p>
|
||||
@endif
|
||||
|
||||
<label for="password_confirmation" class="control-label">Confirm Password</label>
|
||||
<label for="password_confirmation" class="control-label">{{ __('Confirm Password') }}</label>
|
||||
<div class="input-group form-group-no-border {{ $errors->has('password_confirmation') ? 'has-danger' : '' }}">
|
||||
{{ Form::password('password_confirmation', ['class' => 'form-control']) }}
|
||||
</div>
|
||||
@@ -76,7 +76,7 @@
|
||||
@endif
|
||||
|
||||
@if(config('captcha.enabled'))
|
||||
<label for="g-recaptcha-response" class="control-label">Fill out the captcha</label>
|
||||
<label for="g-recaptcha-response" class="control-label">{{ __('Fill out the captcha') }}</label>
|
||||
<div class="input-group form-group-no-border {{ $errors->has('g-recaptcha-response') ? 'has-danger' : '' }}">
|
||||
{!! NoCaptcha::display(config('captcha.attributes')) !!}
|
||||
</div>
|
||||
@@ -88,8 +88,8 @@
|
||||
@include('auth.toc')
|
||||
|
||||
<div style="width: 100%; text-align: right; padding-top: 20px;">
|
||||
By registering, you agree to the Term and Conditions<br /><br />
|
||||
{{ Form::submit('Register!', ['class' => 'btn btn-primary']) }}
|
||||
{{ __('By registering, you agree to the Terms and Conditions.') }}<br /><br />
|
||||
{{ Form::submit(__('Register!'), ['class' => 'btn btn-primary']) }}
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
@@ -1,12 +1,11 @@
|
||||
@extends('app')
|
||||
@section('title', 'registration submitted')
|
||||
@section('title', __('Registration Submitted'))
|
||||
|
||||
@section('content')
|
||||
<div class="container registered-page">
|
||||
<h3>Registration Confirmation</h3>
|
||||
<h3>{{ __('Registration Confirmation') }}</h3>
|
||||
<p>
|
||||
Your application has been submitted. It requires staff member approval, once a
|
||||
staff member has reviewed your application, you will receive an email confirmation.
|
||||
__('Your application has been submitted. It requires staff member approval, once a\nstaff member has reviewed your application, you will receive a confirmation email.') }}
|
||||
</p>
|
||||
</div>
|
||||
@endsection
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
@extends('app')
|
||||
@section('title', 'registration denied')
|
||||
@section('title', __('Registration Denied'))
|
||||
|
||||
@section('content')
|
||||
<div class="row">
|
||||
@@ -7,7 +7,7 @@
|
||||
<div class="flex-center position-ref full-height">
|
||||
<div class="title m-b-md">
|
||||
<h2 class="description">
|
||||
your registration was denied. please contact an administrator
|
||||
{{ __('Your registration was denied. Please contact an administrator.') }}
|
||||
</h2>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
@extends('app')
|
||||
@section('title', 'account suspended')
|
||||
@section('title', __('Account Suspended'))
|
||||
|
||||
@section('content')
|
||||
<div class="row">
|
||||
@@ -7,7 +7,7 @@
|
||||
<div class="flex-center position-ref full-height">
|
||||
<div class="title m-b-md">
|
||||
<h2 class="description">
|
||||
your has been suspended. please contact an administrator
|
||||
{{ __('Your account has been suspended. Please contact an administrator.') }}
|
||||
</h2>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
<h4>Terms and Conditions</h4>
|
||||
<h4>{{ __('Terms and Conditions') }}</h4>
|
||||
<textarea class="form-control" style="height: 150px; border: 1px #ccc solid;">
|
||||
{{ config('app.name') }} offers this Web site, including all information, software,
|
||||
products and services available from this Web site or offered as part of or in conjunction
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
@extends('app')
|
||||
@section('title', 'dashboard')
|
||||
@section('title', __('Dashboard'))
|
||||
|
||||
@section('content')
|
||||
<div class="row">
|
||||
@@ -14,7 +14,7 @@
|
||||
<i class="fas fa-plane icon"></i>
|
||||
</div>
|
||||
<h3 class="header">{{ $user->flights }}</h3>
|
||||
<h5 class="description">{{ str_plural('flight', $user->flights) }}</h5>
|
||||
<h5 class="description">{{ __trans_choice('Flight', $user->flights) }}</h5>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -26,11 +26,10 @@
|
||||
<i class="far fa-clock icon"></i>
|
||||
</div>
|
||||
<h3 class="header">{{ \App\Facades\Utils::minutesToTimeString($user->flight_time, false)}}</h3>
|
||||
<h5 class="description">total hours</h5>
|
||||
<h5 class="description">{{ __('Total Hours') }}</h5>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-sm-3">
|
||||
<div class="card card-primary text-white dashboard-box">
|
||||
<div class="card-block text-center">
|
||||
@@ -38,7 +37,7 @@
|
||||
<i class="fas fa-money-bill-alt icon"></i>
|
||||
</div>
|
||||
<h3 class="header">{{ $user->journal->balance }}</h3>
|
||||
<h5 class="description">your balance</h5>
|
||||
<h5 class="description">{{ __('Your Balance') }}</h5>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -54,28 +53,25 @@
|
||||
@else
|
||||
<h3 class="header">{{ $user->home_airport_id }}</h3>
|
||||
@endif
|
||||
<h5 class="description">current airport</h5>
|
||||
<h5 class="description">{{ __('Current Airport') }}</h5>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
@if($last_pirep === null)
|
||||
<div class="card">
|
||||
<div class="nav nav-tabs" role="tablist" style="background: #067ec1; color: #FFF;">
|
||||
Your Last Report
|
||||
{{ __('Your Last Report') }}
|
||||
</div>
|
||||
@if($last_pirep === null)
|
||||
<div class="card-block" style="text-align:center;">
|
||||
No reports yet. <a href="{{ route('frontend.pireps.create') }}">File one now.</a>
|
||||
{{ __('No reports yet.') }} <a href="{{ route('frontend.pireps.create') }}">{{ __('File one now.') }}</a>
|
||||
</div>
|
||||
</div>
|
||||
@else
|
||||
<div class="nav nav-tabs" role="tablist" style="background: #067ec1; color: #FFF;">
|
||||
Your Last Report
|
||||
</div>
|
||||
@include('pireps.pirep_card', ['pirep' => $last_pirep])
|
||||
@endif
|
||||
</div>
|
||||
|
||||
{{ Widget::latestNews(['count' => 1]) }}
|
||||
|
||||
@@ -85,7 +81,7 @@
|
||||
<div class="col-sm-4">
|
||||
<div class="card">
|
||||
<div class="nav nav-tabs" role="tablist" style="background: #067ec1; color: #FFF;">
|
||||
Weather at {{ $current_airport }}
|
||||
{{ __('Weather at :ICAO', ['ICAO' => $current_airport]) }}
|
||||
</div>
|
||||
<div class="card-block">
|
||||
<!-- Tab panes -->
|
||||
@@ -97,7 +93,7 @@
|
||||
|
||||
<div class="card">
|
||||
<div class="nav nav-tabs" role="tablist" style="background: #067ec1; color: #FFF;">
|
||||
Recent Reports
|
||||
{{ __('Recent Reports') }}
|
||||
</div>
|
||||
<div class="card-block">
|
||||
<!-- Tab panes -->
|
||||
@@ -109,7 +105,7 @@
|
||||
|
||||
<div class="card">
|
||||
<div class="nav nav-tabs" role="tablist" style="background: #067ec1; color: #FFF;">
|
||||
Newest Pilots
|
||||
{{ __('Newest Pilots') }}
|
||||
</div>
|
||||
<div class="card-block">
|
||||
<!-- Tab panes -->
|
||||
|
||||
@@ -1,15 +1,15 @@
|
||||
@extends('app')
|
||||
@section('title', 'downloads')
|
||||
@section('title', __trans_choice('Download', 2))
|
||||
|
||||
@section('content')
|
||||
@include('flash::message')
|
||||
<div class="row">
|
||||
<div class="row-sm-12">
|
||||
<h2>Downloads</h2>
|
||||
<h2>{{ __trans_choice('Download', 2) }}</h2>
|
||||
</div>
|
||||
</div>
|
||||
@if(!$grouped_files || \count($grouped_files) === 0)
|
||||
<div class="jumbotron text-center">There are no downloads!</div>
|
||||
<div class="jumbotron text-center">{{ __('There are no downloads!') }}</div>
|
||||
@else
|
||||
@foreach($grouped_files as $group => $files)
|
||||
<div class="row" style="margin-bottom: 40px;">
|
||||
|
||||
@@ -9,7 +9,7 @@
|
||||
@if($file->description)
|
||||
- {{$file->description}}
|
||||
@endif
|
||||
<span style="margin-left: 20px">{{$file->download_count}} downloads</span>
|
||||
<span style="margin-left: 20px">{{ $file->download_count.' '.__trans_choice('Download', $file->download_count) }}</span>
|
||||
</li>
|
||||
@endforeach
|
||||
</ul>
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
</div>
|
||||
|
||||
<div class="modal-footer">
|
||||
<button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
|
||||
<button type="button" class="btn btn-default" data-dismiss="modal">{{ __('Close') }}</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -1,11 +1,11 @@
|
||||
@extends('app')
|
||||
@section('title', 'flights')
|
||||
@section('title', __trans_choice('Flight', 2))
|
||||
|
||||
@section('content')
|
||||
<div class="row">
|
||||
@include('flash::message')
|
||||
<div class="col-md-9">
|
||||
<h2>{{ $title ?? 'Flights' }}</h2>
|
||||
<h2>{{ $title ?? __trans_choice('Flight', 2) }}</h2>
|
||||
@include('flights.table')
|
||||
</div>
|
||||
<div class="col-md-3">
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<div class="card">
|
||||
<div class="card-block" style="min-height: 0px">
|
||||
<div class="form-group text-right">
|
||||
<a href="{{ route('frontend.flights.bids') }}">My Bids</a>
|
||||
<a href="{{ route('frontend.flights.bids') }}">{{ __trans_choice('My Bid', 2) }}</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
<h3 class="description">search</h3>
|
||||
<h3 class="description">{{ __('Search') }}</h3>
|
||||
<div class="card pull-right">
|
||||
<div class="card-block" style="min-height: 0px">
|
||||
<div class="form-group">
|
||||
@@ -8,23 +8,23 @@
|
||||
'class'=>'form-inline'
|
||||
]) }}
|
||||
<div>
|
||||
<p>Flight Number</p>
|
||||
<p>{{ __('Flight Number') }}</p>
|
||||
{{ Form::text('flight_number', null, ['class' => 'form-control']) }}
|
||||
</div>
|
||||
|
||||
<div style="margin-top: 10px;">
|
||||
<p>Departure Airport</p>
|
||||
<p>{{ __('Departure Airport') }}</p>
|
||||
{{ Form::select('dep_icao', $airports, null , ['class' => 'form-control']) }}
|
||||
</div>
|
||||
|
||||
<div style="margin-top: 10px;">
|
||||
<p>Arrival Airport</p>
|
||||
<p>{{ __('Arrival Airport') }}</p>
|
||||
{{ Form::select('arr_icao', $airports, null , ['class' => 'form-control']) }}
|
||||
</div>
|
||||
|
||||
<div class="clear" style="margin-top: 10px;">
|
||||
{{ Form::submit('find', ['class' => 'btn btn-primary']) }}
|
||||
<a href="{{ route('frontend.flights.index') }}">clear</a>
|
||||
{{ Form::submit(__('Find'), ['class' => 'btn btn-primary']) }}
|
||||
<a href="{{ route('frontend.flights.index') }}">{{ __('Reset') }}</a>
|
||||
</div>
|
||||
{{ Form::close() }}
|
||||
</div>
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
@extends('app')
|
||||
@section('title', 'Flight '.$flight->ident)
|
||||
@section('title', __trans_choice('Flight', 1).' '.$flight->ident)
|
||||
|
||||
@section('content')
|
||||
<div class="row">
|
||||
@@ -13,7 +13,7 @@
|
||||
<div class="col-12">
|
||||
<table class="table">
|
||||
<tr>
|
||||
<td>Departure</td>
|
||||
<td>{{ __('Departure') }}</td>
|
||||
<td>
|
||||
{{ $flight->dpt_airport->name }}
|
||||
(<a href="{{route('frontend.airports.show', [
|
||||
@@ -24,7 +24,7 @@
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td>Arrival</td>
|
||||
<td>{{ __('Arrival') }}</td>
|
||||
<td>
|
||||
{{ $flight->arr_airport->name }}
|
||||
(<a href="{{route('frontend.airports.show', [
|
||||
@@ -34,7 +34,7 @@
|
||||
</tr>
|
||||
@if($flight->alt_airport_id)
|
||||
<tr>
|
||||
<td>Alternate Airport</td>
|
||||
<td>{{ __('Alternate Airport') }}</td>
|
||||
<td>
|
||||
{{ $flight->alt_airport->full_name }}
|
||||
</td>
|
||||
@@ -42,13 +42,13 @@
|
||||
@endif
|
||||
|
||||
<tr>
|
||||
<td>Route</td>
|
||||
<td>{{ __('Route') }}</td>
|
||||
<td>{{ $flight->route }}</td>
|
||||
</tr>
|
||||
|
||||
@if(filled($flight->notes))
|
||||
<tr>
|
||||
<td>Notes</td>
|
||||
<td>{{ __('Notes') }}</td>
|
||||
<td>{{ $flight->notes }}</td>
|
||||
</tr>
|
||||
@endif
|
||||
|
||||
@@ -24,7 +24,7 @@
|
||||
x-id="{{ $flight->id }}"
|
||||
x-saved-class="btn-info"
|
||||
type="button"
|
||||
title="Add/Remove Bid"
|
||||
title="{{ __('Add/Remove Bid') }}"
|
||||
>
|
||||
<i class="fas fa-map-marker"></i>
|
||||
</button>
|
||||
@@ -34,14 +34,14 @@
|
||||
<div class="row">
|
||||
<div class="col-sm-5">
|
||||
{{--<table class="table-condensed"></table>--}}
|
||||
<span class="title">DEP </span>
|
||||
<span class="title">{{ __('DEP') }} </span>
|
||||
{{ $flight->dpt_airport->name }}
|
||||
(<a href="{{route('frontend.airports.show', [
|
||||
'id' => $flight->dpt_airport->icao
|
||||
])}}">{{$flight->dpt_airport->icao}}</a>)
|
||||
@if($flight->dpt_time), {{ $flight->dpt_time }}@endif
|
||||
<br />
|
||||
<span class="title">ARR </span>
|
||||
<span class="title">{{ __('ARR') }} </span>
|
||||
{{ $flight->arr_airport->name }}
|
||||
(<a href="{{route('frontend.airports.show', [
|
||||
'id' => $flight->arr_airport->icao
|
||||
@@ -49,19 +49,19 @@
|
||||
@if($flight->arr_time), {{ $flight->arr_time }}@endif
|
||||
<br />
|
||||
@if($flight->distance)
|
||||
<span class="title">DISTANCE </span>
|
||||
<span class="title">{{ __('DISTANCE') }} </span>
|
||||
{{ $flight->distance }} {{ setting('units.distance') }}
|
||||
@endif
|
||||
<br />
|
||||
@if($flight->level)
|
||||
<span class="title">LEVEL </span>
|
||||
<span class="title">{{ __('LEVEL') }} </span>
|
||||
{{ $flight->level }} {{ setting('units.altitude') }}
|
||||
@endif
|
||||
</div>
|
||||
<div class="col-sm-7">
|
||||
<div class="row">
|
||||
<div class="col-sm-12">
|
||||
<span class="title">ROUTE </span>
|
||||
<span class="title">{{ __('ROUTE') }} </span>
|
||||
{{ $flight->route }}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
@extends('app')
|
||||
@section('title', 'welcome!')
|
||||
@section('title', __('Welcome!'))
|
||||
|
||||
@section('content')
|
||||
<div class="row">
|
||||
@@ -8,10 +8,14 @@
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-sm-12">
|
||||
<h2 class="description">newest pilots</h2>
|
||||
<center><h1 class="description">{{ __('Welcome Message') }}</h1></center>
|
||||
</div>
|
||||
@foreach($users as $user)
|
||||
<div class="col-sm-9">
|
||||
<img src="{{ public_asset('/assets/img/Airplane.jpg') }}" style=""/>
|
||||
</div>
|
||||
<div class="col-sm-3 ">
|
||||
<h2 class="description">{{ __('Newest Pilots') }}</h2>
|
||||
@foreach($users as $user)
|
||||
<div class="card card-signup blue-bg">
|
||||
{{--<div class="card-bg">--}}
|
||||
{{--<i class="fa fa-user-o" style="opacity: .1;"></i>--}}
|
||||
@@ -21,8 +25,12 @@
|
||||
<a href="{{ route('frontend.profile.show', ['id' => $user->id]) }}" class="text-white">{{ $user->name }}</a>
|
||||
</h3>
|
||||
<div class="photo-container">
|
||||
@if ($user->avatar == null)
|
||||
<img class="rounded-circle"
|
||||
src="{{ $user->gravatar(123) }}">
|
||||
@else
|
||||
<img src="{{ $user->avatar->url }}" style="width: 123px;">
|
||||
@endif
|
||||
</div>
|
||||
</div>
|
||||
<div class="content content-center">
|
||||
@@ -35,10 +43,10 @@
|
||||
</div>
|
||||
</div>
|
||||
<div class="footer text-center">
|
||||
<a href="{{ route('frontend.profile.show', ['id' => $user->id]) }}" class="btn btn-neutral btn-sm">Profile</a>
|
||||
<a href="{{ route('frontend.profile.show', ['id' => $user->id]) }}" class="btn btn-neutral btn-sm">{{ __('Profile') }}</a>
|
||||
</div>
|
||||
</div>
|
||||
@endforeach
|
||||
</div>
|
||||
@endforeach
|
||||
</div>
|
||||
@endsection
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
<li class="nav-item">
|
||||
<a class="nav-link" href="{{ route('frontend.dashboard.index') }}">
|
||||
<i class="fas fa-tachometer-alt"></i>
|
||||
<p>Dashboard</p>
|
||||
<p>{{ __('Dashboard') }}</p>
|
||||
</a>
|
||||
</li>
|
||||
@endif
|
||||
@@ -11,14 +11,14 @@
|
||||
<li class="nav-item">
|
||||
<a class="nav-link" href="{{ route('frontend.livemap.index') }}">
|
||||
<i class="fas fa-globe"></i>
|
||||
<p>Live Map</p>
|
||||
<p>{{ __('Live Map') }}</p>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li class="nav-item">
|
||||
<a class="nav-link" href="{{ route('frontend.pilots.index') }}">
|
||||
<i class="fas fa-users"></i>
|
||||
<p>Pilots</p>
|
||||
<p>{{ __trans_choice('Pilot', 2) }}</p>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
@@ -27,7 +27,7 @@
|
||||
<li class="nav-item">
|
||||
<a class="nav-link" href="{{ url($link['url']) }}">
|
||||
<i class="{{ $link['icon'] }}"></i>
|
||||
<p>{{ $link['title'] }}</p>
|
||||
<p>{{ __($link['title']) }}</p>
|
||||
</a>
|
||||
</li>
|
||||
@endforeach
|
||||
@@ -36,13 +36,13 @@
|
||||
<li class="nav-item">
|
||||
<a class="nav-link" href="{{ url('/login') }}">
|
||||
<i class="fas fa-sign-in-alt"></i>
|
||||
<p>Login</p>
|
||||
<p>{{ __('Login') }}</p>
|
||||
</a>
|
||||
</li>
|
||||
<li class="nav-item">
|
||||
<a class="nav-link" href="{{ url('/register') }}">
|
||||
<i class="far fa-id-card"></i>
|
||||
<p>Register</p>
|
||||
<p>{{ __('Register') }}</p>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
@@ -51,25 +51,25 @@
|
||||
<li class="nav-item">
|
||||
<a class="nav-link" href="{{ route('frontend.flights.index') }}">
|
||||
<i class="fab fa-avianex"></i>
|
||||
<p>Flights</p>
|
||||
<p>{{ __trans_choice('Flight', 2) }}</p>
|
||||
</a>
|
||||
</li>
|
||||
<li class="nav-item">
|
||||
<a class="nav-link" href="{{ route('frontend.pireps.index') }}">
|
||||
<i class="fas fa-cloud-upload-alt"></i>
|
||||
<p>PIREPs</p>
|
||||
<p>{{ __trans_choice('PIREP', 2) }}</p>
|
||||
</a>
|
||||
</li>
|
||||
<li class="nav-item">
|
||||
<a class="nav-link" href="{{ route('frontend.profile.index') }}">
|
||||
<i class="far fa-user"></i>
|
||||
<p>Profile</p>
|
||||
<p>{{ __('Profile') }}</p>
|
||||
</a>
|
||||
</li>
|
||||
<li class="nav-item">
|
||||
<a class="nav-link" href="{{ route('frontend.downloads.index') }}">
|
||||
<i class="fas fa-download"></i>
|
||||
<p>Downloads</p>
|
||||
<p>{{ __trans_choice('Download', 2) }}</p>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
@@ -77,7 +77,7 @@
|
||||
<li class="nav-item">
|
||||
<a class="nav-link" href="{{ url('/admin') }}">
|
||||
<i class="fas fa-circle-notch"></i>
|
||||
<p>Admin</p>
|
||||
<p>{{ __('Administration') }}</p>
|
||||
</a>
|
||||
</li>
|
||||
@endrole
|
||||
@@ -87,7 +87,7 @@
|
||||
<li class="nav-item">
|
||||
<a class="nav-link" href="{{ url($link['url']) }}">
|
||||
<i class="{{ $link['icon'] }}"></i>
|
||||
<p>{{ $link['title'] }}</p>
|
||||
<p>{{ __($link['title']) }}</p>
|
||||
</a>
|
||||
</li>
|
||||
@endforeach
|
||||
@@ -95,7 +95,7 @@
|
||||
<li class="nav-item">
|
||||
<a class="nav-link" href="{{ url('/logout') }}">
|
||||
<i class="fas fa-sign-out-alt"></i>
|
||||
<p>Log Out</p>
|
||||
<p>{{ __('Log Out') }}</p>
|
||||
</a>
|
||||
</li>
|
||||
@endif
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
@extends('app')
|
||||
@section('title', 'File Flight Report')
|
||||
@section('title', __('File Flight Report'))
|
||||
|
||||
@section('content')
|
||||
<div class="row">
|
||||
<div class="col-md-12">
|
||||
<h2>New Flight Report</h2>
|
||||
<h2>{{ __('New Flight Report') }}</h2>
|
||||
@include('flash::message')
|
||||
{{ Form::open(['route' => 'frontend.pireps.store']) }}
|
||||
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
@extends('app')
|
||||
@section('title', 'Edit Flight Report')
|
||||
@section('title', __('Edit Flight Report'))
|
||||
@section('content')
|
||||
<div class="row">
|
||||
<div class="col-md-12">
|
||||
<h2>Edit Flight Report</h2>
|
||||
<h2>{{ __('Edit Flight Report') }}</h2>
|
||||
@include('flash::message')
|
||||
{{ Form::model($pirep, [
|
||||
'route' => ['frontend.pireps.update', $pirep->id],
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
@if($aircraft)
|
||||
<div class="form-container">
|
||||
<h6><i class="fas fa-ellipsis-h"></i>
|
||||
Fares
|
||||
{{ __('Fare', 2) }}
|
||||
</h6>
|
||||
<div class="form-container-body">
|
||||
@foreach($aircraft->subfleet->fares as $fare)
|
||||
|
||||
@@ -12,7 +12,7 @@ flight reports that have been filed. You've been warned!
|
||||
<div class="row">
|
||||
<div class="col-sm-12">
|
||||
@component('components.info')
|
||||
Once a PIREP has been accepted/rejected, certain fields go into read-only mode.
|
||||
{{ __('Once a PIREP has been accepted/rejected, certain fields go into read-only mode.') }}
|
||||
@endcomponent
|
||||
</div>
|
||||
</div>
|
||||
@@ -21,12 +21,12 @@ flight reports that have been filed. You've been warned!
|
||||
<div class="col-8">
|
||||
<div class="form-container">
|
||||
<h6><i class="fas fa-info-circle"></i>
|
||||
Flight Information
|
||||
{{ __('Flight Informations') }}
|
||||
</h6>
|
||||
<div class="form-container-body">
|
||||
<div class="row">
|
||||
<div class="col-sm-4">
|
||||
{{ Form::label('airline_id', 'Airline') }}
|
||||
{{ Form::label('airline_id', __('Airline')) }}
|
||||
@if(!empty($pirep) && $pirep->read_only)
|
||||
<p>{{ $pirep->airline->name }}</p>
|
||||
{{ Form::hidden('airline_id') }}
|
||||
@@ -42,7 +42,7 @@ flight reports that have been filed. You've been warned!
|
||||
@endif
|
||||
</div>
|
||||
<div class="col-sm-4">
|
||||
{{ Form::label('flight_number', 'Flight Number/Code/Leg') }}
|
||||
{{ Form::label('flight_number', __('Flight Number/Code/Leg')) }}
|
||||
@if(!empty($pirep) && $pirep->read_only)
|
||||
<p>{{ $pirep->ident }}
|
||||
{{ Form::hidden('flight_number') }}
|
||||
@@ -52,19 +52,19 @@ flight reports that have been filed. You've been warned!
|
||||
@else
|
||||
<div class="input-group input-group-sm mb3">
|
||||
{{ Form::text('flight_number', null, [
|
||||
'placeholder' => 'Flight Number',
|
||||
'placeholder' => __('Flight Number'),
|
||||
'class' => 'form-control',
|
||||
'readonly' => (!empty($pirep) && $pirep->read_only),
|
||||
]) }}
|
||||
|
||||
{{ Form::text('route_code', null, [
|
||||
'placeholder' => 'Code (optional)',
|
||||
'placeholder' => __('Code (optional)'),
|
||||
'class' => 'form-control',
|
||||
'readonly' => (!empty($pirep) && $pirep->read_only),
|
||||
]) }}
|
||||
|
||||
{{ Form::text('route_leg', null, [
|
||||
'placeholder' => 'Leg (optional)',
|
||||
'placeholder' => __('Leg (optional)'),
|
||||
'class' => 'form-control',
|
||||
'readonly' => (!empty($pirep) && $pirep->read_only),
|
||||
]) }}
|
||||
@@ -75,7 +75,7 @@ flight reports that have been filed. You've been warned!
|
||||
@endif
|
||||
</div>
|
||||
<div class="col-lg-4">
|
||||
{{ Form::label('flight_type', 'Flight Type') }}
|
||||
{{ Form::label('flight_type', __('Flight Type')) }}
|
||||
@if(!empty($pirep) && $pirep->read_only)
|
||||
<p>{{ \App\Models\Enums\FlightType::label($pirep->flight_type) }}</p>
|
||||
{{ Form::hidden('flight_type') }}
|
||||
@@ -96,10 +96,10 @@ flight reports that have been filed. You've been warned!
|
||||
|
||||
<div class="row">
|
||||
<div class="col-3">
|
||||
{{ Form::label('hours', 'Flight Time') }}
|
||||
{{ Form::label('hours', __('Flight Time')) }}
|
||||
@if(!empty($pirep) && $pirep->read_only)
|
||||
<p>
|
||||
{{ $pirep->hours }} hours, {{ $pirep->minutes }} minutes
|
||||
{{ $pirep->hours.' '.__trans_choice('Hour', $pirep->hours) }}, {{ $pirep->minutes.' '.__trans_choice('Minute', $pirep->minutes) }}
|
||||
{{ Form::hidden('hours') }}
|
||||
{{ Form::hidden('minutes') }}
|
||||
</p>
|
||||
@@ -107,14 +107,14 @@ flight reports that have been filed. You've been warned!
|
||||
<div class="input-group input-group-sm" style="max-width: 200px;">
|
||||
{{ Form::number('hours', null, [
|
||||
'class' => 'form-control',
|
||||
'placeholder' => 'hours',
|
||||
'placeholder' => __trans_choice('Hour', 2),
|
||||
'min' => '0',
|
||||
'readonly' => (!empty($pirep) && $pirep->read_only),
|
||||
]) }}
|
||||
|
||||
{{ Form::number('minutes', null, [
|
||||
'class' => 'form-control',
|
||||
'placeholder' => 'minutes',
|
||||
'placeholder' => __trans_choice('Minute', 2),
|
||||
'min' => 0,
|
||||
'readonly' => (!empty($pirep) && $pirep->read_only),
|
||||
]) }}
|
||||
@@ -126,27 +126,27 @@ flight reports that have been filed. You've been warned!
|
||||
|
||||
|
||||
<div class="col-3">
|
||||
{{--{{ Form::label('submitted_date', 'Date Flown') }}
|
||||
{{--{{ Form::label('submitted_date', __('Date Flown')) }}
|
||||
{{ Form::text('submmitted_date', null, [
|
||||
'placeholder' => 'Departure TIme',
|
||||
'placeholder' => __('Departure Date'),
|
||||
'class' => 'form-control',
|
||||
'readonly' => $pirep->read_only]) }}--}}
|
||||
</div>
|
||||
|
||||
|
||||
<div class="col-3">
|
||||
{{--{{ Form::label('departure_time', 'Departure Time') }}
|
||||
{{--{{ Form::label('departure_time', __('Departure Time')) }}
|
||||
{{ Form::text('departure_time', null, [
|
||||
'placeholder' => 'Departure TIme',
|
||||
'placeholder' => __('Departure TIme'),
|
||||
'class' => 'form-control',
|
||||
'readonly' => $pirep->read_only]) }}--}}
|
||||
</div>
|
||||
|
||||
|
||||
<div class="col-3">
|
||||
{{--{{ Form::label('arrival_time', 'Arrival Time') }}
|
||||
{{--{{ Form::label('arrival_time', __('Arrival Time')) }}
|
||||
{{ Form::text('arrival_time', null, [
|
||||
'placeholder' => 'Arrival TIme',
|
||||
'placeholder' => __('Arrival TIme'),
|
||||
'class' => 'form-control',
|
||||
'readonly' => $pirep->read_only]) }}--}}
|
||||
</div>
|
||||
@@ -158,12 +158,12 @@ flight reports that have been filed. You've been warned!
|
||||
|
||||
<div class="form-container">
|
||||
<h6><i class="fas fa-globe"></i>
|
||||
Arrival/Departure Information
|
||||
{{ __('Departure/Arrival Informations') }}
|
||||
</h6>
|
||||
<div class="form-container-body">
|
||||
<div class="row">
|
||||
<div class="col-6">
|
||||
{{ Form::label('dpt_airport_id', 'Departure Airport') }}
|
||||
{{ Form::label('dpt_airport_id', __('Departure Airport')) }}
|
||||
@if(!empty($pirep) && $pirep->read_only)
|
||||
{{ $pirep->dpt_airport->name }}
|
||||
(<a href="{{route('frontend.airports.show', [
|
||||
@@ -183,7 +183,7 @@ flight reports that have been filed. You've been warned!
|
||||
</div>
|
||||
|
||||
<div class="col-6">
|
||||
{{ Form::label('arr_airport_id', 'Arrival Airport') }}
|
||||
{{ Form::label('arr_airport_id', __('Arrival Airport')) }}
|
||||
@if(!empty($pirep) && $pirep->read_only)
|
||||
{{ $pirep->arr_airport->name }}
|
||||
(<a href="{{route('frontend.airports.show', [
|
||||
@@ -207,12 +207,12 @@ flight reports that have been filed. You've been warned!
|
||||
|
||||
<div class="form-container">
|
||||
<h6><i class="fab fa-avianex"></i>
|
||||
Aircraft Information
|
||||
{{ __('Aircraft Informations') }}
|
||||
</h6>
|
||||
<div class="form-container-body">
|
||||
<div class="row">
|
||||
<div class="col">
|
||||
{{ Form::label('aircraft_id', 'Aircraft') }}
|
||||
{{ Form::label('aircraft_id', __('Aircraft')) }}
|
||||
@if(!empty($pirep) && $pirep->read_only)
|
||||
<p>{{ $pirep->aircraft->name }}</p>
|
||||
{{ Form::hidden('aircraft_id') }}
|
||||
@@ -234,13 +234,13 @@ flight reports that have been filed. You've been warned!
|
||||
|
||||
<div class="form-container">
|
||||
<h6><i class="far fa-comments"></i>
|
||||
Route
|
||||
{{ __('Route') }}
|
||||
</h6>
|
||||
<div class="form-container-body">
|
||||
<div class="row">
|
||||
<div class="col">
|
||||
<div class="input-group input-group-sm form-group">
|
||||
{{ Form::textarea('route', null, ['class' => 'form-control', 'placeholder' => 'Route']) }}
|
||||
{{ Form::textarea('route', null, ['class' => 'form-control', 'placeholder' => __('Route')]) }}
|
||||
<p class="text-danger">{{ $errors->first('route') }}</p>
|
||||
</div>
|
||||
</div>
|
||||
@@ -250,13 +250,13 @@ flight reports that have been filed. You've been warned!
|
||||
|
||||
<div class="form-container">
|
||||
<h6><i class="far fa-comments"></i>
|
||||
Remarks
|
||||
{{ __('Remarks') }}
|
||||
</h6>
|
||||
<div class="form-container-body">
|
||||
<div class="row">
|
||||
<div class="col">
|
||||
<div class="input-group input-group-sm form-group">
|
||||
{{ Form::textarea('notes', null, ['class' => 'form-control', 'placeholder' => 'Notes']) }}
|
||||
{{ Form::textarea('notes', null, ['class' => 'form-control', 'placeholder' => __('Notes')]) }}
|
||||
<p class="text-danger">{{ $errors->first('notes') }}</p>
|
||||
</div>
|
||||
</div>
|
||||
@@ -269,7 +269,7 @@ flight reports that have been filed. You've been warned!
|
||||
|
||||
<div class="form-container">
|
||||
<h6><i class="fab fa-wpforms"></i>
|
||||
Fields
|
||||
{{ __trans_choice('Field', 2) }}
|
||||
</h6>
|
||||
<div class="form-container-body">
|
||||
|
||||
@@ -310,25 +310,25 @@ flight reports that have been filed. You've been warned!
|
||||
<div class="form-group">
|
||||
|
||||
@if(isset($pirep) && !$pirep->read_only)
|
||||
{{ Form::button('Delete PIREP', [
|
||||
{{ Form::button(__('Delete PIREP'), [
|
||||
'name' => 'submit',
|
||||
'value' => 'cancel',
|
||||
'value' => 'Delete',
|
||||
'class' => 'btn btn-warning',
|
||||
'type' => 'submit'])
|
||||
}}
|
||||
@endif
|
||||
|
||||
@if(!isset($pirep) || (filled($pirep) && !$pirep->read_only))
|
||||
{{ Form::button('Save PIREP', [
|
||||
{{ Form::button(__('Save PIREP'), [
|
||||
'name' => 'submit',
|
||||
'value' => 'save',
|
||||
'value' => 'Save',
|
||||
'class' => 'btn btn-info',
|
||||
'type' => 'submit'])
|
||||
}}
|
||||
|
||||
{{ Form::button('Submit PIREP', [
|
||||
{{ Form::button(__('Submit PIREP'), [
|
||||
'name' => 'submit',
|
||||
'value' => 'submit',
|
||||
'value' => 'Submit',
|
||||
'class' => 'btn btn-success',
|
||||
'type' => 'submit'])
|
||||
}}
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
@extends('app')
|
||||
@section('title', 'pireps')
|
||||
@section('title', __trans_choice('PIREP', 2))
|
||||
|
||||
@section('content')
|
||||
<div class="row">
|
||||
@@ -7,9 +7,9 @@
|
||||
<div style="float:right;">
|
||||
<a class="btn btn-info pull-right btn-lg"
|
||||
style="margin-top: -10px;margin-bottom: 5px"
|
||||
href="{{ route('frontend.pireps.create') }}">File New PIREP</a>
|
||||
href="{{ route('frontend.pireps.create') }}">{{ __('File New PIREP') }}</a>
|
||||
</div>
|
||||
<h2>Pilot Reports</h2>
|
||||
<h2>{{ __trans_choice('Pilot Report', 2) }}</h2>
|
||||
@include('flash::message')
|
||||
@include('pireps.table')
|
||||
</div>
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
<p class="float-right">
|
||||
<a href="{{ route('frontend.pireps.edit', [
|
||||
'id' => $pirep->id,
|
||||
]) }}" class="btn btn-sm btn-info">edit</a>
|
||||
]) }}" class="btn btn-sm btn-info">{{ __('Edit') }}</a>
|
||||
</p>
|
||||
<h5>
|
||||
<a href="{{ route('frontend.pireps.show', [$pirep->id]) }}">
|
||||
@@ -41,22 +41,22 @@
|
||||
<div class="col-sm-6">
|
||||
<table class="table-condensed" width="100%">
|
||||
<tr>
|
||||
<td nowrap><span class="title">Flight Time </span></td>
|
||||
<td nowrap><span class="title">{{ __('Flight Time') }} </span></td>
|
||||
<td>{{ Utils::minutesToTimeString($pirep->flight_time) }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td nowrap><span class="title">Aircraft </span></td>
|
||||
<td nowrap><span class="title">{{ __('Aircraft') }} </span></td>
|
||||
<td>{{ $pirep->aircraft->name }}
|
||||
({{ $pirep->aircraft->registration }})</td>
|
||||
</tr>
|
||||
@if($pirep->level)
|
||||
<tr>
|
||||
<td nowrap><span class="title">Flight Level </span></td>
|
||||
<td nowrap><span class="title">{{ __('Flight Level') }} </span></td>
|
||||
<td>{{ $pirep->level }}</td>
|
||||
</tr>
|
||||
@endif
|
||||
<tr>
|
||||
<td nowrap><span class="title">Filed On: </span></td>
|
||||
<td nowrap><span class="title">{{ __('Filed On') }}: </span></td>
|
||||
<td>{{ show_datetime($pirep->created_at) }}</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
@extends('app')
|
||||
@section('title', 'PIREP '.$pirep->ident)
|
||||
@section('title', __trans_choice('PIREP', 1).' '.$pirep->ident)
|
||||
|
||||
@section('content')
|
||||
<div class="row">
|
||||
@@ -12,7 +12,7 @@
|
||||
@if($pirep->state === PirepState::IN_PROGRESS)
|
||||
|
||||
@else
|
||||
Arrived {{$pirep->created_at->diffForHumans()}}
|
||||
__('Arrived') {{$pirep->created_at->diffForHumans()}}
|
||||
@endif
|
||||
</p>
|
||||
</p>
|
||||
@@ -89,20 +89,20 @@
|
||||
action="{{ route('frontend.pireps.edit', ['id' => $pirep->id]) }}"
|
||||
style="display: inline">
|
||||
@csrf
|
||||
<button class="btn btn-info">Edit</button>
|
||||
<button class="btn btn-info">{{ __('Edit') }}</button>
|
||||
</form>
|
||||
|
||||
<form method="post"
|
||||
action="{{ route('frontend.pireps.submit', ['id' => $pirep->id]) }}"
|
||||
style="display: inline">
|
||||
@csrf
|
||||
<button class="btn btn-success">Submit</button>
|
||||
<button class="btn btn-success">{{ __('Submit') }}</button>
|
||||
</form>
|
||||
</div>
|
||||
@endif
|
||||
<table class="table table-striped">
|
||||
<tr>
|
||||
<td width="30%">State</td>
|
||||
<td width="30%">{{ __('Status') }}</td>
|
||||
<td>
|
||||
<div class="badge badge-info">
|
||||
{{ PirepStatus::label($pirep->status) }}
|
||||
@@ -111,31 +111,31 @@
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td>Source</td>
|
||||
<td>{{ __('Source') }}</td>
|
||||
<td>{{ PirepSource::label($pirep->source) }}</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td>Flight Type</td>
|
||||
<td>{{ __('Flight Type') }}</td>
|
||||
<td>{{ \App\Models\Enums\FlightType::label($pirep->flight_type) }}</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td>Filed Route</td>
|
||||
<td>{{ __('Filed Route') }}</td>
|
||||
<td>
|
||||
{{ $pirep->route }}
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td>Notes</td>
|
||||
<td>{{ __('Notes') }}</td>
|
||||
<td>
|
||||
{{ $pirep->notes }}
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td>Filed On</td>
|
||||
<td>{{ __('Filed On') }}</td>
|
||||
<td>
|
||||
{{ show_datetime($pirep->created_at) }}
|
||||
</td>
|
||||
@@ -148,11 +148,11 @@
|
||||
@endif
|
||||
|
||||
@if(count($pirep->fields) > 0)
|
||||
<h5>fields</h5>
|
||||
<h5>{{ __trans_choice('Field', 2) }}</h5>
|
||||
<table class="table table-hover table-condensed">
|
||||
<thead>
|
||||
<th>Name</th>
|
||||
<th>Value</th>
|
||||
<th>{{ __('Name') }}</th>
|
||||
<th>{{ __('Value') }}</th>
|
||||
</thead>
|
||||
<tbody>
|
||||
@foreach($pirep->fields as $field)
|
||||
@@ -175,11 +175,11 @@
|
||||
@if(count($pirep->fares) > 0)
|
||||
<div class="row">
|
||||
<div class="col-12">
|
||||
<h5>fares</h5>
|
||||
<h5>{{ __trans_choice('Fare', 2) }}</h5>
|
||||
<table class="table table-hover table-condensed">
|
||||
<thead>
|
||||
<th>Class</th>
|
||||
<th>Count</th>
|
||||
<th>{{ __('Class') }}</th>
|
||||
<th>{{ __('Count') }}</th>
|
||||
</thead>
|
||||
<tbody>
|
||||
@foreach($pirep->fares as $fare)
|
||||
@@ -200,7 +200,7 @@
|
||||
<div class="separator"></div>
|
||||
<div class="row">
|
||||
<div class="col-12">
|
||||
<h5>flight log</h5>
|
||||
<h5>{{ __('Flight Log') }}</h5>
|
||||
</div>
|
||||
<div class="col-12">
|
||||
<table class="table table-hover table-condensed" id="users-table">
|
||||
|
||||
@@ -3,13 +3,13 @@
|
||||
<table class="table table-condensed table-hover">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>Flight</th>
|
||||
<th>Departure</th>
|
||||
<th>Arrival</th>
|
||||
<th>Aircraft</th>
|
||||
<th class="text-center">Flight Time</th>
|
||||
<th class="text-center">Status</th>
|
||||
<th>Submitted</th>
|
||||
<th>{{ __trans_choice('Flight', 1) }}</th>
|
||||
<th>{{ __('Departure') }}</th>
|
||||
<th>{{ __('Arrival') }}</th>
|
||||
<th>{{ __('Aircraft') }}</th>
|
||||
<th class="text-center">{{ __('Flight Time') }}</th>
|
||||
<th class="text-center">{{ __('Status') }}</th>
|
||||
<th>{{ __('Submitted') }}</th>
|
||||
<th></th>
|
||||
</tr>
|
||||
</thead>
|
||||
@@ -58,7 +58,7 @@
|
||||
@if(!$pirep->read_only)
|
||||
<a href="{{ route('frontend.pireps.edit', [
|
||||
'id' => $pirep->id,
|
||||
]) }}">edit</a>
|
||||
]) }}">{{ __('Edit') }}</a>
|
||||
@endif
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
@extends('app')
|
||||
@section('title', 'edit profile')
|
||||
@section('title', __('Edit Profile'))
|
||||
|
||||
@section('content')
|
||||
<div class="row">
|
||||
<div class="col-md-12">
|
||||
<h2 class="description">edit your profile</h2>
|
||||
<h2 class="description">{{ __('Edit Your Profile') }}</h2>
|
||||
@include('flash::message')
|
||||
{{ Form::model($user, ['route' => ['frontend.profile.update', $user->id], 'files' => true, 'method' => 'patch']) }}
|
||||
@include("profile.fields")
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<div class="col-md-12">
|
||||
<table class="table">
|
||||
<tr>
|
||||
<td>Name</td>
|
||||
<td>{{ __('Name') }}</td>
|
||||
<td>
|
||||
<div class="input-group form-group-no-border{{ $errors->has('name') ? ' has-danger' : '' }}">
|
||||
{{ Form::text('name', null, ['class' => 'form-control']) }}
|
||||
@@ -14,7 +14,7 @@
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td>Email</td>
|
||||
<td>{{ __('Email') }}</td>
|
||||
<td>
|
||||
<div class="input-group form-group-no-border{{ $errors->has('email') ? ' has-danger' : '' }}">
|
||||
{{ Form::text('email', null, ['class' => 'form-control']) }}
|
||||
@@ -26,7 +26,7 @@
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td>Airline</td>
|
||||
<td>{{ __('Airline') }}</td>
|
||||
<td>
|
||||
<div class="input-group form-group-no-border{{ $errors->has('airline') ? ' has-danger' : '' }}">
|
||||
{{ Form::select('airline_id', $airlines, null , ['class' => 'form-control select2']) }}
|
||||
@@ -38,7 +38,7 @@
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td>Home Airport</td>
|
||||
<td>{{ __('Home Airport') }}</td>
|
||||
<td>
|
||||
<div class="input-group form-group-no-border{{ $errors->has('home_airport_id') ? ' has-danger' : '' }}">
|
||||
{{ Form::select('home_airport_id', $airports, null , ['class' => 'form-control select2']) }}
|
||||
@@ -50,7 +50,7 @@
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td>Country</td>
|
||||
<td>{{ __('Country') }}</td>
|
||||
<td>
|
||||
<div class="input-group form-group-no-border{{ $errors->has('country') ? ' has-danger' : '' }}">
|
||||
{{ Form::select('country', $countries, null, ['class' => 'form-control select2' ]) }}
|
||||
@@ -62,7 +62,7 @@
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td>Timezone</td>
|
||||
<td>{{ __('Timezone') }}</td>
|
||||
<td>
|
||||
<div class="input-group form-group-no-border{{ $errors->has('timezone') ? ' has-danger' : '' }}">
|
||||
{{ Form::select('timezone', $timezones, null, ['class' => 'form-control select2' ]) }}
|
||||
@@ -74,7 +74,7 @@
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td>Change Password</td>
|
||||
<td>{{ __('Change Password') }}</td>
|
||||
<td>
|
||||
<div class="input-group form-group-no-border{{ $errors->has('password') ? ' has-danger' : '' }}">
|
||||
{{ Form::password('password', ['class' => 'form-control']) }}
|
||||
@@ -83,7 +83,7 @@
|
||||
<p class="text-danger">{{ $errors->first('password') }}</p>
|
||||
@endif
|
||||
|
||||
<p>Confirm Password:</p>
|
||||
<p>{{ __('Confirm Password') }}:</p>
|
||||
<div class="input-group form-group-no-border{{ $errors->has('password_confirmation') ? ' has-danger' : '' }}">
|
||||
{{ Form::password('password_confirmation', ['class' => 'form-control']) }}
|
||||
</div>
|
||||
@@ -92,7 +92,7 @@
|
||||
@endif
|
||||
</td>
|
||||
</tr>
|
||||
<td>Avatar</td>
|
||||
<td>{{ __('Avatar') }}</td>
|
||||
<td>
|
||||
<div class="input-group form-group-no-border{{ $errors->has('avatar') ? ' has-danger' : '' }}">
|
||||
{{ Form::file('avatar', null) }}
|
||||
@@ -106,7 +106,7 @@
|
||||
</table>
|
||||
|
||||
<div style="width: 100%; text-align: right; padding-top: 20px;">
|
||||
{{ Form::submit('Update Profile', ['class' => 'btn btn-primary']) }}
|
||||
{{ Form::submit(__('Update Profile'), ['class' => 'btn btn-primary']) }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
@extends('app')
|
||||
@section('title', 'profile')
|
||||
@section('title', __('Profile'))
|
||||
|
||||
@section('content')
|
||||
<div class="row profile-page content-center text-color-dark-beige">
|
||||
@@ -23,25 +23,25 @@
|
||||
<div class="content">
|
||||
<div class="social-description">
|
||||
<h2>{{ $user->flights}}</h2>
|
||||
<p>Flights</p>
|
||||
<p>{{ __trans_choice('Flight', $user->flights) }}</p>
|
||||
</div>
|
||||
|
||||
<div class="social-description">
|
||||
<h2>{{ \App\Facades\Utils::minutesToTimeString($user->flight_time, false) }}</h2>
|
||||
<p>Flight Hours</p>
|
||||
<p>{{ __('Flight Hours') }}</p>
|
||||
</div>
|
||||
|
||||
@if($user->home_airport)
|
||||
<div class="social-description">
|
||||
<h2>{{ $user->home_airport->icao }}</h2>
|
||||
<p>Home Airport</p>
|
||||
<p>{{ __('Home Airport') }}</p>
|
||||
</div>
|
||||
@endif
|
||||
|
||||
@if($user->current_airport)
|
||||
<div class="social-description">
|
||||
<h2>{{ $user->current_airport->icao }}</h2>
|
||||
<p>Current Airport</p>
|
||||
<p>{{ __('Current Airport') }}</p>
|
||||
</div>
|
||||
@endif
|
||||
|
||||
@@ -58,24 +58,24 @@
|
||||
<div class="col-sm-12">
|
||||
<div class="text-right">
|
||||
<a href="{{ route('frontend.profile.regen_apikey') }}" class="btn btn-warning"
|
||||
onclick="return confirm('Are you sure? This will reset your API key.')">new api key</a>
|
||||
onclick="return confirm({{ __('Are you sure? This will reset your API key.') }})">{{ __('New API Key') }}</a>
|
||||
|
||||
<a href="{{ route('frontend.profile.edit', ['id' => $user->id]) }}"
|
||||
class="btn btn-primary">edit</a>
|
||||
class="btn btn-primary">{{ __('Edit') }}</a>
|
||||
</div>
|
||||
|
||||
<h3 class="description">your profile</h3>
|
||||
<h3 class="description">{{ __('Your Profile') }}</h3>
|
||||
<table class="table table-full-width">
|
||||
<tr>
|
||||
<td>Email</td>
|
||||
<td>{{ __('Email') }}</td>
|
||||
<td>{{ $user->email }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>API Key <span class="description">don't share this!</span></td>
|
||||
<td>{{ __('API Key') }} <span class="description">({{ __('don\'t share this!') }})</span></td>
|
||||
<td>{{ $user->api_key }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Timezone</td>
|
||||
<td>{{ __('Timezone') }}</td>
|
||||
<td>{{ $user->timezone }}</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
@extends('app')
|
||||
@section('title', 'Pilots')
|
||||
@section('title', __trans_choice('Pilot', 2))
|
||||
|
||||
@section('content')
|
||||
<div class="row">
|
||||
<div class="col-md-12">
|
||||
<h2>Pilots</h2>
|
||||
<h2>{{ __trans_choice('Pilot', 2) }}</h2>
|
||||
@include('users.table')
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -1,20 +1,24 @@
|
||||
<table class="table table-hover" id="users-table">
|
||||
<thead>
|
||||
<th></th>
|
||||
<th>Name</th>
|
||||
<th>{{ __('Name') }}</th>
|
||||
<th style="text-align: center"></th>
|
||||
<th style="text-align: center">Airline</th>
|
||||
<th style="text-align: center">Location</th>
|
||||
<th style="text-align: center">Flights</th>
|
||||
<th style="text-align: center">Hours</th>
|
||||
<th style="text-align: center">{{ __('Airline') }}</th>
|
||||
<th style="text-align: center">{{ __('Location') }}</th>
|
||||
<th style="text-align: center">{{ __trans_choice('Flight', 2) }}</th>
|
||||
<th style="text-align: center">{{ __trans_choice('Hour', 2) }}</th>
|
||||
</thead>
|
||||
<tbody>
|
||||
@foreach($users as $user)
|
||||
<tr>
|
||||
<td style="width: 80px;">
|
||||
<div class="photo-container">
|
||||
<img class="rounded-circle"
|
||||
src="{{ $user->gravatar(256) }}&s=256"/>
|
||||
@if ($user->avatar == null)
|
||||
<img class="rounded-circle"
|
||||
src="{{ $user->gravatar(256) }}&s=256"/>
|
||||
@else
|
||||
<img src="{{ $user->avatar->url }}">
|
||||
@endif
|
||||
</div>
|
||||
</td>
|
||||
<td>
|
||||
|
||||
@@ -1,11 +1,11 @@
|
||||
<div class="nav nav-tabs" role="tablist" style="background: #067ec1; color: #FFF;">
|
||||
News
|
||||
{{ __('News') }}
|
||||
</div>
|
||||
<div class="card border-blue-bottom">
|
||||
<div class="card-block" style="min-height: 0px">
|
||||
@if($news->count() === 0)
|
||||
<div class="text-center text-muted" style="padding: 30px;">
|
||||
no news items
|
||||
{{ __('No News Found') }}
|
||||
</div>
|
||||
@endif
|
||||
|
||||
|
||||
@@ -37,22 +37,22 @@
|
||||
</a>
|
||||
</h3>
|
||||
<p id="map_flight_info">
|
||||
{ pirep.dpt_airport.name } ({ pirep.dpt_airport.icao }) to
|
||||
{ pirep.dpt_airport.name } ({ pirep.dpt_airport.icao }) {{ __('to') }}
|
||||
{ pirep.arr_airport.name } ({ pirep.arr_airport.icao })
|
||||
</p>
|
||||
</div>
|
||||
<div style="float: right; margin-left: 30px; margin-right: 30px;">
|
||||
<p id="map_flight_stats_right">
|
||||
Ground Speed: <span style="font-weight: bold">{ pirep.position.gs }</span><br/>
|
||||
Altitude: <span style="font-weight: bold">{ pirep.position.altitude }</span><br/>
|
||||
Heading: <span style="font-weight: bold">{ pirep.position.heading }</span><br/>
|
||||
{{ __('Ground Speed') }}: <span style="font-weight: bold">{ pirep.position.gs }</span><br/>
|
||||
{{ __('Altitude') }}: <span style="font-weight: bold">{ pirep.position.altitude }</span><br/>
|
||||
{{ __('Heading') }}: <span style="font-weight: bold">{ pirep.position.heading }</span><br/>
|
||||
</p>
|
||||
</div>
|
||||
<div style="float: right; margin-left: 30px;">
|
||||
<p id="map_flight_stats_middle">
|
||||
Status: <span style="font-weight: bold">{ pirep.status_text }</span><br />
|
||||
Flight Time: <span style="font-weight: bold">{ pirep.flight_time | time_hm }</span><br />
|
||||
Distance: <span style="font-weight: bold">{ pirep.position.distance.{{setting('units.distance')}} }</span>
|
||||
{{ __('Status') }}: <span style="font-weight: bold">{ pirep.status_text }</span><br />
|
||||
{{ __('Flight Time') }}: <span style="font-weight: bold">{ pirep.flight_time | time_hm }</span><br />
|
||||
{{ __('Distance') }}: <span style="font-weight: bold">{ pirep.position.distance.{{setting('units.distance')}} }</span>
|
||||
/ <span style="font-weight: bold">
|
||||
{ pirep.planned_distance.{{setting('units.distance')}} }</span>
|
||||
</p>
|
||||
@@ -74,18 +74,18 @@ and being mindful of the rivets bindings
|
||||
--}}
|
||||
<div id="live_flights" class="row">
|
||||
<div class="col-md-12">
|
||||
<div rv-hide="has_data" class="jumbotron text-center">There are no flights</div>
|
||||
<div rv-hide="has_data" class="jumbotron text-center">{{ __('There are no flights.') }}</div>
|
||||
<table rv-show="has_data" id="live_flights_table" class="table table-striped">
|
||||
<thead>
|
||||
<tr class="text-small header">
|
||||
<td class="text-small">Flight</td>
|
||||
<td class="text-small">Departure</td>
|
||||
<td class="text-small">Arrival</td>
|
||||
<td class="text-small">Aircraft</td>
|
||||
<td class="text-small">Altitude</td>
|
||||
<td class="text-small">GS</td>
|
||||
<td class="text-small">Distance</td>
|
||||
<td class="text-small">Status</td>
|
||||
<td class="text-small">{{ __trans_choice('Flight', 1) }}</td>
|
||||
<td class="text-small">{{ __('Departure') }}</td>
|
||||
<td class="text-small">{{ __('Arrival') }}</td>
|
||||
<td class="text-small">{{ __('Aircraft') }}</td>
|
||||
<td class="text-small">{{ __('Altitude') }}</td>
|
||||
<td class="text-small">{{ __('GS') }}</td>
|
||||
<td class="text-small">{{ __('Distance') }}</td>
|
||||
<td class="text-small">{{ __('Status') }}</td>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
|
||||
@@ -5,38 +5,38 @@ https://api.checkwx.com/#metar-decoded
|
||||
|
||||
--}}
|
||||
@if(!$metar)
|
||||
<p>METAR/TAF data could not be retrieved</p>
|
||||
<p>{{ __('METAR/TAF data could not be retrieved') }}</p>
|
||||
@else
|
||||
<table class="table table-striped">
|
||||
<tr>
|
||||
<td>Conditions</td>
|
||||
<td>{{ __('Conditions') }}</td>
|
||||
<td>
|
||||
{{ $metar['category'] }}
|
||||
{{ $metar['temperature'][$unit_temp] }}
|
||||
°{{strtoupper($unit_temp)}}
|
||||
@if($metar['visibility'])
|
||||
, visibility {{ $metar['visibility'][$unit_dist] }} {{$unit_dist}}
|
||||
, {{ __('visibility') }} {{ $metar['visibility'][$unit_dist] }} {{$unit_dist}}
|
||||
@endif
|
||||
@if($metar['humidity'])
|
||||
, {{ $metar['humidity'] }}% humidity
|
||||
, {{ $metar['humidity'] }}% {{ __('humidity') }}
|
||||
@endif
|
||||
@if($metar['dew_point'])
|
||||
, dew point
|
||||
, {{ __('dew point') }}
|
||||
{{ $metar['dew_point'][$unit_temp] }}
|
||||
°{{strtoupper($unit_temp)}}
|
||||
@endif
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Barometer</td>
|
||||
<td>{{ __('Barometer') }}</td>
|
||||
<td>
|
||||
{{ $metar['barometer'] }} Hg
|
||||
/ {{ $metar['barometer_in'] * 1000 }} MB
|
||||
{{ number_format($metar['barometer'], 2) }} hPa
|
||||
/ {{ number_format($metar['barometer_in'], 2) }} inHg
|
||||
</td>
|
||||
</tr>
|
||||
@if($metar['clouds'])
|
||||
<tr>
|
||||
<td>Clouds</td>
|
||||
<td>{{ __('Clouds') }}</td>
|
||||
<td>
|
||||
@if($unit_alt === 'ft')
|
||||
{{$metar['clouds_report_ft']}}
|
||||
@@ -47,17 +47,17 @@ https://api.checkwx.com/#metar-decoded
|
||||
</tr>
|
||||
@endif
|
||||
<tr>
|
||||
<td>Wind</td>
|
||||
<td>{{ __('Wind') }}</td>
|
||||
<td>
|
||||
{{$metar['wind_speed']}} kts from {{$metar['wind_direction_label']}}
|
||||
{{$metar['wind_speed']}} kts {{ __('from') }} {{$metar['wind_direction_label']}}
|
||||
({{$metar['wind_direction']}}°)
|
||||
@if($metar['wind_gust_speed'])
|
||||
gusts to {{ $metar['wind_gust_speed'] }}
|
||||
{{ __('gusts to').' '.$metar['wind_gust_speed'] }}
|
||||
@endif
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>METAR</td>
|
||||
<td>{{ __('METAR') }}</td>
|
||||
<td>
|
||||
<div style="line-height:1.5em;min-height: 3em;">
|
||||
{{ $metar['raw'] }}
|
||||
@@ -66,14 +66,14 @@ https://api.checkwx.com/#metar-decoded
|
||||
</tr>
|
||||
@if($metar['remarks'])
|
||||
<tr>
|
||||
<td>Remarks</td>
|
||||
<td>{{ __('Remarks') }}</td>
|
||||
<td>
|
||||
{{ $metar['remarks'] }}
|
||||
</td>
|
||||
</tr>
|
||||
@endif
|
||||
<tr>
|
||||
<td>Updated</td>
|
||||
<td>{{ __('Updated') }}</td>
|
||||
<td>{{$metar['observed_time']}} ({{$metar['observed_age']}})</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
Reference in New Issue
Block a user