frontend translation + other stuff

This commit is contained in:
lordwilbur
2018-05-18 00:03:30 +02:00
committed by Nabeel Shahzad
parent ba8a819c7d
commit a346b0df2e
54 changed files with 966 additions and 771 deletions

View File

@@ -13,7 +13,7 @@ $factory->define(App\Models\Flight::class, function (Faker $faker) {
}, },
'flight_number' => $faker->unique()->numberBetween(10, 1000000), 'flight_number' => $faker->unique()->numberBetween(10, 1000000),
'route_code' => $faker->randomElement(['', $faker->text(5)]), 'route_code' => $faker->randomElement(['', $faker->text(5)]),
'route_leg' => $faker->randomElement(['', $faker->text(5)]), 'route_leg' => $faker->randomElement(['', $faker->numberBetween(0, 1000)]),
'dpt_airport_id' => function () { 'dpt_airport_id' => function () {
return factory(App\Models\Airport::class)->create()->id; return factory(App\Models\Airport::class)->create()->id;
}, },

View File

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

View File

@@ -481,9 +481,9 @@ class Metar implements \ArrayAccess
$time_diff = floor(($now - $local) / 60); $time_diff = floor(($now - $local) / 60);
if ($time_diff < 91) { if ($time_diff < 91) {
$this->set_result_value('observed_age', $time_diff.' '.__trans_choice('min ago', $time_diff)); $this->set_result_value('observed_age', $time_diff.' '.trans_choice('frontend.widgets.weather.minago', $time_diff));
} else { } else {
$this->set_result_value('observed_age', floor($time_diff / 60).':'.sprintf("%02d", $time_diff % 60).' '.__trans_choice('hr ago', floor($time_diff / 60))); $this->set_result_value('observed_age', floor($time_diff / 60).':'.sprintf("%02d", $time_diff % 60).' '.trans_choice('frontend.widgets.weather.hrago', floor($time_diff / 60)));
} }
} }

View File

@@ -221,19 +221,3 @@ if (!function_exists('_fmt')) {
return $line; 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);
}
}

View File

@@ -2089,6 +2089,7 @@ fieldset[disabled]
.form-group .form-control, .form-group .form-control,
.input-group .form-control { .input-group .form-control {
margin-top: 2px;
padding: 4px 14px 4px 14px; padding: 4px 14px 4px 14px;
} }

File diff suppressed because one or more lines are too long

View File

@@ -1,151 +0,0 @@
{
"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"
}

View File

@@ -0,0 +1,266 @@
<?php
return [
'global' =>[
'dashboard' => 'Dashboard',
'flight' => 'Flight|Flights',
'livemap' => 'Live Map',
'pilot' => 'Pilot|Pilots',
'pirep' => 'PIREP|PIREPs',
'newestpilots' => 'Newest Pilots',
'profile' => 'Profile',
'email' => 'Email',
'register' => 'Register',
'confirmpassword' => 'Confirm Password',
'homeairport' => 'Home Airport',
'currentairport' => 'Current Airport',
'timezone' => 'Timezone',
'country' => 'Country',
'download' => 'Download|Downloads',
'from' => 'from',
'to' => 'to',
'status' => 'Status',
'departure' => 'Departure',
'arrival' => 'Arrival',
'aircraft' => 'Aircraft',
'airline' => 'Airline',
'distance' => 'Distance',
'metar' => 'METAR',
'hour' => 'Hour|Hours',
'minute' => 'Minute|Minutes',
'note' => 'Note|Notes',
'route' => 'Route',
'flightnumber' => 'Flight Number',
'flighttime' => 'Flight Time',
'departureairport' => 'Departure Airport',
'arrivalairport' => 'Arrival Airport',
'field' => 'Field|Fields',
'name' => 'Name',
'value' => 'Value|Values',
'remark' => 'Remark|Remarks',
'find' => 'Find',
'reset' => 'Reset',
'submit' => 'Submit',
'edit' => 'Edit',
'close' => 'Close',
],
'airports' => [
'inboundflights' => 'Inbound Flights',
'outboundflights' => 'Outbound Flights',
'ident' => 'Identification',
'noflightfound' => 'No Flight Found.',
],
'auth' => [
'login' => 'Log In',
'password' => 'Password',
'createaccount' => 'Create Account',
'forgotpassword' => 'Forgot Password',
'fullname' => 'Full Name',
'emailaddress' => 'Email Address',
'fillcaptcha' => 'Fill out the captcha',
'tocaccept' => 'By registering, you agree to the Terms and Conditions.',
'register' => 'Register',
'registrationpending' => 'Registration Pending',
'pendingmessage' => 'Your registration is pending approval. Please check your email!',
'registrationsubmitted' => 'Registration Submitted',
'registrationconfirmation' => 'Registration Confirmation',
'confirmationmessage' => 'Your application has been submitted. It requires staff member approval, once a\nstaff member has reviewed your application, you will receive a confirmation email.',
'registrationdenied' => 'Registration Denied',
'deniedmessage' => 'Your registration was denied. Please contact an administrator.',
'accountsuspended' => 'Account Suspended',
'suspendedmessage' => 'Your account has been suspended. Please contact an administrator.',
],
'dashboard' => [
'totalhours' => 'Total Hours',
'yourbalance' => 'Your Balance',
'yourlastreport' => 'Your Last Report',
'noreportsyet' => 'No reports yet.',
'fileonenow' => 'File one now.',
'weatherat' => 'Weather at =>ICAO',
'recentreports' => 'Recent Reports',
],
'downloads' => [
'nodownloads' => 'There are no downloads!',
],
'flights' => [
'mybid' => 'My Bid|My Bids',
'search' => 'Search',
'addremovebid' => 'Add/Remove Bid',
'bidremoved' => 'Your bid was removed.',
'bidadded' => 'Your bid was added.',
'dep' => 'Dep',
'arr' => 'Arr',
'level' => 'Level',
'alternateairport' => 'Alternate Airport',
],
'home' => [
'welcome' => [
'title' => 'Welcome!',
'message' => 'Welcome in :Appname',
],
],
'nav' => [
'login' => 'Login',
'administration' => 'Administration',
'logout' => 'Log Out',
],
'pireps' => [
'filenewpirep' => 'File New PIREP',
'pilotreport' => 'Pilot Report|Pilot Reports',
'arrived' => 'Arrived',
'source' => 'Source',
'flighttype' => 'Flight Type',
'filedroute' => 'Filed Route',
'filedon' => 'Filed On',
'fare' => 'Fare|Fares',
'class' => 'Class',
'count' => 'Count',
'flightlevel' => 'Flight Level',
'fieldsreadonly' => 'Once a PIREP has been accepted/rejected, certain fields go into read-only mode.',
'flightinformations' => 'Flight Informations',
'flightident' => 'Flight Number/Code/Leg',
'codeoptional' => 'Code (optional)',
'legoptional' => 'Leg (optional)',
'deparrinformations' => 'Departure/Arrival Informations',
'aircraftinformations' => 'Aircraft Informations',
'dateflown' => 'Date Flown',
'departuretime' => 'Departure Time',
'arrivaltime' => 'Arrival Time',
'deletepirep' => 'Delete PIREP',
'savepirep' => 'Save PIREP',
'submitpirep' => 'Submit PIREP',
'editflightreport' => 'Edit Flight Report',
'fileflightreport' => 'File New Report',
'newflightreport' => 'New Flight Report',
'submitted' => 'Submitted',
],
'profile' =>[
'avatarresize' => 'This avatar will be resized to :width x :height pixels',
'flighthours' => 'Flight Hours',
'newapikey' => 'New API Key',
'yourprofile' => 'Your Profile',
'apikey' => 'API Key',
'dontshare' => 'don\'t share this!',
'changepassword' => 'Change Password',
'newpassword' => 'New Password',
'avatar' => 'Avatar',
'updateprofile' => 'Update Profile',
'editprofile' => 'Edit Profile',
'edityourprofile' => 'Edit Your Profile',
],
'toc' => [
'toctitle' => 'Terms and Conditions',
'toctext' => [
':appname offers this Web site, including all information, software,',
'products and services available from this Web site or offered as part of or in conjunction',
'with this Web site (the “Web site”), to you, the user, conditioned upon your acceptance of',
'all of the terms, conditions, policies and notices stated here. :appname',
'reserves the right to make changes to these Terms and Conditions immediately by posting the',
'changed Terms and Conditions in this location.',
'',
'Your continued use of the Web site constitutes your agreement to all such terms, conditions',
'and notices, and any changes to the Terms and Conditions made by :appname.',
'',
'The term genericwebsite.com or us or we refers to the owner of the website. The term',
'you refers to the user or viewer of our website.',
'',
'The use of this website is subject to the following terms of use:',
'',
'Use the website at your own risk. This website is provided to you “as is,” without warranty',
'of any kind either express or implied. Neither :appname nor its employees,',
'agents, third-party information providers, merchants, licensors or the like warrant that the',
'Web site or its operation will be accurate, reliable, uninterrupted or error-free. No agent',
'or representative has the authority to create any warranty regarding the Web site on behalf',
'of :appname. :appname reserves the right to change or',
'discontinue at any time any aspect or feature of the Web site.',
'',
'Exclusion of Liability',
'',
'The content of the pages of this website is for your general information and use only. It is',
'subject to change without notice.',
'',
'Neither we nor any third parties provide any warranty or guarantee as to the accuracy,',
'timeliness, performance, completeness or suitability of the information and materials found or',
'offered on this website for any particular purpose. You acknowledge that such information and',
'materials may contain inaccuracies or errors and we expressly exclude liability for any such',
'inaccuracies or errors to the fullest extent permitted by law.',
'',
'Indemnification',
'',
'Your use of any information or materials on this website is entirely at your own risk, for which',
'we shall not be liable. It shall be your own responsibility to ensure that any products, services',
'or information available through this website meet your specific requirements.',
'',
'This website contains material which is owned by or licensed to us. This material includes, but is',
'not limited to, the design, layout, look, appearance and graphics. Reproduction is prohibited other',
'than in accordance with the copyright notice, which forms part of these terms and conditions.',
'',
'All trade marks reproduced in this website which are not the property of, or licensed to, the',
'operator are acknowledged on the website.',
'',
'Unauthorized use of this website may give rise to a claim for damages and/or be a criminal offense.',
'',
'From time to time this website may also include links to other websites. These links are provided',
'for your convenience to provide further information. They do not signify that we endorse the',
'website(s). We have no responsibility for the content of the linked website(s).',
'',
'Copyright',
'Except for material in the public domain under United States copyright law, all material contained',
'on the Web site (including all software, HTML code, Java applets, Active X controls and other code)',
'is protected by United States and foreign copyright laws. Except as otherwise expressly provided',
'in these terms and conditions, you may not copy, distribute, transmit, display, perform, reproduce',
'publish, license, modify, rewrite, create derivative works from, transfer, or sell any material',
'contained on the Web site without the prior consent of the copyright owner.',
'',
'None of the material contained on :appname may be reverse-engineered, disassembled,',
'decompiled, transcribed, stored in a retrieval system, translated into any language or computer language,',
'retransmitted in any form or by any means (electronic, mechanical, photo reproduction, recordation or',
'otherwise), resold or redistributed without the prior written consent of :appname.',
'Violation of this provision may result in severe civil and criminal penalties.',
],
],
'users' => [
'location' => 'Location',
],
'widgets' => [
'latestnews' => [
'news' => 'News',
'nonewsfound' => 'No News Found',
],
'livemap' => [
'groundspeed' => 'Ground Speed',
'altitude' => 'Altitude',
'heading' => 'Heading',
'noflights' => 'There are no flights.',
'gs' => 'GS',
],
'weather' => [
'metarnotretrieved' => 'METAR/TAF data could not be retrieved',
'conditions' => 'Conditions',
'visibility' => 'visibility',
'humidity' => 'humidity',
'dewpoint' => 'dew point',
'barometer' => 'Barometer',
'clouds' => 'Clouds',
'wind' => 'Wind',
'guststo' => 'gusts to',
'updated' => 'Updated',
'hrago' => 'hr ago|hrs ago',
'minago' => 'min ago|mins ago',
],
],
];

View File

@@ -1,150 +0,0 @@
{
"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"
}

View File

@@ -13,7 +13,7 @@ return [
| |
*/ */
'failed' => 'These credentials do not match our records.', 'failed' => 'Queste credenziali non sono presenti nei nostri archivi.',
'throttle' => 'Too many login attempts. Please try again in :seconds seconds.', 'throttle' => 'Troppi tentativi di login. Tenta di nuovo tra :seconds secondi per favore.',
]; ];

View File

@@ -0,0 +1,267 @@
<?php
return [
'global' =>[
'dashboard' => 'Dashboard',
'flight' => 'Volo|Voli',
'livemap' => 'Mappa Live',
'pilot' => 'Pilota|Piloti',
'pirep' => 'PIREP|PIREPs',
'newestpilots' => 'Ultimi Piloti',
'profile' => 'Profilo',
'email' => 'Email',
'register' => 'Registrazione',
'confirmpassword' => 'Conferma Password',
'homeairport' => 'Aeroporto di Casa',
'currentairport' => 'Aeroporto Corrente',
'timezone' => 'Fuso Orario',
'country' => 'Paese',
'download' => 'Download|Downloads',
'from' => 'da',
'to' => 'a',
'status' => 'Stato',
'departure' => 'Partenza',
'arrival' => 'Arrivo',
'aircraft' => 'Aereomobile',
'airline' => 'Compagnia Aerea',
'distance' => 'Distanza',
'metar' => 'METAR',
'hour' => 'Ora|Ore',
'minute' => 'Minuto|Minuti',
'note' => 'Nota|Note',
'route' => 'Rotta',
'flightnumber' => 'Numero di Volo',
'flighttime' => 'Tempo di Volo',
'departureairport' => 'Aeroporto di Partenza',
'arrivalairport' => 'Aeroporto d\'Arrivo',
'field' => 'Campo|Campi',
'name' => 'Nome',
'value' => 'Valore|Valori',
'remark' => 'Promemoria|Promemoria',
'find' => 'Trova',
'reset' => 'Resetta',
'submit' => 'Invia',
'edit' => 'Modifica',
'close' => 'Chiudi',
],
'airports' => [
'inboundflights' => 'Voli in Entrata',
'outboundflights' => 'Voli in Uscita',
'ident' => 'Identificativo',
'noflightfound' => 'Nessun Volo Trovato.',
],
'auth' => [
'login' => 'Accedi',
'password' => 'Password',
'createaccount' => 'Crea Account',
'forgotpassword' => 'Password Dimenticata',
'fullname' => 'Nome Completo',
'emailaddress' => 'Indirizzo Email',
'fillcaptcha' => 'Compila la captcha',
'tocaccept' => 'Registrandoti confermi di accettare i Termini e le Condizioni di Utilizzo.',
'register' => 'Registrati',
'registrationpending' => 'Registrazione in Sospeso',
'pendingmessage' => 'La tua registrazione è in attesa di approvazione. Controlla la tua email per favore.',
'registrationsubmitted' => 'Registrazione Inviata',
'registrationconfirmation' => 'Conferma di Registrazione',
'confirmationmessage' => 'La tua richiesta è stata inviata e richiede l\'approvazione di un membro dello staff. Quando\nverrà esaminata, riceverai una email di conferma.',
'registrationdenied' => 'Registrazione Negata',
'deniedmessage' => 'La tua registrazione è stata rifiutata. Contatta un amministratore per favore.',
'accountsuspended' => 'Account Sospeso',
'suspendedmessage' => 'Il tuo account è stato sospeso. Contatta un amministratore per favore.',
],
'dashboard' => [
'totalhours' => 'Ore Totali',
'yourbalance' => 'Bilancio',
'yourlastreport' => 'Ultimo Rapporto',
'noreportsyet' => 'Ancora nessun rapporto.',
'fileonenow' => 'Inseriscine uno ora.',
'weatherat' => 'Tempo a :ICAO',
'recentreports' => 'Rapporti Recenti',
],
'downloads' => [
'nodownloads' => 'Non ci sono downloads!',
],
'flights' => [
'mybid' => 'Mia prenotazione|Mie Prenotazioni',
'addremovebid' => 'Aggiungi/Rimuovi Prenotazione',
'bidremoved' => 'La tua prenotazione è stata rimossa.',
'bidadded' => 'La tua prenotazione è stata aggiunta.',
'dep' => 'Par',
'arr' => 'Arr',
'level' => 'Livello',
'alternateairport' => 'Aeroporto Alternativo',
],
'home' => [
'welcome' => [
'title' => 'Benvenuti!',
'message' => 'Benvenuti in :Appname',
],
],
'nav' => [
'login' => 'Accesso',
'administration' => 'Amministrazione',
'logout' => 'Uscita',
],
'pireps' => [
'filenewpirep' => 'Inserici Nuovo PIREP',
'pilotreport' => 'Rapporto Pilota|Rapporti Pilota',
'arrived' => 'Arrivato',
'source' => 'Fonte',
'flighttype' => 'Tipo di Volo',
'filedroute' => 'Rotta Inserita',
'filedon' => 'Inserito il',
'fare' => 'Tariffa|Tariffe',
'class' => 'Classe',
'count' => 'Numero',
'flightlevel' => 'Livello di Volo',
'fieldsreadonly' => 'Quando un PIREP viene accettato/rifiutato, alcuni cami entrano in modalità di sola lettura.',
'flightinformations' => 'Informazioni di Volo',
'flightident' => 'Numero di Volo/Codice/Leg',
'codeoptional' => 'Codice (facoltativo)',
'legoptional' => 'Leg (facoltativa)',
'deparrinformations' => 'Informazioni di Partenza/Arrivo',
'aircraftinformations' => 'Informazioni sull\'Aeromobile',
'dateflown' => 'Volato in Data',
'departuretime' => 'Ora di Partenza',
'arrivaltime' => 'Ora di Arrivo',
'deletepirep' => 'Cancella PIREP',
'savepirep' => 'Salva PIREP',
'submitpirep' => 'Invia PIREP',
'editflightreport' => 'Modifica Rapporto di Volo',
'fileflightreport' => 'Inserisci Rapporto di Volo',
'newflightreport' => 'Nuovo Rapporto di Volo',
'submitted' => 'Inviato',
],
'profile' =>[
'avatarresize' => 'Questo avatar sarà ridimensionato a :width x :height pixels',
'flighthours' => 'Ore di Volo',
'newapikey' => 'Nuova Chiave API',
'yourprofile' => 'Il Tuo Profilo',
'apikey' => 'Chiave API',
'dontshare' => 'non condividerla!',
'changepassword' => 'Cambia Password',
'newpassword' => 'Nuova Password',
'avatar' => 'Avatar',
'updateprofile' => 'Aggiorna Profilo',
'editprofile' => 'Modifica Profilo',
'edityourprofile' => 'Modifica Il Tuo Profilo',
],
'toc' => [
'toctitle' => 'Termini e Condizioni di Utilizzo',
'toctext' => [
'La consultazione e l\'accesso al sito www.piemontevirtualairlines.tk (il "Sito") sono soggetti alle normative',
'vigenti e implicano l\'accettazione dei Termini e delle Condizioni di seguito riportati ("Termini e Condizioni"),',
'che prevalgono anche rispetto a ogni altro diverso accordo intervenuto o che si ritenga intervenuto tra il',
'visitatore del Sito (il "Visitatore") e :appname (la "Società").',
'',
'La Società si riserva di modificare in qualsiasi momento e senza preavviso i Termini e Condizioni qui riportati',
'I Visitatori sono invitati a controllare periodicamente questa sezione del Sito per prendere visione delle',
'eventuali modifiche.',
'',
'LIMITAZIONI DI USO',
'Il Visitatore è autorizzato ad utilizzare e può scaricare testi, immagini, audio e video esclusivamente per uso',
'personale, ad esclusione, quindi, di usi commerciali o professionali.',
'',
'Salvo ove diversamente indicato, i contenuti del Sito sono protetti dalle norme sul marchio e/o sul diritto',
'd\'autore e/o sulla proprietà intellettuale e non possono essere utilizzati se non in conformità e nei limiti',
'di quanto qui previsto. In particolare, non è concesso al Visitatore il diritto di riprodurre, distribuire,',
'modificare, riutilizzare, inoltrare il contenuto del Sito, o di una sua parte, senza l\'autorizzazione scritta',
'ed esplicita della Società.',
'',
'La Società non sarà responsabile della violazione di diritti di terzi commessa dai Visitatori o da terzi e',
'conseguente ad un uso improprio dei contenuti del Sito.',
'',
'CONTENUTI DEL SITO',
'Malgrado i contenuti del Sito siano stati elaborati e formulati con la massima cura, la Società non garantisce',
'né gli stessi siano privi di imprecisioni, inesattezze o omissioni, né di essere in grado di aggiornarli in tempo',
'reale o di mantenerli sempre disponibili, riservandosi di apportare in qualsiasi momento cambiamenti, correzioni,',
'migliorie ai contenuti del Sito, o di interromperne o sospenderne le funzionalità.',
'',
'La Società non assume pertanto responsabilità conseguenti ad incompletezza, inesattezza o mancato aggiornamento',
'delle informazioni contenute nel Sito, impossibilità di accedere al Sito o di visualizzarne o scaricarne o utilizzarne',
'correttamente i contenuti, né per eventuali danni o virus che possano colpire l\'attrezzatura informatica o altri beni',
'del Visitatore in conseguenza dell\'accesso, utilizzo o della navigazione nel Sito o del download di suo contenuti.',
'',
'LINK A SITI TERZI',
'Il Sito potrebbe contenere collegamenti ipertestuali a siti web di terzi, che possono offrire informazioni utili ai',
'visitatori e sul cui contenuto la Società non ha alcun controllo. Poiché questi Termini e Condizioni non si applicano',
'a tali siti e alle modalità di utilizzo e accesso agli stessi, il collegamento a siti terzi avviene sotto l\'esclusiva',
'responsabilità del Visitatore e la Società non potrà in alcun modo essere ritenuta responsabile per l\'esattezza,',
'la sicurezza o l\'affidabilità di contenuti, prodotti o servizi disponibili su tali siti.',
'',
'DATI PERSONALI E DATI DI NAVIGAZIONE',
'L\'accesso e l\'uso del Sito non comportano l\'acquisizione di dati personali del Visitatore salvo ove espressamente',
'segnalato (Area Riservata). In tali casi, il Visitatore sarà tenuto a prendere visione dell\'informativa e se del caso-',
'ad esprimere il proprio consenso secondo quanto previsto dal D. Lgs. 30 giugno 2003 n. 196.',
'',
'Tuttavia, le procedure e il sistema informatico preposto al funzionamento del Sito potranno acquisire, nel corso del loro',
'normale funzionamento, alcuni dati la cui trasmissione è implicita nell\'uso e protocolli di comunicazione Internet. Queste',
'informazioni non sono raccolte per essere associate a interessati identificati ma per loro stessa natura potrebbero,',
'attraverso elaborazioni ed associazioni con altri dati detenuti dalla Società o da terzi, permettere l\'identificazione del',
'Visitatore. In questa categoria di dati rientrano gli indirizzi IP o i nomi a dominio dei computer utilizzati dagli utenti',
'che si connettono al Sito, gli indirizzi in URI (Uniform Resource Identifier) delle risorse richieste, l\'ora di richiesta,',
'il metodo di richiesta, la dimensione dei file ottenuto in risposta, il codice numerico contrassegnante la risposta del',
'server e altri parametri relativi al sistema operativo e all\'ambiente informatico del Visitatore. Questi dati potranno',
'essere utilizzati dalla Società al solo fine di ricavarne informazioni assolutamente anonime e aggregate sull\'uso del Sito',
'allo scopo, ad es., di identificare le pagine o i contesti preferiti dagli utenti al fine di fornire servizi sempre più',
'adeguati e verificarne il corretto funzionamento. Solo in caso di violazioni o ipotetici reati informatici che coinvolgano',
'il Sito tali dati potranno essere utilizzati per l\'accertamento di responsabilità.',
'',
'Segnaliamo infine che l\'accesso al Sito potrà comportare la registrazione, sul disco fisso del dispositivo del Visitatore',
'(computer, tablet, palmare o telefono) di "cookies". I "cookies" sono piccoli file di testo che i siti visitati dall\'utente',
'inviano al suo terminale (solitamente al browser), dove vengono memorizzati per essere poi ritrasmessi agli stessi siti',
'alla successiva visita del medesimo utente. Le informazioni salvate nei cookies resteranno anonime e non consentiranno',
'l\'identificazione del Visitatore.',
'',
'Tuttavia, il Visitatore potrà in ogni momento richiedere la disattivazione dei cookies modificando le impostazioni del suo',
'browser. La maggior parte dei browsers accetta i cookies automaticamente, ma è possibile cancellare i cookies già',
'registrati ed evitare la registrazione di nuovi cookies selezionando l\'apposita opzione (eventualmente consultando le',
'istruzioni del browser)',
],
],
'users' => [
'location' => 'Posizione',
],
'widgets' => [
'latestnews' => [
'news' => 'Novità',
'nonewsfound' => 'Nessuna Novità Trovata',
],
'livemap' => [
'groundspeed' => 'Velocità al Suolo',
'altitude' => 'Altitudine',
'heading' => 'Direzione',
'noflights' => 'Non ci sono voli.',
'gs' => 'VS',
],
'weather' => [
'metarnotretrieved' => 'I dati METAR/TAF non possono essere recuperati',
'conditions' => 'Condizioni',
'visibility' => 'visibilità',
'humidity' => 'umidità',
'dewpoint' => 'punto di rugiada',
'barometer' => 'Barometro',
'clouds' => 'Nuvole',
'wind' => 'Vento',
'guststo' => 'raffiche da',
'updated' => 'Aggiornato',
'hrago' => 'ora fa|ore fa',
'minago' => 'ninuto fa|minuti fa',
],
],
];

View File

@@ -13,7 +13,7 @@ return [
| |
*/ */
'previous' => '&laquo; Previous', 'previous' => '&laquo; Precedente',
'next' => 'Next &raquo;', 'next' => 'Successiva &raquo;',
]; ];

View File

@@ -13,10 +13,10 @@ return [
| |
*/ */
'password' => 'Passwords must be at least six characters and match the confirmation.', 'password' => 'Le password devono essere lunghe almeno sei caratteri ed essere identiche al campo di conferma password.',
'reset' => 'Your password has been reset!', 'reset' => 'La tua password è stata resettata!',
'sent' => 'We have e-mailed your password reset link!', 'sent' => 'Ti abbiamo inviato via email il link per resettare la password!',
'token' => 'This password reset token is invalid.', 'token' => 'Questo token per resettare la password non è valido.',
'user' => "We can't find a user with that e-mail address.", 'user' => "Non ci è stato possibile trovare un utente con questo indirizzo email.",
]; ];

View File

@@ -3,104 +3,104 @@
return [ return [
'global' => [ 'global' => [
'active' => 'Active', 'active' => 'Attivo',
'inactive' => 'Inactive' 'inactive' => 'Inattivo'
], ],
'aircraft' => [ 'aircraft' => [
'status' => [ 'status' => [
'active' => 'Active', 'active' => 'Attivo',
'stored' => 'Stored', 'stored' => 'Immagazzinato',
'retired' => 'Retired', 'retired' => 'Ritirato',
'scrapped' => 'Scrapped', 'scrapped' => 'Rottamato',
'written' => 'Written Off', 'written' => 'Stornato',
], ],
], ],
'days' => [ 'days' => [
'mon' => 'Monday', 'mon' => 'Lunedì',
'tues' => 'Tuesday', 'tues' => 'Martedì',
'wed' => 'Wednesday', 'wed' => 'Mercoledì',
'thurs' => 'Thursday', 'thurs' => 'Giovedì',
'fri' => 'Friday', 'fri' => 'Venerdì',
'sat' => 'Saturday', 'sat' => 'Sabato',
'sun' => 'Sunday', 'sun' => 'Domenica',
], ],
'expenses' => [ 'expenses' => [
'type' => [ 'type' => [
'flight' => 'Flight', 'flight' => 'Volo',
'daily' => 'Daily', 'daily' => 'Giornaliera',
'monthly' => 'Monthly', 'monthly' => 'Mensile',
], ],
], ],
'flights' => [ 'flights' => [
'type' => [ 'type' => [
'pass_scheduled' => 'Passenger - Scheduled', 'pass_scheduled' => 'Passeggeri - Programmato',
'cargo_scheduled' => 'Cargo - Scheduled', 'cargo_scheduled' => 'Cargo - Programmato',
'charter_pass_only' => 'Charter - Passenger Only', 'charter_pass_only' => 'Charter - Solo Passeggeri',
'addtl_cargo_mail' => 'Additional Cargo/Mail', 'addtl_cargo_mail' => 'Cargo/Posta Addizionale',
'special_vip' => 'Special VIP Flight (FAA/Government)', 'special_vip' => 'Volo VIP Speciale (FAA/Governo)',
'pass_addtl' => 'Passenger - Additional', 'pass_addtl' => 'Passeggeri - Addizionale',
'charter_cargo' => 'Charter - Cargo/Mail', 'charter_cargo' => 'Charter - Cargo/Posta',
'ambulance' => 'Ambulance Flight', 'ambulance' => 'Volo Ambulanza',
'training_flight' => 'Training Flight', 'training_flight' => 'Volo di Addestramento',
'mail_service' => 'Mail Service', 'mail_service' => 'Servizio Postale',
'charter_special' => 'Charter w/ Special Handling', 'charter_special' => 'Charter con Manutenzione Speciale',
'positioning' => 'Positioning (Ferry/Delivery/Demo)', 'positioning' => 'Posizionamento (Traghetto/Consegna/Dimostrazione)',
'technical_test' => 'Technical Test', 'technical_test' => 'Prova Tecnica',
'military' => 'Military', 'military' => 'Militare',
'technical_stop' => 'Technical Stop', 'technical_stop' => 'Fermo Tecnico',
], ],
], ],
'pireps' => [ 'pireps' => [
'source' => [ 'source' => [
'manual' => 'Manual', 'manual' => 'Manuale',
'acars' => 'ACARS', 'acars' => 'ACARS',
], ],
'state' => [ 'state' => [
'accepted' => 'Accepted', 'accepted' => 'Accettato',
'pending' => 'Pending Approval', 'pending' => 'In Attesa di Approvazione',
'rejected' => 'Rejected', 'rejected' => 'Rifiutato',
'in_progress' => 'In Progress', 'in_progress' => 'In Lavorazione',
'cancelled' => 'Cancelled', 'cancelled' => 'Cancellato',
'deleted' => 'Deleted', 'deleted' => 'Eliminato',
'draft' => 'Draft', 'draft' => 'Bozza',
], ],
'status' => [ 'status' => [
'initialized' => 'Initiated', 'initialized' => 'Iniziato',
'scheduled' => 'Scheduled', 'scheduled' => 'Programmato',
'boarding' => 'Boarding', 'boarding' => 'Imbarco',
'ready_start' => 'Ready for start', 'ready_start' => 'Pronto alla partenza',
'push_tow' => 'Pushback/towing', 'push_tow' => 'Pushback/Rimorchio',
'departed' => 'Departed', 'departed' => 'Partito',
'ready_deice' => 'Ready for de-icing', 'ready_deice' => 'Pronto al de-icing',
'deicing' => 'De-icing in progress', 'deicing' => 'De-icing in corso',
'ground_ret' => 'Ground return', 'ground_ret' => 'Ritorno a Terra',
'taxi' => 'Taxi', 'taxi' => 'Taxi',
'takeoff' => 'Takeoff', 'takeoff' => 'Decollo',
'initial_clb' => 'Initial Climb', 'initial_clb' => 'Salita Iniziale',
'enroute' => 'Enroute', 'enroute' => 'Enroute',
'diverted' => 'Diverted', 'diverted' => 'Diverted',
'approach' => 'Approach', 'approach' => 'Approccio',
'final_appr' => 'Final approach', 'final_appr' => 'Approccio Finale',
'landing' => 'Landing', 'landing' => 'Atterraggio',
'landed' => 'Landed', 'landed' => 'Atterrato',
'arrived' => 'Arrived', 'arrived' => 'Arrivato',
'cancelled' => 'Cancelled', 'cancelled' => 'Cancellato',
'emerg_decent' => 'Emergency decent', 'emerg_decent' => 'Discesa di Emergenza',
] ]
], ],
'users' => [ 'users' => [
'state' => [ 'state' => [
'pending' => 'Pending', 'pending' => 'In Attesa',
'active' => 'Active', 'active' => 'Attivo',
'rejected' => 'Rejected', 'rejected' => 'Rifiutato',
'on_leave' => 'On Leave', 'on_leave' => 'In Ferie',
'suspended' => 'Suspended', 'suspended' => 'Sospeso',
], ],
], ],
]; ];

View File

@@ -6,74 +6,74 @@ return [
* Validation Language Lines * Validation Language Lines
*/ */
'accepted' => 'The :attribute must be accepted.', 'accepted' => ':attribute deve essere accettato.',
'active_url' => 'The :attribute is not a valid URL.', 'active_url' => ':attribute non è un URL valido.',
'after' => 'The :attribute must be a date after :date.', 'after' => ':attribute deve essere una data successiva al :date.',
'alpha' => 'The :attribute may only contain letters.', 'alpha' => ':attribute può contenere solo lettere.',
'alpha_dash' => 'The :attribute may only contain letters, numbers, and dashes.', 'alpha_dash' => ':attribute può contenere solo lettere, numeri e trattini.',
'alpha_num' => 'The :attribute may only contain letters and numbers.', 'alpha_num' => ':attribute può contenere solo lettere e numeri.',
'array' => 'The :attribute must be an array.', 'array' => ':attribute deve essere un array.',
'before' => 'The :attribute must be a date before :date.', 'before' => ':attribute deve essere una data precedente al :date.',
'between' => [ 'between' => [
'numeric' => 'The :attribute must be between :min and :max.', 'numeric' => ':attribute deve essere compreso tra :min e :max.',
'file' => 'The :attribute must be between :min and :max kilobytes.', 'file' => ':attribute deve essere compreso tra :min e :max kilobytes.',
'string' => 'The :attribute must be between :min and :max characters.', 'string' => ':attribute deve essere compreso tra :min e :max caratteri.',
'array' => 'The :attribute must have between :min and :max items.', 'array' => ':attribute deve essere compreso tra :min e :max elementi.',
], ],
'boolean' => 'The :attribute field must be true or false.', 'boolean' => ':attribute deve essere true o false.',
'confirmed' => 'The :attribute confirmation does not match.', 'confirmed' => ':attribute la conferma non corrisponde.',
'date' => 'The :attribute is not a valid date.', 'date' => ':attribute non è una data valida.',
'date_format' => 'The :attribute does not match the format :format.', 'date_format' => ':attribute non corrisponde al formato :format.',
'different' => 'The :attribute and :other must be different.', 'different' => ':attribute e :other devono essere differenti.',
'digits' => 'The :attribute must be :digits digits.', 'digits' => ':attribute deve essere di almeno :digits cifre.',
'digits_between' => 'The :attribute must be between :min and :max digits.', 'digits_between' => ':attribute deve essere compreso tra :min e :max cifre.',
'dimensions' => 'The :attribute has invalid image dimensions.', 'dimensions' => ':attribute ha dimensioni di immagine non valide.',
'distinct' => 'The :attribute field has a duplicate value.', 'distinct' => ':attribute il campo è duplicato.',
'email' => 'The :attribute must be a valid email address.', 'email' => ':attribute deve essere un indirizzo email valido.',
'exists' => 'The selected :attribute is invalid.', 'exists' => 'Il/la :attribute selezionato non è valido.',
'file' => 'The :attribute must be a file.', 'file' => ':attribute deve essere un file.',
'filled' => 'The ":attribute" is required.', 'filled' => '":attribute" è obbligatorio.',
'image' => 'The :attribute must be an image.', 'image' => ':attribute deve essere un\'immagine.',
'in' => 'The selected :attribute is invalid.', 'in' => 'Il/la :attribute selezionato non è valido.',
'in_array' => 'The :attribute field does not exist in :other.', 'in_array' => 'Il campo :attribute non esiste in :other.',
'integer' => 'The :attribute must be an integer.', 'integer' => ':attribute deve essere un intero.',
'ip' => 'The :attribute must be a valid IP address.', 'ip' => ':attribute deve essere un indirizzo IP valido.',
'json' => 'The :attribute must be a valid JSON string.', 'json' => ':attribute deve essere una stringa JSON valida.',
'max' => [ 'max' => [
'numeric' => 'The :attribute may not be greater than :max.', 'numeric' => ':attribute non può essere maggiore di :max.',
'file' => 'The :attribute may not be greater than :max kilobytes.', 'file' => ':attribute non può essere maggiore di :max kilobytes.',
'string' => 'The :attribute may not be greater than :max characters.', 'string' => ':attribute non può essere maggiore di :max caratteri.',
'array' => 'The :attribute may not have more than :max items.', 'array' => ':attribute non può essere maggiore di :max elementi.',
], ],
'mimes' => 'The :attribute must be a file of type: :values.', 'mimes' => ':attribute deve essere un file di tipo: :values.',
'min' => [ 'min' => [
'numeric' => 'The :attribute must be at least :min.', 'numeric' => ':attribute deve essere di almeno :min.',
'file' => 'The :attribute must be at least :min kilobytes.', 'file' => ':attribute deve essere di almeno :min kilobytes.',
'string' => 'The :attribute must be at least :min characters.', 'string' => ':attribute deve essere di almeno :min caratteri.',
'array' => 'The :attribute must have at least :min items.', 'array' => ':attribute deve essere di almeno :min elementi.',
], ],
'not_in' => 'The selected :attribute is invalid.', 'not_in' => 'Il/la :attribute non è valido/a.',
'numeric' => 'The :attribute must be a number.', 'numeric' => ':attribute deve essere un numero.',
'present' => 'The :attribute field must be present.', 'present' => 'Il campo :attribute deve essere presente.',
'regex' => 'The :attribute format is invalid.', 'regex' => 'Il formato del/della :attribute non è valido.',
'required' => 'The ":attribute" field is required.', 'required' => 'Il campo ":attribute" è obbligatorio.',
'required_if' => 'The :attribute field is required when :other is :value.', 'required_if' => 'Il campo :attribute è obbligatorio quando :other è :value.',
'required_unless' => 'The :attribute field is required unless :other is in :values.', 'required_unless' => 'Il campo :attribute è obbligatorio a meno che :other sia compreso tra :values.',
'required_with' => 'The :attribute field is required when :values is present.', 'required_with' => 'Il campo :attribute è obbligatorio quando :values è presente.',
'required_with_all' => 'The :attribute field is required when :values is present.', 'required_with_all' => 'Il campo :attribute è obbligatorio quando :values sono presenti.',
'required_without' => 'The :attribute field is required when :values is not present.', 'required_without' => 'Il campo :attribute è obbligatorio quando :values non è presente.',
'required_without_all' => 'The :attribute field is required when none of :values are present.', 'required_without_all' => 'Il campo :attribute è obbligatorio quando :values non sono presenti.',
'same' => 'The :attribute and :other must match.', 'same' => ':attribute e :other devono corrispondere.',
'size' => [ 'size' => [
'numeric' => 'The :attribute must be :size.', 'numeric' => ':attribute deve essere di :size.',
'file' => 'The :attribute must be :size kilobytes.', 'file' => ':attribute deve essere di :size kilobytes.',
'string' => 'The :attribute must be :size characters.', 'string' => ':attribute deve essere di :size caratteri.',
'array' => 'The :attribute must contain :size items.', 'array' => ':attribute deve contenere :size elementi.',
], ],
'string' => 'The :attribute must be a string.', 'string' => ':attribute deve essere una stringa.',
'timezone' => 'The :attribute must be a valid zone.', 'timezone' => ':attribute deve essere una zona valida.',
'unique' => 'The :attribute has already been taken.', 'unique' => ':attribute è già stato utilizzato.',
'url' => 'The :attribute format is invalid.', 'url' => 'Il formato del/della :attribute non è valido.',
/** /**
* Custom Validation Language Lines * Custom Validation Language Lines
@@ -81,33 +81,33 @@ return [
'custom' => [ 'custom' => [
'airline_id' => [ 'airline_id' => [
'required' => 'An airline is required', 'required' => 'Una compagnia aerea è obbligatoria',
'exists' => 'The airline doesn\'t exist', 'exists' => 'La compagnia aerea non esiste',
], ],
'aircraft_id' => [ 'aircraft_id' => [
'required' => 'An aircraft is required', 'required' => 'Un aereo è obbligatorio',
'exists' => 'The aircraft doesn\'t exist', 'exists' => 'L\'aereo non esiste',
], ],
'arr_airport_id' => [ 'arr_airport_id' => [
'required' => 'An arrival airport is required', 'required' => 'Un aeroporto di arrivo è obbligatorio',
], ],
'dpt_airport_id' => [ 'dpt_airport_id' => [
'required' => 'A departure airport is required', 'required' => 'Un aeroporto di partenza è obbligatorio',
], ],
'flight_time' => [ 'flight_time' => [
'required' => 'Flight time, in minutes, is required', 'required' => 'Il tempo di volo in minuti è obbligatorio',
'integer' => 'Flight time, in minutes, is required', 'integer' => 'Il tempo di volo in minuti deve essere un intero',
], ],
'planned_flight_time' => [ 'planned_flight_time' => [
'required' => 'Flight time, in minutes, is required', 'required' => 'Il tempo di volo in minuti è obbligatorio',
'integer' => 'Flight time, in minutes, is required', 'integer' => 'Il tempo di volo in minuti deve essere un intero',
], ],
'source_name' => [ 'source_name' => [
'required' => 'PIREP Source is required', 'required' => 'La fonte del PIREP è obbligatoria',
], ],
'g-recaptcha-response' => [ 'g-recaptcha-response' => [
'required' => 'Please verify that you are not a robot.', 'required' => 'Conferma di non essere un robot per favore.',
'captcha' => 'Captcha error! try again later or contact site admin.', 'captcha' => 'Errore captcha! Riprova più tardi o contatta un amministratiore.',
], ],
], ],

View File

@@ -122,7 +122,7 @@
.form-group, .form-group,
.input-group{ .input-group{
.form-control{ .form-control{
margin-top: 2px; /*margin-top: 2px;*/
padding: $padding-vertical - 1 $padding-horizontal - 1 $padding-vertical - 1 $padding-horizontal - 1; padding: $padding-vertical - 1 $padding-horizontal - 1 $padding-vertical - 1 $padding-horizontal - 1;
& + .input-group-addon{ & + .input-group-addon{

View File

@@ -1,5 +1,5 @@
@extends('app') @extends('app')
@section('title', __('Live Map')) @section('title', trans('frontend.global.livemap'))
@section('content') @section('content')
{{ Widget::liveMap() }} {{ Widget::liveMap() }}

View File

@@ -28,7 +28,7 @@
{{-- There are files uploaded and a user is logged in--}} {{-- There are files uploaded and a user is logged in--}}
@if(count($airport->files) > 0 && Auth::check()) @if(count($airport->files) > 0 && Auth::check())
<div class="col-12"> <div class="col-12">
<h3>{{ __trans_choice('Download', 2) }}</h3> <h3>{{ trans_choice('frontend.global.download', 2) }}</h3>
@include('downloads.table', ['files' => $airport->files]) @include('downloads.table', ['files' => $airport->files])
</div> </div>
@endif @endif
@@ -36,19 +36,19 @@
<div class="row"> <div class="row">
<div class="col-6"> <div class="col-6">
<h5>{{ __('Inbound Flights') }}</h5> <h5>@lang('frontend.airports.inboundflights')</h5>
@if(!$inbound_flights) @if(!$inbound_flights)
<div class="jumbotron text-center"> <div class="jumbotron text-center">
{{ __('No Flight Found') }} @lang('frontend.airports.noflightfound')
</div> </div>
@else @else
<table class="table table-striped table-condensed"> <table class="table table-striped table-condensed">
<thead> <thead>
<tr> <tr>
<th class="text-left">{{ __('Ident') }}</th> <th class="text-left">@lang('frontend.airports.ident')</th>
<th class="text-left">{{ __('From') }}</th> <th class="text-left">@lang('frontend.global.from')</th>
<th>{{ __('Departure') }}</th> <th>@lang('frontend.global.departure')</th>
<th>{{ __('Arrival') }}</th> <th>@lang('frontend.global.arrival')</th>
</tr> </tr>
</thead> </thead>
@foreach($inbound_flights as $flight) @foreach($inbound_flights as $flight)
@@ -71,19 +71,19 @@
</div> </div>
<div class="col-6"> <div class="col-6">
<h5>{{ __('Outbound Flights') }}</h5> <h5>@lang('frontend.airports.outboundflights')</h5>
@if(!$outbound_flights) @if(!$outbound_flights)
<div class="jumbotron text-center"> <div class="jumbotron text-center">
{{ __('No Flight Found') }} @lang('frontend.airports.noflightfound')
</div> </div>
@else @else
<table class="table table-striped table-condensed"> <table class="table table-striped table-condensed">
<thead> <thead>
<tr> <tr>
<th class="text-left">{{ __('Ident') }}</th> <th class="text-left">@lang('frontend.airports.ident')</th>
<th class="text-left">{{ __('To') }}</th> <th class="text-left">@lang('frontend.global.to')</th>
<th>{{ __('Departure') }}</th> <th>@lang('frontend.global.departure')</th>
<th>{{ __('Arrival') }}</th> <th>@lang('frontend.global.arrival')</th>
</tr> </tr>
</thead> </thead>
@foreach($outbound_flights as $flight) @foreach($outbound_flights as $flight)

View File

@@ -40,7 +40,7 @@
</div> </div>
</body> </body>
<script src="{{ public_asset('/assets/frontend/js/core/jquery-3.3.1.min.js') }}" type="text/javascript"></script> <script src="{{ public_asset('/assets/global/js/jquery.js') }}" type="text/javascript"></script>
@yield('scripts') @yield('scripts')

View File

@@ -18,7 +18,7 @@
{{ {{
Form::text('email', old('email'), [ Form::text('email', old('email'), [
'id' => 'email', 'id' => 'email',
'placeholder' => 'Email', 'placeholder' => trans('frontend.global.email'),
'class' => 'form-control', 'class' => 'form-control',
'required' => true, 'required' => true,
]) ])
@@ -38,7 +38,7 @@
Form::password('password', [ Form::password('password', [
'name' => 'password', 'name' => 'password',
'class' => 'form-control', 'class' => 'form-control',
'placeholder' => 'Password', 'placeholder' => trans('frontend.auth.password'),
'required' => true, 'required' => true,
]) ])
}} }}
@@ -51,16 +51,16 @@
</div> </div>
<div class="footer text-center"> <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">@lang('frontend.auth.login')</button>
</div> </div>
<div class="pull-left"> <div class="pull-left">
<h6> <h6>
<a href="{{ url('/register') }}" class="link">{{ __('Create Account') }}</a> <a href="{{ url('/register') }}" class="link">@lang('frontend.auth.createaccount')</a>
</h6> </h6>
</div> </div>
<div class="pull-right"> <div class="pull-right">
<h6> <h6>
<a href="{{ url('/password/reset') }}" class="link">{{ __('Forgot Password') }}?</a> <a href="{{ url('/password/reset') }}" class="link">@lang('frontend.auth.forgotpassword')?</a>
</h6> </h6>
</div> </div>
{{ Form::close() }} {{ Form::close() }}

View File

@@ -1,12 +1,12 @@
@extends('app') @extends('app')
@section('title', __('Registration Pending')) @section('title', trans('frontend.auth.registrationpending'))
@section('content') @section('content')
<div class="row"> <div class="row">
<div class="col-md-12 " style="text-align: center;"> <div class="col-md-12 " style="text-align: center;">
<div class="flex-center position-ref full-height"> <div class="flex-center position-ref full-height">
<div class="title m-b-md"> <div class="title m-b-md">
<h2 class="description">{{ __('Your registration is pending approval. Please check your email!') }}</h2> <h2 class="description">@lang('frontend.auth.pendingmessage')</h2>
</div> </div>
</div> </div>
</div> </div>

View File

@@ -1,5 +1,5 @@
@extends('app') @extends('app')
@section('title', __('Register')) @section('title', trans('frontend.global.register'))
@section('content') @section('content')
<div class="row"> <div class="row">
@@ -10,8 +10,8 @@
<div class="panel periodic-login"> <div class="panel periodic-login">
<div class="panel-body"> <div class="panel-body">
<h2>{{ __('Register') }}</h2> <h2>@lang('frontend.global.register')</h2>
<label for="name" class="control-label">{{ __('Full Name') }}</label> <label for="name" class="control-label">@lang('frontend.auth.fullname')</label>
<div class="input-group form-group-no-border {{ $errors->has('name') ? 'has-danger' : '' }}"> <div class="input-group form-group-no-border {{ $errors->has('name') ? 'has-danger' : '' }}">
{{ Form::text('name', null, ['class' => 'form-control']) }} {{ Form::text('name', null, ['class' => 'form-control']) }}
</div> </div>
@@ -19,7 +19,7 @@
<p class="text-danger">{{ $errors->first('name') }}</p> <p class="text-danger">{{ $errors->first('name') }}</p>
@endif @endif
<label for="email" class="control-label">{{ __('Email Address') }}</label> <label for="email" class="control-label">@lang('frontend.auth.emailaddress')</label>
<div class="input-group form-group-no-border {{ $errors->has('email') ? 'has-danger' : '' }}"> <div class="input-group form-group-no-border {{ $errors->has('email') ? 'has-danger' : '' }}">
{{ Form::text('email', null, ['class' => 'form-control']) }} {{ Form::text('email', null, ['class' => 'form-control']) }}
</div> </div>
@@ -27,7 +27,7 @@
<p class="text-danger">{{ $errors->first('email') }}</p> <p class="text-danger">{{ $errors->first('email') }}</p>
@endif @endif
<label for="airline" class="control-label">{{ __('Airline') }}</label> <label for="airline" class="control-label">@lang('frontend.global.airline')</label>
<div class="input-group form-group-no-border {{ $errors->has('airline') ? 'has-danger' : '' }}"> <div class="input-group form-group-no-border {{ $errors->has('airline') ? 'has-danger' : '' }}">
{{ Form::select('airline_id', $airlines, null , ['class' => 'form-control select2']) }} {{ Form::select('airline_id', $airlines, null , ['class' => 'form-control select2']) }}
</div> </div>
@@ -35,7 +35,7 @@
<p class="text-danger">{{ $errors->first('airline_id') }}</p> <p class="text-danger">{{ $errors->first('airline_id') }}</p>
@endif @endif
<label for="home_airport" class="control-label">{{ __('Home Airport') }}</label> <label for="home_airport" class="control-label">@lang('frontend.global.homeairport')</label>
<div class="input-group form-group-no-border {{ $errors->has('home_airport') ? 'has-danger' : '' }}"> <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']) }} {{ Form::select('home_airport_id', $airports, null , ['class' => 'form-control select2']) }}
</div> </div>
@@ -43,7 +43,7 @@
<p class="text-danger">{{ $errors->first('home_airport_id') }}</p> <p class="text-danger">{{ $errors->first('home_airport_id') }}</p>
@endif @endif
<label for="country" class="control-label">{{ __('Country') }}</label> <label for="country" class="control-label">@lang('frontend.global.country')</label>
<div class="input-group form-group-no-border {{ $errors->has('country') ? 'has-danger' : '' }}"> <div class="input-group form-group-no-border {{ $errors->has('country') ? 'has-danger' : '' }}">
{{ Form::select('country', $countries, null, ['class' => 'form-control select2' ]) }} {{ Form::select('country', $countries, null, ['class' => 'form-control select2' ]) }}
</div> </div>
@@ -51,7 +51,7 @@
<p class="text-danger">{{ $errors->first('country') }}</p> <p class="text-danger">{{ $errors->first('country') }}</p>
@endif @endif
<label for="timezone" class="control-label">{{ __('Timezone') }}</label> <label for="timezone" class="control-label">@lang('frontend.global.timezone')</label>
<div class="input-group form-group-no-border {{ $errors->has('timezone') ? 'has-danger' : '' }}"> <div class="input-group form-group-no-border {{ $errors->has('timezone') ? 'has-danger' : '' }}">
{{ Form::select('timezone', $timezones, null, ['id'=>'timezone', 'class' => 'form-control select2' ]) }} {{ Form::select('timezone', $timezones, null, ['id'=>'timezone', 'class' => 'form-control select2' ]) }}
</div> </div>
@@ -59,7 +59,7 @@
<p class="text-danger">{{ $errors->first('timezone') }}</p> <p class="text-danger">{{ $errors->first('timezone') }}</p>
@endif @endif
<label for="password" class="control-label">{{ __('Password') }}</label> <label for="password" class="control-label">@lang('frontend.auth.password')</label>
<div class="input-group form-group-no-border {{ $errors->has('password') ? 'has-danger' : '' }}"> <div class="input-group form-group-no-border {{ $errors->has('password') ? 'has-danger' : '' }}">
{{ Form::password('password', ['class' => 'form-control']) }} {{ Form::password('password', ['class' => 'form-control']) }}
</div> </div>
@@ -67,7 +67,7 @@
<p class="text-danger">{{ $errors->first('password') }}</p> <p class="text-danger">{{ $errors->first('password') }}</p>
@endif @endif
<label for="password_confirmation" class="control-label">{{ __('Confirm Password') }}</label> <label for="password_confirmation" class="control-label">@lang('frontend.global.confirmpassword')</label>
<div class="input-group form-group-no-border {{ $errors->has('password_confirmation') ? 'has-danger' : '' }}"> <div class="input-group form-group-no-border {{ $errors->has('password_confirmation') ? 'has-danger' : '' }}">
{{ Form::password('password_confirmation', ['class' => 'form-control']) }} {{ Form::password('password_confirmation', ['class' => 'form-control']) }}
</div> </div>
@@ -76,7 +76,7 @@
@endif @endif
@if(config('captcha.enabled')) @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">@lang('frontend.auth.fillcaptcha')</label>
<div class="input-group form-group-no-border {{ $errors->has('g-recaptcha-response') ? 'has-danger' : '' }}"> <div class="input-group form-group-no-border {{ $errors->has('g-recaptcha-response') ? 'has-danger' : '' }}">
{!! NoCaptcha::display(config('captcha.attributes')) !!} {!! NoCaptcha::display(config('captcha.attributes')) !!}
</div> </div>
@@ -88,8 +88,8 @@
@include('auth.toc') @include('auth.toc')
<div style="width: 100%; text-align: right; padding-top: 20px;"> <div style="width: 100%; text-align: right; padding-top: 20px;">
{{ __('By registering, you agree to the Terms and Conditions.') }}<br /><br /> @lang('frontend.auth.tocaccept')<br /><br />
{{ Form::submit(__('Register!'), ['class' => 'btn btn-primary']) }} {{ Form::submit(trans('frontend.auth.register'), ['class' => 'btn btn-primary']) }}
</div> </div>
</div> </div>

View File

@@ -1,11 +1,11 @@
@extends('app') @extends('app')
@section('title', __('Registration Submitted')) @section('title', trans('frontend.auth.registrationsubmitted'))
@section('content') @section('content')
<div class="container registered-page"> <div class="container registered-page">
<h3>{{ __('Registration Confirmation') }}</h3> <h3>@lang('frontend.auth.registrationconfirmation')</h3>
<p> <p>
__('Your application has been submitted. It requires staff member approval, once a\nstaff member has reviewed your application, you will receive a confirmation email.') }} @lang('frontend.auth.confirmationmessage')
</p> </p>
</div> </div>
@endsection @endsection

View File

@@ -1,5 +1,5 @@
@extends('app') @extends('app')
@section('title', __('Registration Denied')) @section('title', trans('frontend.auth.registrationdenied'))
@section('content') @section('content')
<div class="row"> <div class="row">
@@ -7,7 +7,7 @@
<div class="flex-center position-ref full-height"> <div class="flex-center position-ref full-height">
<div class="title m-b-md"> <div class="title m-b-md">
<h2 class="description"> <h2 class="description">
{{ __('Your registration was denied. Please contact an administrator.') }} @lang('frontend.auth.deniedmessage')
</h2> </h2>
</div> </div>
</div> </div>

View File

@@ -1,5 +1,5 @@
@extends('app') @extends('app')
@section('title', __('Account Suspended')) @section('title', trans('frontend.auth.accountsuspended'))
@section('content') @section('content')
<div class="row"> <div class="row">
@@ -7,7 +7,7 @@
<div class="flex-center position-ref full-height"> <div class="flex-center position-ref full-height">
<div class="title m-b-md"> <div class="title m-b-md">
<h2 class="description"> <h2 class="description">
{{ __('Your account has been suspended. Please contact an administrator.') }} @lang('frontend.auth.suspendedmessage')
</h2> </h2>
</div> </div>
</div> </div>

View File

@@ -1,69 +1,6 @@
<h4>{{ __('Terms and Conditions') }}</h4> <h4>@lang('frontend.toc.toctitle')</h4>
<textarea class="form-control" style="height: 150px; border: 1px #ccc solid;"> <textarea class="form-control" style="height: 150px; border: 1px #ccc solid; background-color: transparent" readonly>
{{ config('app.name') }} offers this Web site, including all information, software, @foreach (trans('frontend.toc.toctext') as $line)
products and services available from this Web site or offered as part of or in conjunction {{ str_replace(':appname', config('app.name'), $line) }}
with this Web site (the “Web site”), to you, the user, conditioned upon your acceptance of @endforeach
all of the terms, conditions, policies and notices stated here. {{ config('app.name') }}
reserves the right to make changes to these Terms and Conditions immediately by posting the
changed Terms and Conditions in this location.
Your continued use of the Web site constitutes your agreement to all such terms, conditions
and notices, and any changes to the Terms and Conditions made by {{ config('app.name') }}.
The term genericwebsite.com or us or we refers to the owner of the website. The term
you refers to the user or viewer of our website.
The use of this website is subject to the following terms of use:
Use the website at your own risk. This website is provided to you “as is, without warranty
of any kind either express or implied. Neither {{ config('app.name') }} nor its employees,
agents, third-party information providers, merchants, licensors or the like warrant that the
Web site or its operation will be accurate, reliable, uninterrupted or error-free. No agent
or representative has the authority to create any warranty regarding the Web site on behalf
of {{ config('app.name') }}. {{ config('app.name') }} reserves the right to change or
discontinue at any time any aspect or feature of the Web site.
Exclusion of Liability
The content of the pages of this website is for your general information and use only. It is
subject to change without notice.
Neither we nor any third parties provide any warranty or guarantee as to the accuracy,
timeliness, performance, completeness or suitability of the information and materials found or
offered on this website for any particular purpose. You acknowledge that such information and
materials may contain inaccuracies or errors and we expressly exclude liability for any such
inaccuracies or errors to the fullest extent permitted by law.
Indemnification
Your use of any information or materials on this website is entirely at your own risk, for which
we shall not be liable. It shall be your own responsibility to ensure that any products, services
or information available through this website meet your specific requirements.
This website contains material which is owned by or licensed to us. This material includes, but is
not limited to, the design, layout, look, appearance and graphics. Reproduction is prohibited other
than in accordance with the copyright notice, which forms part of these terms and conditions.
All trade marks reproduced in this website which are not the property of, or licensed to, the
operator are acknowledged on the website.
Unauthorized use of this website may give rise to a claim for damages and/or be a criminal offense.
From time to time this website may also include links to other websites. These links are provided
for your convenience to provide further information. They do not signify that we endorse the
website(s). We have no responsibility for the content of the linked website(s).
Copyright
Except for material in the public domain under United States copyright law, all material contained
on the Web site (including all software, HTML code, Java applets, Active X controls and other code)
is protected by United States and foreign copyright laws. Except as otherwise expressly provided
in these terms and conditions, you may not copy, distribute, transmit, display, perform, reproduce,
publish, license, modify, rewrite, create derivative works from, transfer, or sell any material
contained on the Web site without the prior consent of the copyright owner.
None of the material contained on {{ config('app.name') }} may be reverse-engineered, disassembled,
decompiled, transcribed, stored in a retrieval system, translated into any language or computer language,
retransmitted in any form or by any means (electronic, mechanical, photo reproduction, recordation or
otherwise), resold or redistributed without the prior written consent of {{ config('app.name') }}.
Violation of this provision may result in severe civil and criminal penalties.
</textarea> </textarea>

View File

@@ -1,5 +1,5 @@
@extends('app') @extends('app')
@section('title', __('Dashboard')) @section('title', trans('frontend.global.dashboard'))
@section('content') @section('content')
<div class="row"> <div class="row">
@@ -14,7 +14,7 @@
<i class="fas fa-plane icon"></i> <i class="fas fa-plane icon"></i>
</div> </div>
<h3 class="header">{{ $user->flights }}</h3> <h3 class="header">{{ $user->flights }}</h3>
<h5 class="description">{{ __trans_choice('Flight', $user->flights) }}</h5> <h5 class="description">{{ trans_choice('frontend.global.flight', $user->flights) }}</h5>
</div> </div>
</div> </div>
</div> </div>
@@ -26,7 +26,7 @@
<i class="far fa-clock icon"></i> <i class="far fa-clock icon"></i>
</div> </div>
<h3 class="header">{{ \App\Facades\Utils::minutesToTimeString($user->flight_time, false)}}</h3> <h3 class="header">{{ \App\Facades\Utils::minutesToTimeString($user->flight_time, false)}}</h3>
<h5 class="description">{{ __('Total Hours') }}</h5> <h5 class="description">@lang('frontend.dashboard.totalhours')</h5>
</div> </div>
</div> </div>
</div> </div>
@@ -37,7 +37,7 @@
<i class="fas fa-money-bill-alt icon"></i> <i class="fas fa-money-bill-alt icon"></i>
</div> </div>
<h3 class="header">{{ $user->journal->balance }}</h3> <h3 class="header">{{ $user->journal->balance }}</h3>
<h5 class="description">{{ __('Your Balance') }}</h5> <h5 class="description">@lang('frontend.dashboard.yourbalance')</h5>
</div> </div>
</div> </div>
</div> </div>
@@ -53,7 +53,7 @@
@else @else
<h3 class="header">{{ $user->home_airport_id }}</h3> <h3 class="header">{{ $user->home_airport_id }}</h3>
@endif @endif
<h5 class="description">{{ __('Current Airport') }}</h5> <h5 class="description">@lang('frontend.global.currentairport')</h5>
</div> </div>
</div> </div>
</div> </div>
@@ -62,11 +62,11 @@
<div class="card"> <div class="card">
<div class="nav nav-tabs" role="tablist" style="background: #067ec1; color: #FFF;"> <div class="nav nav-tabs" role="tablist" style="background: #067ec1; color: #FFF;">
{{ __('Your Last Report') }} @lang('frontend.dashboard.yourlastreport')
</div> </div>
@if($last_pirep === null) @if($last_pirep === null)
<div class="card-block" style="text-align:center;"> <div class="card-block" style="text-align:center;">
{{ __('No reports yet.') }} <a href="{{ route('frontend.pireps.create') }}">{{ __('File one now.') }}</a> @lang('frontend.dashboard.noreportsyet') <a href="{{ route('frontend.pireps.create') }}">@lang('frontend.dashboard.fileonenow')</a>
</div> </div>
@else @else
@include('pireps.pirep_card', ['pirep' => $last_pirep]) @include('pireps.pirep_card', ['pirep' => $last_pirep])
@@ -81,7 +81,7 @@
<div class="col-sm-4"> <div class="col-sm-4">
<div class="card"> <div class="card">
<div class="nav nav-tabs" role="tablist" style="background: #067ec1; color: #FFF;"> <div class="nav nav-tabs" role="tablist" style="background: #067ec1; color: #FFF;">
{{ __('Weather at :ICAO', ['ICAO' => $current_airport]) }} @lang('frontend.dashboard.weatherat', ['ICAO' => $current_airport])
</div> </div>
<div class="card-block"> <div class="card-block">
<!-- Tab panes --> <!-- Tab panes -->
@@ -93,7 +93,7 @@
<div class="card"> <div class="card">
<div class="nav nav-tabs" role="tablist" style="background: #067ec1; color: #FFF;"> <div class="nav nav-tabs" role="tablist" style="background: #067ec1; color: #FFF;">
{{ __('Recent Reports') }} @lang('frontend.dashboard.recentreports')
</div> </div>
<div class="card-block"> <div class="card-block">
<!-- Tab panes --> <!-- Tab panes -->
@@ -105,7 +105,7 @@
<div class="card"> <div class="card">
<div class="nav nav-tabs" role="tablist" style="background: #067ec1; color: #FFF;"> <div class="nav nav-tabs" role="tablist" style="background: #067ec1; color: #FFF;">
{{ __('Newest Pilots') }} @lang('frontend.global.newestpilots')
</div> </div>
<div class="card-block"> <div class="card-block">
<!-- Tab panes --> <!-- Tab panes -->

View File

@@ -1,15 +1,15 @@
@extends('app') @extends('app')
@section('title', __trans_choice('Download', 2)) @section('title', trans_choice('frontend.global.download', 2))
@section('content') @section('content')
@include('flash::message') @include('flash::message')
<div class="row"> <div class="row">
<div class="row-sm-12"> <div class="row-sm-12">
<h2>{{ __trans_choice('Download', 2) }}</h2> <h2>{{ trans_choice('frontend.global.download', 2) }}</h2>
</div> </div>
</div> </div>
@if(!$grouped_files || \count($grouped_files) === 0) @if(!$grouped_files || \count($grouped_files) === 0)
<div class="jumbotron text-center">{{ __('There are no downloads!') }}</div> <div class="jumbotron text-center">@lang('frontend.downloads.nodownloads')</div>
@else @else
@foreach($grouped_files as $group => $files) @foreach($grouped_files as $group => $files)
<div class="row" style="margin-bottom: 40px;"> <div class="row" style="margin-bottom: 40px;">

View File

@@ -9,7 +9,7 @@
@if($file->description) @if($file->description)
- {{$file->description}} - {{$file->description}}
@endif @endif
<span style="margin-left: 20px">{{ $file->download_count.' '.__trans_choice('Download', $file->download_count) }}</span> <span style="margin-left: 20px">{{ $file->download_count.' '.trans_choice('frontend.global.download', $file->download_count) }}</span>
</li> </li>
@endforeach @endforeach
</ul> </ul>

View File

@@ -12,7 +12,7 @@
</div> </div>
<div class="modal-footer"> <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">@lang('frontend.global.close')</button>
</div> </div>
</div> </div>
</div> </div>

View File

@@ -1,11 +1,11 @@
@extends('app') @extends('app')
@section('title', __trans_choice('Flight', 2)) @section('title', trans_choice('frontend.global.flight', 2))
@section('content') @section('content')
<div class="row"> <div class="row">
@include('flash::message') @include('flash::message')
<div class="col-md-9"> <div class="col-md-9">
<h2>{{ $title ?? __trans_choice('Flight', 2) }}</h2> <h2>{{ $title ?? trans_choice('frontend.global.flight', 2) }}</h2>
@include('flights.table') @include('flights.table')
</div> </div>
<div class="col-md-3"> <div class="col-md-3">

View File

@@ -1,7 +1,7 @@
<div class="card"> <div class="card">
<div class="card-block" style="min-height: 0px"> <div class="card-block" style="min-height: 0px">
<div class="form-group text-right"> <div class="form-group text-right">
<a href="{{ route('frontend.flights.bids') }}">{{ __trans_choice('My Bid', 2) }}</a> <a href="{{ route('frontend.flights.bids') }}">{{ trans_choice('frontend.flights.mybid', 2) }}</a>
</div> </div>
</div> </div>
</div> </div>

View File

@@ -26,11 +26,11 @@ $(document).ready(function () {
if(params.method === 'DELETE') { if(params.method === 'DELETE') {
console.log('successfully removed flight'); console.log('successfully removed flight');
btn.removeClass(class_name); btn.removeClass(class_name);
alert('Your bid was removed'); alert('@lang("frontend.flights.bidremoved")');
} else { } else {
console.log('successfully saved flight'); console.log('successfully saved flight');
btn.addClass(class_name); btn.addClass(class_name);
alert('Your bid was added'); alert('@lang("frontend.flights.bidadded")');
} }
}) })
.catch(error => { .catch(error => {

View File

@@ -1,4 +1,4 @@
<h3 class="description">{{ __('Search') }}</h3> <h3 class="description">@lang('frontend.flights.search')</h3>
<div class="card pull-right"> <div class="card pull-right">
<div class="card-block" style="min-height: 0px"> <div class="card-block" style="min-height: 0px">
<div class="form-group"> <div class="form-group">
@@ -8,23 +8,23 @@
'class'=>'form-inline' 'class'=>'form-inline'
]) }} ]) }}
<div> <div>
<p>{{ __('Flight Number') }}</p> <p>@lang('frontend.global.flightnumber')</p>
{{ Form::text('flight_number', null, ['class' => 'form-control']) }} {{ Form::text('flight_number', null, ['class' => 'form-control']) }}
</div> </div>
<div style="margin-top: 10px;"> <div style="margin-top: 10px;">
<p>{{ __('Departure Airport') }}</p> <p>@lang('frontend.global.departureairport')</p>
{{ Form::select('dep_icao', $airports, null , ['class' => 'form-control']) }} {{ Form::select('dep_icao', $airports, null , ['class' => 'form-control']) }}
</div> </div>
<div style="margin-top: 10px;"> <div style="margin-top: 10px;">
<p>{{ __('Arrival Airport') }}</p> <p>@lang('frontend.global.arrivalairport')</p>
{{ Form::select('arr_icao', $airports, null , ['class' => 'form-control']) }} {{ Form::select('arr_icao', $airports, null , ['class' => 'form-control']) }}
</div> </div>
<div class="clear" style="margin-top: 10px;"> <div class="clear" style="margin-top: 10px;">
{{ Form::submit(__('Find'), ['class' => 'btn btn-primary']) }}&nbsp; {{ Form::submit(trans('frontend.global.find'), ['class' => 'btn btn-primary']) }}&nbsp;
<a href="{{ route('frontend.flights.index') }}">{{ __('Reset') }}</a> <a href="{{ route('frontend.flights.index') }}">@lang('frontend.global.reset')</a>
</div> </div>
{{ Form::close() }} {{ Form::close() }}
</div> </div>

View File

@@ -1,5 +1,5 @@
@extends('app') @extends('app')
@section('title', __trans_choice('Flight', 1).' '.$flight->ident) @section('title', trans_choice('frontend.global.flight', 1).' '.$flight->ident)
@section('content') @section('content')
<div class="row"> <div class="row">
@@ -13,7 +13,7 @@
<div class="col-12"> <div class="col-12">
<table class="table"> <table class="table">
<tr> <tr>
<td>{{ __('Departure') }}</td> <td>@lang('frontend.global.departure')</td>
<td> <td>
{{ $flight->dpt_airport->name }} {{ $flight->dpt_airport->name }}
(<a href="{{route('frontend.airports.show', [ (<a href="{{route('frontend.airports.show', [
@@ -24,7 +24,7 @@
</tr> </tr>
<tr> <tr>
<td>{{ __('Arrival') }}</td> <td>@lang('frontend.global.arrival')</td>
<td> <td>
{{ $flight->arr_airport->name }} {{ $flight->arr_airport->name }}
(<a href="{{route('frontend.airports.show', [ (<a href="{{route('frontend.airports.show', [
@@ -34,21 +34,24 @@
</tr> </tr>
@if($flight->alt_airport_id) @if($flight->alt_airport_id)
<tr> <tr>
<td>{{ __('Alternate Airport') }}</td> <td>@lang('frontend.flights.alternateairport')</td>
<td> <td>
{{ $flight->alt_airport->full_name }} {{ $flight->alt_airport->name }}
(<a href="{{route('frontend.airports.show', [
'id' => $flight->alt_airport->icao
])}}">{{$flight->alt_airport->icao}}</a>)
</td> </td>
</tr> </tr>
@endif @endif
<tr> <tr>
<td>{{ __('Route') }}</td> <td>@lang('frontend.global.route')</td>
<td>{{ $flight->route }}</td> <td>{{ $flight->route }}</td>
</tr> </tr>
@if(filled($flight->notes)) @if(filled($flight->notes))
<tr> <tr>
<td>{{ __('Notes') }}</td> <td>{{ trans_choice('frontend.global.note', 2) }}</td>
<td>{{ $flight->notes }}</td> <td>{{ $flight->notes }}</td>
</tr> </tr>
@endif @endif
@@ -62,15 +65,22 @@
</div> </div>
</div> </div>
<div class="col-4"> <div class="col-4">
<h5>{{$flight->dpt_airport_id}} METAR</h5> <h5>{{$flight->dpt_airport_id}} @lang('frontend.global.metar')</h5>
{{ Widget::Weather([ {{ Widget::Weather([
'icao' => $flight->dpt_airport_id, 'icao' => $flight->dpt_airport_id,
]) }} ]) }}
<br /> <br />
<h5>{{$flight->arr_airport_id}} METAR</h5> <h5>{{$flight->arr_airport_id}} @lang('frontend.global.metar')</h5>
{{ Widget::Weather([ {{ Widget::Weather([
'icao' => $flight->arr_airport_id, 'icao' => $flight->arr_airport_id,
]) }} ]) }}
@if ($flight->alt_airport_id)
<br />
<h5>{{$flight->alt_airport_id}} @lang('frontend.global.metar')</h5>
{{ Widget::Weather([
'icao' => $flight->alt_airport_id,
]) }}
@endif
</div> </div>
</div> </div>
@endsection @endsection

View File

@@ -24,7 +24,7 @@
x-id="{{ $flight->id }}" x-id="{{ $flight->id }}"
x-saved-class="btn-info" x-saved-class="btn-info"
type="button" type="button"
title="{{ __('Add/Remove Bid') }}" title="@lang('frontend.flights.addremovebid')"
> >
<i class="fas fa-map-marker"></i> <i class="fas fa-map-marker"></i>
</button> </button>
@@ -34,14 +34,14 @@
<div class="row"> <div class="row">
<div class="col-sm-5"> <div class="col-sm-5">
{{--<table class="table-condensed"></table>--}} {{--<table class="table-condensed"></table>--}}
<span class="title">{{ __('DEP') }}&nbsp;</span> <span class="title">{{ strtoupper(trans('frontend.flights.dep')) }}&nbsp;</span>
{{ $flight->dpt_airport->name }} {{ $flight->dpt_airport->name }}
(<a href="{{route('frontend.airports.show', [ (<a href="{{route('frontend.airports.show', [
'id' => $flight->dpt_airport->icao 'id' => $flight->dpt_airport->icao
])}}">{{$flight->dpt_airport->icao}}</a>) ])}}">{{$flight->dpt_airport->icao}}</a>)
@if($flight->dpt_time), {{ $flight->dpt_time }}@endif @if($flight->dpt_time), {{ $flight->dpt_time }}@endif
<br /> <br />
<span class="title">{{ __('ARR') }}&nbsp;</span> <span class="title">{{ strtoupper(trans('frontend.flights.arr')) }}&nbsp;</span>
{{ $flight->arr_airport->name }} {{ $flight->arr_airport->name }}
(<a href="{{route('frontend.airports.show', [ (<a href="{{route('frontend.airports.show', [
'id' => $flight->arr_airport->icao 'id' => $flight->arr_airport->icao
@@ -49,19 +49,19 @@
@if($flight->arr_time), {{ $flight->arr_time }}@endif @if($flight->arr_time), {{ $flight->arr_time }}@endif
<br /> <br />
@if($flight->distance) @if($flight->distance)
<span class="title">{{ __('DISTANCE') }}&nbsp;</span> <span class="title">{{ strtoupper(trans('frontend.global.distance')) }}&nbsp;</span>
{{ $flight->distance }} {{ setting('units.distance') }} {{ $flight->distance }} {{ setting('units.distance') }}
@endif @endif
<br /> <br />
@if($flight->level) @if($flight->level)
<span class="title">{{ __('LEVEL') }}&nbsp;</span> <span class="title">{{ strtoupper(trans('frontend.flights.level')) }}&nbsp;</span>
{{ $flight->level }} {{ setting('units.altitude') }} {{ $flight->level }} {{ setting('units.altitude') }}
@endif @endif
</div> </div>
<div class="col-sm-7"> <div class="col-sm-7">
<div class="row"> <div class="row">
<div class="col-sm-12"> <div class="col-sm-12">
<span class="title">{{ __('ROUTE') }}&nbsp;</span> <span class="title">{{ strtoupper(trans('frontend.global.route')) }}&nbsp;</span>
{{ $flight->route }} {{ $flight->route }}
</div> </div>
</div> </div>

View File

@@ -1,5 +1,5 @@
@extends('app') @extends('app')
@section('title', __('Welcome!')) @section('title', trans('frontend.home.welcome.title'))
@section('content') @section('content')
<div class="row"> <div class="row">
@@ -7,14 +7,14 @@
</div> </div>
</div> </div>
<div class="row"> <div class="row">
<div class="col-sm-12"> <div class="col-sm-9">
<center><h1 class="description">{{ __('Welcome Message') }}</h1></center> <center><h1 class="description">@lang('frontend.home.welcome.message', ['Appname' => config('app.name')])</h1></center>
<div class="photo-container">
<img src="{{ public_asset('/assets/img/Airplane.jpg') }}" style=""/>
</div>
</div> </div>
<div class="col-sm-9">
<img src="{{ public_asset('/assets/img/Airplane.jpg') }}" style=""/>
</div>
<div class="col-sm-3 "> <div class="col-sm-3 ">
<h2 class="description">{{ __('Newest Pilots') }}</h2> <h2 class="description">@lang('frontend.global.newestpilots')</h2>
@foreach($users as $user) @foreach($users as $user)
<div class="card card-signup blue-bg"> <div class="card card-signup blue-bg">
{{--<div class="card-bg">--}} {{--<div class="card-bg">--}}
@@ -43,7 +43,7 @@
</div> </div>
</div> </div>
<div class="footer text-center"> <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">@lang('frontend.global.profile')</a>
</div> </div>
</div> </div>
@endforeach @endforeach

View File

@@ -3,7 +3,7 @@
<li class="nav-item"> <li class="nav-item">
<a class="nav-link" href="{{ route('frontend.dashboard.index') }}"> <a class="nav-link" href="{{ route('frontend.dashboard.index') }}">
<i class="fas fa-tachometer-alt"></i> <i class="fas fa-tachometer-alt"></i>
<p>{{ __('Dashboard') }}</p> <p>@lang('frontend.global.dashboard')</p>
</a> </a>
</li> </li>
@endif @endif
@@ -11,14 +11,14 @@
<li class="nav-item"> <li class="nav-item">
<a class="nav-link" href="{{ route('frontend.livemap.index') }}"> <a class="nav-link" href="{{ route('frontend.livemap.index') }}">
<i class="fas fa-globe"></i> <i class="fas fa-globe"></i>
<p>{{ __('Live Map') }}</p> <p>@lang('frontend.global.livemap')</p>
</a> </a>
</li> </li>
<li class="nav-item"> <li class="nav-item">
<a class="nav-link" href="{{ route('frontend.pilots.index') }}"> <a class="nav-link" href="{{ route('frontend.pilots.index') }}">
<i class="fas fa-users"></i> <i class="fas fa-users"></i>
<p>{{ __trans_choice('Pilot', 2) }}</p> <p>{{ trans_choice('frontend.global.pilot', 2) }}</p>
</a> </a>
</li> </li>
@@ -27,7 +27,7 @@
<li class="nav-item"> <li class="nav-item">
<a class="nav-link" href="{{ url($link['url']) }}"> <a class="nav-link" href="{{ url($link['url']) }}">
<i class="{{ $link['icon'] }}"></i> <i class="{{ $link['icon'] }}"></i>
<p>{{ __($link['title']) }}</p> <p>{{ ($link['title']) }}</p>
</a> </a>
</li> </li>
@endforeach @endforeach
@@ -36,13 +36,13 @@
<li class="nav-item"> <li class="nav-item">
<a class="nav-link" href="{{ url('/login') }}"> <a class="nav-link" href="{{ url('/login') }}">
<i class="fas fa-sign-in-alt"></i> <i class="fas fa-sign-in-alt"></i>
<p>{{ __('Login') }}</p> <p>@lang('frontend.nav.login')</p>
</a> </a>
</li> </li>
<li class="nav-item"> <li class="nav-item">
<a class="nav-link" href="{{ url('/register') }}"> <a class="nav-link" href="{{ url('/register') }}">
<i class="far fa-id-card"></i> <i class="far fa-id-card"></i>
<p>{{ __('Register') }}</p> <p>@lang('frontend.global.register')</p>
</a> </a>
</li> </li>
@@ -51,25 +51,25 @@
<li class="nav-item"> <li class="nav-item">
<a class="nav-link" href="{{ route('frontend.flights.index') }}"> <a class="nav-link" href="{{ route('frontend.flights.index') }}">
<i class="fab fa-avianex"></i> <i class="fab fa-avianex"></i>
<p>{{ __trans_choice('Flight', 2) }}</p> <p>{{ trans_choice('frontend.global.flight', 2) }}</p>
</a> </a>
</li> </li>
<li class="nav-item"> <li class="nav-item">
<a class="nav-link" href="{{ route('frontend.pireps.index') }}"> <a class="nav-link" href="{{ route('frontend.pireps.index') }}">
<i class="fas fa-cloud-upload-alt"></i> <i class="fas fa-cloud-upload-alt"></i>
<p>{{ __trans_choice('PIREP', 2) }}</p> <p>{{ trans_choice('frontend.global.pirep', 2) }}</p>
</a> </a>
</li> </li>
<li class="nav-item"> <li class="nav-item">
<a class="nav-link" href="{{ route('frontend.profile.index') }}"> <a class="nav-link" href="{{ route('frontend.profile.index') }}">
<i class="far fa-user"></i> <i class="far fa-user"></i>
<p>{{ __('Profile') }}</p> <p>@lang('frontend.global.profile')</p>
</a> </a>
</li> </li>
<li class="nav-item"> <li class="nav-item">
<a class="nav-link" href="{{ route('frontend.downloads.index') }}"> <a class="nav-link" href="{{ route('frontend.downloads.index') }}">
<i class="fas fa-download"></i> <i class="fas fa-download"></i>
<p>{{ __trans_choice('Download', 2) }}</p> <p>{{ trans_choice('frontend.global.download', 2) }}</p>
</a> </a>
</li> </li>
@@ -77,7 +77,7 @@
<li class="nav-item"> <li class="nav-item">
<a class="nav-link" href="{{ url('/admin') }}"> <a class="nav-link" href="{{ url('/admin') }}">
<i class="fas fa-circle-notch"></i> <i class="fas fa-circle-notch"></i>
<p>{{ __('Administration') }}</p> <p>@lang('frontend.nav.administration')</p>
</a> </a>
</li> </li>
@endrole @endrole
@@ -87,7 +87,7 @@
<li class="nav-item"> <li class="nav-item">
<a class="nav-link" href="{{ url($link['url']) }}"> <a class="nav-link" href="{{ url($link['url']) }}">
<i class="{{ $link['icon'] }}"></i> <i class="{{ $link['icon'] }}"></i>
<p>{{ __($link['title']) }}</p> <p>{{ ($link['title']) }}</p>
</a> </a>
</li> </li>
@endforeach @endforeach
@@ -95,7 +95,7 @@
<li class="nav-item"> <li class="nav-item">
<a class="nav-link" href="{{ url('/logout') }}"> <a class="nav-link" href="{{ url('/logout') }}">
<i class="fas fa-sign-out-alt"></i> <i class="fas fa-sign-out-alt"></i>
<p>{{ __('Log Out') }}</p> <p>@lang('frontend.nav.logout')</p>
</a> </a>
</li> </li>
@endif @endif

View File

@@ -1,10 +1,10 @@
@extends('app') @extends('app')
@section('title', __('File Flight Report')) @section('title', trans('frontend.pireps.fileflightreport'))
@section('content') @section('content')
<div class="row"> <div class="row">
<div class="col-md-12"> <div class="col-md-12">
<h2>{{ __('New Flight Report') }}</h2> <h2>@lang('frontend.pireps.newflightreport')</h2>
@include('flash::message') @include('flash::message')
{{ Form::open(['route' => 'frontend.pireps.store']) }} {{ Form::open(['route' => 'frontend.pireps.store']) }}

View File

@@ -1,9 +1,9 @@
@extends('app') @extends('app')
@section('title', __('Edit Flight Report')) @section('title', trans('frontend.pireps.editflightreport'))
@section('content') @section('content')
<div class="row"> <div class="row">
<div class="col-md-12"> <div class="col-md-12">
<h2>{{ __('Edit Flight Report') }}</h2> <h2>@lang('frontend.pireps.editflightreport')</h2>
@include('flash::message') @include('flash::message')
{{ Form::model($pirep, [ {{ Form::model($pirep, [
'route' => ['frontend.pireps.update', $pirep->id], 'route' => ['frontend.pireps.update', $pirep->id],

View File

@@ -1,7 +1,7 @@
@if($aircraft) @if($aircraft)
<div class="form-container"> <div class="form-container">
<h6><i class="fas fa-ellipsis-h"></i> <h6><i class="fas fa-ellipsis-h"></i>
&nbsp;{{ __('Fare', 2) }} &nbsp;{{ trans_coice('frontend.pireps.fare', 2) }}
</h6> </h6>
<div class="form-container-body"> <div class="form-container-body">
@foreach($aircraft->subfleet->fares as $fare) @foreach($aircraft->subfleet->fares as $fare)

View File

@@ -12,7 +12,7 @@ flight reports that have been filed. You've been warned!
<div class="row"> <div class="row">
<div class="col-sm-12"> <div class="col-sm-12">
@component('components.info') @component('components.info')
{{ __('Once a PIREP has been accepted/rejected, certain fields go into read-only mode.') }} @lang('frontend.pireps.fieldsreadonly')
@endcomponent @endcomponent
</div> </div>
</div> </div>
@@ -21,12 +21,12 @@ flight reports that have been filed. You've been warned!
<div class="col-8"> <div class="col-8">
<div class="form-container"> <div class="form-container">
<h6><i class="fas fa-info-circle"></i> <h6><i class="fas fa-info-circle"></i>
&nbsp;{{ __('Flight Informations') }} &nbsp;@lang('frontend.pireps.flightinformations')
</h6> </h6>
<div class="form-container-body"> <div class="form-container-body">
<div class="row"> <div class="row">
<div class="col-sm-4"> <div class="col-sm-4">
{{ Form::label('airline_id', __('Airline')) }} {{ Form::label('airline_id', trans('frontend.global.airline')) }}
@if(!empty($pirep) && $pirep->read_only) @if(!empty($pirep) && $pirep->read_only)
<p>{{ $pirep->airline->name }}</p> <p>{{ $pirep->airline->name }}</p>
{{ Form::hidden('airline_id') }} {{ Form::hidden('airline_id') }}
@@ -42,7 +42,7 @@ flight reports that have been filed. You've been warned!
@endif @endif
</div> </div>
<div class="col-sm-4"> <div class="col-sm-4">
{{ Form::label('flight_number', __('Flight Number/Code/Leg')) }} {{ Form::label('flight_number', trans('frontend.pireps.flightident')) }}
@if(!empty($pirep) && $pirep->read_only) @if(!empty($pirep) && $pirep->read_only)
<p>{{ $pirep->ident }} <p>{{ $pirep->ident }}
{{ Form::hidden('flight_number') }} {{ Form::hidden('flight_number') }}
@@ -52,19 +52,19 @@ flight reports that have been filed. You've been warned!
@else @else
<div class="input-group input-group-sm mb3"> <div class="input-group input-group-sm mb3">
{{ Form::text('flight_number', null, [ {{ Form::text('flight_number', null, [
'placeholder' => __('Flight Number'), 'placeholder' => trans('frontend.global.flightnumber'),
'class' => 'form-control', 'class' => 'form-control',
'readonly' => (!empty($pirep) && $pirep->read_only), 'readonly' => (!empty($pirep) && $pirep->read_only),
]) }} ]) }}
&nbsp; &nbsp;
{{ Form::text('route_code', null, [ {{ Form::text('route_code', null, [
'placeholder' => __('Code (optional)'), 'placeholder' => trans('frontend.pireps.codeoptional'),
'class' => 'form-control', 'class' => 'form-control',
'readonly' => (!empty($pirep) && $pirep->read_only), 'readonly' => (!empty($pirep) && $pirep->read_only),
]) }} ]) }}
&nbsp; &nbsp;
{{ Form::text('route_leg', null, [ {{ Form::text('route_leg', null, [
'placeholder' => __('Leg (optional)'), 'placeholder' => trans('frontend.pireps.legoptional'),
'class' => 'form-control', 'class' => 'form-control',
'readonly' => (!empty($pirep) && $pirep->read_only), 'readonly' => (!empty($pirep) && $pirep->read_only),
]) }} ]) }}
@@ -75,7 +75,7 @@ flight reports that have been filed. You've been warned!
@endif @endif
</div> </div>
<div class="col-lg-4"> <div class="col-lg-4">
{{ Form::label('flight_type', __('Flight Type')) }} {{ Form::label('flight_type', trans('frontend.pireps.flighttype')) }}
@if(!empty($pirep) && $pirep->read_only) @if(!empty($pirep) && $pirep->read_only)
<p>{{ \App\Models\Enums\FlightType::label($pirep->flight_type) }}</p> <p>{{ \App\Models\Enums\FlightType::label($pirep->flight_type) }}</p>
{{ Form::hidden('flight_type') }} {{ Form::hidden('flight_type') }}
@@ -96,10 +96,10 @@ flight reports that have been filed. You've been warned!
<div class="row"> <div class="row">
<div class="col-3"> <div class="col-3">
{{ Form::label('hours', __('Flight Time')) }} {{ Form::label('hours', trans('frontend.global.flighttime')) }}
@if(!empty($pirep) && $pirep->read_only) @if(!empty($pirep) && $pirep->read_only)
<p> <p>
{{ $pirep->hours.' '.__trans_choice('Hour', $pirep->hours) }}, {{ $pirep->minutes.' '.__trans_choice('Minute', $pirep->minutes) }} {{ $pirep->hours.' '.trans_choice('frontend.global.hour', $pirep->hours) }}, {{ $pirep->minutes.' '.trans_choice('frontend.global.minute', $pirep->minutes) }}
{{ Form::hidden('hours') }} {{ Form::hidden('hours') }}
{{ Form::hidden('minutes') }} {{ Form::hidden('minutes') }}
</p> </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;"> <div class="input-group input-group-sm" style="max-width: 200px;">
{{ Form::number('hours', null, [ {{ Form::number('hours', null, [
'class' => 'form-control', 'class' => 'form-control',
'placeholder' => __trans_choice('Hour', 2), 'placeholder' => trans_choice('frontend.global.hour', 2),
'min' => '0', 'min' => '0',
'readonly' => (!empty($pirep) && $pirep->read_only), 'readonly' => (!empty($pirep) && $pirep->read_only),
]) }} ]) }}
{{ Form::number('minutes', null, [ {{ Form::number('minutes', null, [
'class' => 'form-control', 'class' => 'form-control',
'placeholder' => __trans_choice('Minute', 2), 'placeholder' => trans_choice('frontend.global.minute', 2),
'min' => 0, 'min' => 0,
'readonly' => (!empty($pirep) && $pirep->read_only), 'readonly' => (!empty($pirep) && $pirep->read_only),
]) }} ]) }}
@@ -126,27 +126,27 @@ flight reports that have been filed. You've been warned!
<div class="col-3"> <div class="col-3">
{{--{{ Form::label('submitted_date', __('Date Flown')) }} {{--{{ Form::label('submitted_date', trans('frontend.pireps.dateflown')) }}
{{ Form::text('submmitted_date', null, [ {{ Form::text('submmitted_date', null, [
'placeholder' => __('Departure Date'), 'placeholder' => trans('frontend.pireps.departuredate'),
'class' => 'form-control', 'class' => 'form-control',
'readonly' => $pirep->read_only]) }}--}} 'readonly' => $pirep->read_only]) }}--}}
</div> </div>
<div class="col-3"> <div class="col-3">
{{--{{ Form::label('departure_time', __('Departure Time')) }} {{--{{ Form::label('departure_time', trans('frontend.pireps.departuretime')) }}
{{ Form::text('departure_time', null, [ {{ Form::text('departure_time', null, [
'placeholder' => __('Departure TIme'), 'placeholder' => trans('frontend.pireps.departuretime'),
'class' => 'form-control', 'class' => 'form-control',
'readonly' => $pirep->read_only]) }}--}} 'readonly' => $pirep->read_only]) }}--}}
</div> </div>
<div class="col-3"> <div class="col-3">
{{--{{ Form::label('arrival_time', __('Arrival Time')) }} {{--{{ Form::label('arrival_time', trans('frontend.pireps.arrivaltime')) }}
{{ Form::text('arrival_time', null, [ {{ Form::text('arrival_time', null, [
'placeholder' => __('Arrival TIme'), 'placeholder' => trans('frontend.pireps.arrivaltime'),
'class' => 'form-control', 'class' => 'form-control',
'readonly' => $pirep->read_only]) }}--}} 'readonly' => $pirep->read_only]) }}--}}
</div> </div>
@@ -158,12 +158,12 @@ flight reports that have been filed. You've been warned!
<div class="form-container"> <div class="form-container">
<h6><i class="fas fa-globe"></i> <h6><i class="fas fa-globe"></i>
&nbsp;{{ __('Departure/Arrival Informations') }} &nbsp;@lang('frontend.pireps.deparrinformations')
</h6> </h6>
<div class="form-container-body"> <div class="form-container-body">
<div class="row"> <div class="row">
<div class="col-6"> <div class="col-6">
{{ Form::label('dpt_airport_id', __('Departure Airport')) }} {{ Form::label('dpt_airport_id', trans('frontend.global.departureairport')) }}
@if(!empty($pirep) && $pirep->read_only) @if(!empty($pirep) && $pirep->read_only)
{{ $pirep->dpt_airport->name }} {{ $pirep->dpt_airport->name }}
(<a href="{{route('frontend.airports.show', [ (<a href="{{route('frontend.airports.show', [
@@ -183,7 +183,7 @@ flight reports that have been filed. You've been warned!
</div> </div>
<div class="col-6"> <div class="col-6">
{{ Form::label('arr_airport_id', __('Arrival Airport')) }} {{ Form::label('arr_airport_id', trans('frontend.global.arrivalairport')) }}
@if(!empty($pirep) && $pirep->read_only) @if(!empty($pirep) && $pirep->read_only)
{{ $pirep->arr_airport->name }} {{ $pirep->arr_airport->name }}
(<a href="{{route('frontend.airports.show', [ (<a href="{{route('frontend.airports.show', [
@@ -207,12 +207,12 @@ flight reports that have been filed. You've been warned!
<div class="form-container"> <div class="form-container">
<h6><i class="fab fa-avianex"></i> <h6><i class="fab fa-avianex"></i>
&nbsp;{{ __('Aircraft Informations') }} &nbsp;@lang('frontend.pireps.aircraftinformations')
</h6> </h6>
<div class="form-container-body"> <div class="form-container-body">
<div class="row"> <div class="row">
<div class="col"> <div class="col">
{{ Form::label('aircraft_id', __('Aircraft')) }} {{ Form::label('aircraft_id', trans('frontend.global.aircraft')) }}
@if(!empty($pirep) && $pirep->read_only) @if(!empty($pirep) && $pirep->read_only)
<p>{{ $pirep->aircraft->name }}</p> <p>{{ $pirep->aircraft->name }}</p>
{{ Form::hidden('aircraft_id') }} {{ Form::hidden('aircraft_id') }}
@@ -234,13 +234,13 @@ flight reports that have been filed. You've been warned!
<div class="form-container"> <div class="form-container">
<h6><i class="far fa-comments"></i> <h6><i class="far fa-comments"></i>
&nbsp;{{ __('Route') }} &nbsp;@lang('frontend.global.route')
</h6> </h6>
<div class="form-container-body"> <div class="form-container-body">
<div class="row"> <div class="row">
<div class="col"> <div class="col">
<div class="input-group input-group-sm form-group"> <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' => trans('frontend.global.route')]) }}
<p class="text-danger">{{ $errors->first('route') }}</p> <p class="text-danger">{{ $errors->first('route') }}</p>
</div> </div>
</div> </div>
@@ -250,13 +250,13 @@ flight reports that have been filed. You've been warned!
<div class="form-container"> <div class="form-container">
<h6><i class="far fa-comments"></i> <h6><i class="far fa-comments"></i>
&nbsp;{{ __('Remarks') }} &nbsp;{{ trans_choice('frontend.global.remark', 2) }}
</h6> </h6>
<div class="form-container-body"> <div class="form-container-body">
<div class="row"> <div class="row">
<div class="col"> <div class="col">
<div class="input-group input-group-sm form-group"> <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' => trans_choice('frontend.global.note', 2)]) }}
<p class="text-danger">{{ $errors->first('notes') }}</p> <p class="text-danger">{{ $errors->first('notes') }}</p>
</div> </div>
</div> </div>
@@ -269,7 +269,7 @@ flight reports that have been filed. You've been warned!
<div class="form-container"> <div class="form-container">
<h6><i class="fab fa-wpforms"></i> <h6><i class="fab fa-wpforms"></i>
&nbsp;{{ __trans_choice('Field', 2) }} &nbsp;{{ trans_choice('frontend.global.field', 2) }}
</h6> </h6>
<div class="form-container-body"> <div class="form-container-body">
@@ -310,7 +310,7 @@ flight reports that have been filed. You've been warned!
<div class="form-group"> <div class="form-group">
@if(isset($pirep) && !$pirep->read_only) @if(isset($pirep) && !$pirep->read_only)
{{ Form::button(__('Delete PIREP'), [ {{ Form::button(trans('frontend.pireps.deletepirep'), [
'name' => 'submit', 'name' => 'submit',
'value' => 'Delete', 'value' => 'Delete',
'class' => 'btn btn-warning', 'class' => 'btn btn-warning',
@@ -319,14 +319,14 @@ flight reports that have been filed. You've been warned!
@endif @endif
@if(!isset($pirep) || (filled($pirep) && !$pirep->read_only)) @if(!isset($pirep) || (filled($pirep) && !$pirep->read_only))
{{ Form::button(__('Save PIREP'), [ {{ Form::button(trans('frontend.pireps.savepirep'), [
'name' => 'submit', 'name' => 'submit',
'value' => 'Save', 'value' => 'Save',
'class' => 'btn btn-info', 'class' => 'btn btn-info',
'type' => 'submit']) 'type' => 'submit'])
}} }}
{{ Form::button(__('Submit PIREP'), [ {{ Form::button(trans('frontend.pireps.submitpirep'), [
'name' => 'submit', 'name' => 'submit',
'value' => 'Submit', 'value' => 'Submit',
'class' => 'btn btn-success', 'class' => 'btn btn-success',

View File

@@ -1,5 +1,5 @@
@extends('app') @extends('app')
@section('title', __trans_choice('PIREP', 2)) @section('title', trans_choice('frontend.global.pirep', 2))
@section('content') @section('content')
<div class="row"> <div class="row">
@@ -7,9 +7,9 @@
<div style="float:right;"> <div style="float:right;">
<a class="btn btn-info pull-right btn-lg" <a class="btn btn-info pull-right btn-lg"
style="margin-top: -10px;margin-bottom: 5px" style="margin-top: -10px;margin-bottom: 5px"
href="{{ route('frontend.pireps.create') }}">{{ __('File New PIREP') }}</a> href="{{ route('frontend.pireps.create') }}">@lang('frontend.pireps.filenewpirep')</a>
</div> </div>
<h2>{{ __trans_choice('Pilot Report', 2) }}</h2> <h2>{{ trans_choice('frontend.pireps.pilotreport', 2) }}</h2>
@include('flash::message') @include('flash::message')
@include('pireps.table') @include('pireps.table')
</div> </div>

View File

@@ -5,7 +5,7 @@
<p class="float-right"> <p class="float-right">
<a href="{{ route('frontend.pireps.edit', [ <a href="{{ route('frontend.pireps.edit', [
'id' => $pirep->id, 'id' => $pirep->id,
]) }}" class="btn btn-sm btn-info">{{ __('Edit') }}</a> ]) }}" class="btn btn-sm btn-info">@lang('frontend.global.edit') }}</a>
</p> </p>
<h5> <h5>
<a href="{{ route('frontend.pireps.show', [$pirep->id]) }}"> <a href="{{ route('frontend.pireps.show', [$pirep->id]) }}">
@@ -41,22 +41,22 @@
<div class="col-sm-6"> <div class="col-sm-6">
<table class="table-condensed" width="100%"> <table class="table-condensed" width="100%">
<tr> <tr>
<td nowrap><span class="title">{{ __('Flight Time') }}&nbsp;</span></td> <td nowrap><span class="title">@lang('frontend.pireps.flighttime')&nbsp;</span></td>
<td>{{ Utils::minutesToTimeString($pirep->flight_time) }}</td> <td>{{ Utils::minutesToTimeString($pirep->flight_time) }}</td>
</tr> </tr>
<tr> <tr>
<td nowrap><span class="title">{{ __('Aircraft') }}&nbsp;</span></td> <td nowrap><span class="title">@lang('frontend.global.aircraft')&nbsp;</span></td>
<td>{{ $pirep->aircraft->name }} <td>{{ $pirep->aircraft->name }}
({{ $pirep->aircraft->registration }})</td> ({{ $pirep->aircraft->registration }})</td>
</tr> </tr>
@if($pirep->level) @if($pirep->level)
<tr> <tr>
<td nowrap><span class="title">{{ __('Flight Level') }}&nbsp;</span></td> <td nowrap><span class="title">@lang('frontend.pireps.flightlevel') }}&nbsp;</span></td>
<td>{{ $pirep->level }}</td> <td>{{ $pirep->level }}</td>
</tr> </tr>
@endif @endif
<tr> <tr>
<td nowrap><span class="title">{{ __('Filed On') }}:&nbsp;</span></td> <td nowrap><span class="title">@lang('frontend.pireps.filedon'):&nbsp;</span></td>
<td>{{ show_datetime($pirep->created_at) }}</td> <td>{{ show_datetime($pirep->created_at) }}</td>
</tr> </tr>
</table> </table>

View File

@@ -1,5 +1,5 @@
@extends('app') @extends('app')
@section('title', __trans_choice('PIREP', 1).' '.$pirep->ident) @section('title', trans_choice('frontend.global.pirep', 1).' '.$pirep->ident)
@section('content') @section('content')
<div class="row"> <div class="row">
@@ -12,7 +12,7 @@
@if($pirep->state === PirepState::IN_PROGRESS) @if($pirep->state === PirepState::IN_PROGRESS)
@else @else
__('Arrived') {{$pirep->created_at->diffForHumans()}} @lang('frontend.pireps.arrived') {{$pirep->created_at->diffForHumans()}}
@endif @endif
</p> </p>
</p> </p>
@@ -89,20 +89,20 @@
action="{{ route('frontend.pireps.edit', ['id' => $pirep->id]) }}" action="{{ route('frontend.pireps.edit', ['id' => $pirep->id]) }}"
style="display: inline"> style="display: inline">
@csrf @csrf
<button class="btn btn-info">{{ __('Edit') }}</button> <button class="btn btn-info">@lang('frontend.global.edit')</button>
</form> </form>
&nbsp; &nbsp;
<form method="post" <form method="post"
action="{{ route('frontend.pireps.submit', ['id' => $pirep->id]) }}" action="{{ route('frontend.pireps.submit', ['id' => $pirep->id]) }}"
style="display: inline"> style="display: inline">
@csrf @csrf
<button class="btn btn-success">{{ __('Submit') }}</button> <button class="btn btn-success">@lang('frontend.global.submit')</button>
</form> </form>
</div> </div>
@endif @endif
<table class="table table-striped"> <table class="table table-striped">
<tr> <tr>
<td width="30%">{{ __('Status') }}</td> <td width="30%">@lang('frontend.global.status')</td>
<td> <td>
<div class="badge badge-info"> <div class="badge badge-info">
{{ PirepStatus::label($pirep->status) }} {{ PirepStatus::label($pirep->status) }}
@@ -111,31 +111,31 @@
</tr> </tr>
<tr> <tr>
<td>{{ __('Source') }}</td> <td>@lang('frontend.pireps.source')</td>
<td>{{ PirepSource::label($pirep->source) }}</td> <td>{{ PirepSource::label($pirep->source) }}</td>
</tr> </tr>
<tr> <tr>
<td>{{ __('Flight Type') }}</td> <td>@lang('frontend.pireps.flighttype')</td>
<td>{{ \App\Models\Enums\FlightType::label($pirep->flight_type) }}</td> <td>{{ \App\Models\Enums\FlightType::label($pirep->flight_type) }}</td>
</tr> </tr>
<tr> <tr>
<td>{{ __('Filed Route') }}</td> <td>@lang('frontend.pireps.filedroute')</td>
<td> <td>
{{ $pirep->route }} {{ $pirep->route }}
</td> </td>
</tr> </tr>
<tr> <tr>
<td>{{ __('Notes') }}</td> <td>{{ trans_choice('frontend.global.note', 2) }}</td>
<td> <td>
{{ $pirep->notes }} {{ $pirep->notes }}
</td> </td>
</tr> </tr>
<tr> <tr>
<td>{{ __('Filed On') }}</td> <td>@lang('frontend.pireps.filedon')</td>
<td> <td>
{{ show_datetime($pirep->created_at) }} {{ show_datetime($pirep->created_at) }}
</td> </td>
@@ -148,11 +148,11 @@
@endif @endif
@if(count($pirep->fields) > 0) @if(count($pirep->fields) > 0)
<h5>{{ __trans_choice('Field', 2) }}</h5> <h5>{{ trans_choice('frontend.global.field', 2) }}</h5>
<table class="table table-hover table-condensed"> <table class="table table-hover table-condensed">
<thead> <thead>
<th>{{ __('Name') }}</th> <th>@lang('frontend.global.name')</th>
<th>{{ __('Value') }}</th> <th>@lang('frontend.global.value')</th>
</thead> </thead>
<tbody> <tbody>
@foreach($pirep->fields as $field) @foreach($pirep->fields as $field)
@@ -175,11 +175,11 @@
@if(count($pirep->fares) > 0) @if(count($pirep->fares) > 0)
<div class="row"> <div class="row">
<div class="col-12"> <div class="col-12">
<h5>{{ __trans_choice('Fare', 2) }}</h5> <h5>{{ trans_choice('frontend.pireps.fare', 2) }}</h5>
<table class="table table-hover table-condensed"> <table class="table table-hover table-condensed">
<thead> <thead>
<th>{{ __('Class') }}</th> <th>@lang('frontend.pireps.class')</th>
<th>{{ __('Count') }}</th> <th>@lang('frontend.pireps.count')</th>
</thead> </thead>
<tbody> <tbody>
@foreach($pirep->fares as $fare) @foreach($pirep->fares as $fare)
@@ -200,7 +200,7 @@
<div class="separator"></div> <div class="separator"></div>
<div class="row"> <div class="row">
<div class="col-12"> <div class="col-12">
<h5>{{ __('Flight Log') }}</h5> <h5>@lang('frontend.pireps.flightlog')</h5>
</div> </div>
<div class="col-12"> <div class="col-12">
<table class="table table-hover table-condensed" id="users-table"> <table class="table table-hover table-condensed" id="users-table">

View File

@@ -3,13 +3,13 @@
<table class="table table-condensed table-hover"> <table class="table table-condensed table-hover">
<thead> <thead>
<tr> <tr>
<th>{{ __trans_choice('Flight', 1) }}</th> <th>{{ trans_choice('frontend.global.flight', 1) }}</th>
<th>{{ __('Departure') }}</th> <th>@lang('frontend.global.departure')</th>
<th>{{ __('Arrival') }}</th> <th>@lang('frontend.global.arrival')</th>
<th>{{ __('Aircraft') }}</th> <th>@lang('frontend.global.aircraft')</th>
<th class="text-center">{{ __('Flight Time') }}</th> <th class="text-center">@lang('frontend.global.flighttime')</th>
<th class="text-center">{{ __('Status') }}</th> <th class="text-center">@lang('frontend.global.status')</th>
<th>{{ __('Submitted') }}</th> <th>@lang('frontend.pireps.submitted')</th>
<th></th> <th></th>
</tr> </tr>
</thead> </thead>
@@ -58,7 +58,7 @@
@if(!$pirep->read_only) @if(!$pirep->read_only)
<a href="{{ route('frontend.pireps.edit', [ <a href="{{ route('frontend.pireps.edit', [
'id' => $pirep->id, 'id' => $pirep->id,
]) }}">{{ __('Edit') }}</a> ]) }}">@lang('frontend.global.edit')</a>
@endif @endif
</td> </td>
</tr> </tr>

View File

@@ -1,10 +1,10 @@
@extends('app') @extends('app')
@section('title', __('Edit Profile')) @section('title', trans('frontend.profile.editprofile'))
@section('content') @section('content')
<div class="row"> <div class="row">
<div class="col-md-12"> <div class="col-md-12">
<h2 class="description">{{ __('Edit Your Profile') }}</h2> <h2 class="description">@lang('frontend.profile.edityourprofile')</h2>
@include('flash::message') @include('flash::message')
{{ Form::model($user, ['route' => ['frontend.profile.update', $user->id], 'files' => true, 'method' => 'patch']) }} {{ Form::model($user, ['route' => ['frontend.profile.update', $user->id], 'files' => true, 'method' => 'patch']) }}
@include("profile.fields") @include("profile.fields")

View File

@@ -2,7 +2,7 @@
<div class="col-md-12"> <div class="col-md-12">
<table class="table"> <table class="table">
<tr> <tr>
<td>{{ __('Name') }}</td> <td>@lang('frontend.global.name')</td>
<td> <td>
<div class="input-group form-group-no-border{{ $errors->has('name') ? ' has-danger' : '' }}"> <div class="input-group form-group-no-border{{ $errors->has('name') ? ' has-danger' : '' }}">
{{ Form::text('name', null, ['class' => 'form-control']) }} {{ Form::text('name', null, ['class' => 'form-control']) }}
@@ -14,7 +14,7 @@
</tr> </tr>
<tr> <tr>
<td>{{ __('Email') }}</td> <td>@lang('frontend.global.email')</td>
<td> <td>
<div class="input-group form-group-no-border{{ $errors->has('email') ? ' has-danger' : '' }}"> <div class="input-group form-group-no-border{{ $errors->has('email') ? ' has-danger' : '' }}">
{{ Form::text('email', null, ['class' => 'form-control']) }} {{ Form::text('email', null, ['class' => 'form-control']) }}
@@ -26,7 +26,7 @@
</tr> </tr>
<tr> <tr>
<td>{{ __('Airline') }}</td> <td>@lang('frontend.global.airline')</td>
<td> <td>
<div class="input-group form-group-no-border{{ $errors->has('airline') ? ' has-danger' : '' }}"> <div class="input-group form-group-no-border{{ $errors->has('airline') ? ' has-danger' : '' }}">
{{ Form::select('airline_id', $airlines, null , ['class' => 'form-control select2']) }} {{ Form::select('airline_id', $airlines, null , ['class' => 'form-control select2']) }}
@@ -38,7 +38,7 @@
</tr> </tr>
<tr> <tr>
<td>{{ __('Home Airport') }}</td> <td>@lang('frontend.global.homeairport')</td>
<td> <td>
<div class="input-group form-group-no-border{{ $errors->has('home_airport_id') ? ' has-danger' : '' }}"> <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']) }} {{ Form::select('home_airport_id', $airports, null , ['class' => 'form-control select2']) }}
@@ -50,7 +50,7 @@
</tr> </tr>
<tr> <tr>
<td>{{ __('Country') }}</td> <td>@lang('frontend.global.country')</td>
<td> <td>
<div class="input-group form-group-no-border{{ $errors->has('country') ? ' has-danger' : '' }}"> <div class="input-group form-group-no-border{{ $errors->has('country') ? ' has-danger' : '' }}">
{{ Form::select('country', $countries, null, ['class' => 'form-control select2' ]) }} {{ Form::select('country', $countries, null, ['class' => 'form-control select2' ]) }}
@@ -62,7 +62,7 @@
</tr> </tr>
<tr> <tr>
<td>{{ __('Timezone') }}</td> <td>@lang('frontend.global.timezone')</td>
<td> <td>
<div class="input-group form-group-no-border{{ $errors->has('timezone') ? ' has-danger' : '' }}"> <div class="input-group form-group-no-border{{ $errors->has('timezone') ? ' has-danger' : '' }}">
{{ Form::select('timezone', $timezones, null, ['class' => 'form-control select2' ]) }} {{ Form::select('timezone', $timezones, null, ['class' => 'form-control select2' ]) }}
@@ -74,8 +74,9 @@
</tr> </tr>
<tr> <tr>
<td>{{ __('Change Password') }}</td> <td>@lang('frontend.profile.changepassword')</td>
<td> <td>
<p>@lang('frontend.profile.newpassword'):</p>
<div class="input-group form-group-no-border{{ $errors->has('password') ? ' has-danger' : '' }}"> <div class="input-group form-group-no-border{{ $errors->has('password') ? ' has-danger' : '' }}">
{{ Form::password('password', ['class' => 'form-control']) }} {{ Form::password('password', ['class' => 'form-control']) }}
</div> </div>
@@ -83,7 +84,7 @@
<p class="text-danger">{{ $errors->first('password') }}</p> <p class="text-danger">{{ $errors->first('password') }}</p>
@endif @endif
<p>{{ __('Confirm Password') }}:</p> <p>@lang('frontend.global.confirmpassword'):</p>
<div class="input-group form-group-no-border{{ $errors->has('password_confirmation') ? ' has-danger' : '' }}"> <div class="input-group form-group-no-border{{ $errors->has('password_confirmation') ? ' has-danger' : '' }}">
{{ Form::password('password_confirmation', ['class' => 'form-control']) }} {{ Form::password('password_confirmation', ['class' => 'form-control']) }}
</div> </div>
@@ -92,12 +93,12 @@
@endif @endif
</td> </td>
</tr> </tr>
<td>{{ __('Avatar') }}</td> <td>@lang('frontend.profile.avatar')</td>
<td> <td>
<div class="input-group form-group-no-border{{ $errors->has('avatar') ? ' has-danger' : '' }}"> <div class="input-group form-group-no-border{{ $errors->has('avatar') ? ' has-danger' : '' }}">
{{ Form::file('avatar', null) }} {{ Form::file('avatar', null) }}
</div> </div>
<p class="small">This avatar will be resized to {{ config('phpvms.avatar.width'). ' x '. config('phpvms.avatar.height') }}</p> <p class="small">@lang('frontend.profile.avatarresize', ['width' => config('phpvms.avatar.width'), 'height' => config('phpvms.avatar.height')])</p>
@if ($errors->has('avatar')) @if ($errors->has('avatar'))
<p class="text-danger">{{ $errors->first('avatar') }}</p> <p class="text-danger">{{ $errors->first('avatar') }}</p>
@endif @endif
@@ -106,7 +107,7 @@
</table> </table>
<div style="width: 100%; text-align: right; padding-top: 20px;"> <div style="width: 100%; text-align: right; padding-top: 20px;">
{{ Form::submit(__('Update Profile'), ['class' => 'btn btn-primary']) }} {{ Form::submit(trans('frontend.profile.updateprofile'), ['class' => 'btn btn-primary']) }}
</div> </div>
</div> </div>
</div> </div>

View File

@@ -1,5 +1,5 @@
@extends('app') @extends('app')
@section('title', __('Profile')) @section('title', trans('frontend.global.profile'))
@section('content') @section('content')
<div class="row profile-page content-center text-color-dark-beige"> <div class="row profile-page content-center text-color-dark-beige">
@@ -23,25 +23,25 @@
<div class="content"> <div class="content">
<div class="social-description"> <div class="social-description">
<h2>{{ $user->flights}}</h2> <h2>{{ $user->flights}}</h2>
<p>{{ __trans_choice('Flight', $user->flights) }}</p> <p>{{ trans_choice('frontend.global.flight', $user->flights) }}</p>
</div> </div>
<div class="social-description"> <div class="social-description">
<h2>{{ \App\Facades\Utils::minutesToTimeString($user->flight_time, false) }}</h2> <h2>{{ \App\Facades\Utils::minutesToTimeString($user->flight_time, false) }}</h2>
<p>{{ __('Flight Hours') }}</p> <p>@lang('frontend.profile.flighthours')</p>
</div> </div>
@if($user->home_airport) @if($user->home_airport)
<div class="social-description"> <div class="social-description">
<h2>{{ $user->home_airport->icao }}</h2> <h2>{{ $user->home_airport->icao }}</h2>
<p>{{ __('Home Airport') }}</p> <p>@lang('frontend.global.homeairport')</p>
</div> </div>
@endif @endif
@if($user->current_airport) @if($user->current_airport)
<div class="social-description"> <div class="social-description">
<h2>{{ $user->current_airport->icao }}</h2> <h2>{{ $user->current_airport->icao }}</h2>
<p>{{ __('Current Airport') }}</p> <p>@lang('frontend.global.currentairport')</p>
</div> </div>
@endif @endif
@@ -58,24 +58,24 @@
<div class="col-sm-12"> <div class="col-sm-12">
<div class="text-right"> <div class="text-right">
<a href="{{ route('frontend.profile.regen_apikey') }}" class="btn btn-warning" <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.') }})">@lang('frontend.profile.newapikey')</a>
&nbsp; &nbsp;
<a href="{{ route('frontend.profile.edit', ['id' => $user->id]) }}" <a href="{{ route('frontend.profile.edit', ['id' => $user->id]) }}"
class="btn btn-primary">{{ __('Edit') }}</a> class="btn btn-primary">@lang('frontend.global.edit')</a>
</div> </div>
<h3 class="description">{{ __('Your Profile') }}</h3> <h3 class="description">@lang('frontend.profile.yourprofile')</h3>
<table class="table table-full-width"> <table class="table table-full-width">
<tr> <tr>
<td>{{ __('Email') }}</td> <td>@lang('frontend.global.email')</td>
<td>{{ $user->email }}</td> <td>{{ $user->email }}</td>
</tr> </tr>
<tr> <tr>
<td>{{ __('API Key') }}&nbsp;&nbsp;<span class="description">({{ __('don\'t share this!') }})</span></td> <td>@lang('frontend.profile.apikey')&nbsp;&nbsp;<span class="description">(@lang('frontend.profile.dontshare'))</span></td>
<td>{{ $user->api_key }}</td> <td>{{ $user->api_key }}</td>
</tr> </tr>
<tr> <tr>
<td>{{ __('Timezone') }}</td> <td>@lang('frontend.global.timezone')</td>
<td>{{ $user->timezone }}</td> <td>{{ $user->timezone }}</td>
</tr> </tr>
</table> </table>

View File

@@ -1,10 +1,10 @@
@extends('app') @extends('app')
@section('title', __trans_choice('Pilot', 2)) @section('title', trans_choice('frontend.global.pilot', 2))
@section('content') @section('content')
<div class="row"> <div class="row">
<div class="col-md-12"> <div class="col-md-12">
<h2>{{ __trans_choice('Pilot', 2) }}</h2> <h2>{{ trans_choice('frontend.global.pilot', 2) }}</h2>
@include('users.table') @include('users.table')
</div> </div>
</div> </div>

View File

@@ -1,12 +1,12 @@
<table class="table table-hover" id="users-table"> <table class="table table-hover" id="users-table">
<thead> <thead>
<th></th> <th></th>
<th>{{ __('Name') }}</th> <th>@lang('frontend.global.name')</th>
<th style="text-align: center"></th> <th style="text-align: center"></th>
<th style="text-align: center">{{ __('Airline') }}</th> <th style="text-align: center">@lang('frontend.global.airline')</th>
<th style="text-align: center">{{ __('Location') }}</th> <th style="text-align: center">@lang('frontend.users.location')</th>
<th style="text-align: center">{{ __trans_choice('Flight', 2) }}</th> <th style="text-align: center">{{ trans_choice('frontend.global.flight', 2) }}</th>
<th style="text-align: center">{{ __trans_choice('Hour', 2) }}</th> <th style="text-align: center">{{ trans_choice('frontend.global.hour', 2) }}</th>
</thead> </thead>
<tbody> <tbody>
@foreach($users as $user) @foreach($users as $user)

View File

@@ -1,11 +1,11 @@
<div class="nav nav-tabs" role="tablist" style="background: #067ec1; color: #FFF;"> <div class="nav nav-tabs" role="tablist" style="background: #067ec1; color: #FFF;">
{{ __('News') }} @lang('frontend.widgets.latestnews.news')
</div> </div>
<div class="card border-blue-bottom"> <div class="card border-blue-bottom">
<div class="card-block" style="min-height: 0px"> <div class="card-block" style="min-height: 0px">
@if($news->count() === 0) @if($news->count() === 0)
<div class="text-center text-muted" style="padding: 30px;"> <div class="text-center text-muted" style="padding: 30px;">
{{ __('No News Found') }} @lang('frontend.widgets.latestnews.nonewsfound')
</div> </div>
@endif @endif

View File

@@ -37,22 +37,22 @@
</a> </a>
</h3> </h3>
<p id="map_flight_info"> <p id="map_flight_info">
{ pirep.dpt_airport.name } ({ pirep.dpt_airport.icao }) {{ __('to') }} { pirep.dpt_airport.name } ({ pirep.dpt_airport.icao }) @lang('frontend.global.to')
{ pirep.arr_airport.name } ({ pirep.arr_airport.icao }) { pirep.arr_airport.name } ({ pirep.arr_airport.icao })
</p> </p>
</div> </div>
<div style="float: right; margin-left: 30px; margin-right: 30px;"> <div style="float: right; margin-left: 30px; margin-right: 30px;">
<p id="map_flight_stats_right"> <p id="map_flight_stats_right">
{{ __('Ground Speed') }}: <span style="font-weight: bold">{ pirep.position.gs }</span><br/> @lang('frontend.widgets.livemap.groundspeed'): <span style="font-weight: bold">{ pirep.position.gs }</span><br/>
{{ __('Altitude') }}: <span style="font-weight: bold">{ pirep.position.altitude }</span><br/> @lang('frontend.widgets.livemap.altitude'): <span style="font-weight: bold">{ pirep.position.altitude }</span><br/>
{{ __('Heading') }}: <span style="font-weight: bold">{ pirep.position.heading }</span><br/> @lang('frontend.widgets.livemap.heading'): <span style="font-weight: bold">{ pirep.position.heading }</span><br/>
</p> </p>
</div> </div>
<div style="float: right; margin-left: 30px;"> <div style="float: right; margin-left: 30px;">
<p id="map_flight_stats_middle"> <p id="map_flight_stats_middle">
{{ __('Status') }}: <span style="font-weight: bold">{ pirep.status_text }</span><br /> @lang('frontend.global.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 /> @lang('frontend.global.flighttime'): <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> @lang('frontend.global.distance'): <span style="font-weight: bold">{ pirep.position.distance.{{setting('units.distance')}} }</span>
/ <span style="font-weight: bold"> / <span style="font-weight: bold">
{ pirep.planned_distance.{{setting('units.distance')}} }</span> { pirep.planned_distance.{{setting('units.distance')}} }</span>
</p> </p>
@@ -74,18 +74,18 @@ and being mindful of the rivets bindings
--}} --}}
<div id="live_flights" class="row"> <div id="live_flights" class="row">
<div class="col-md-12"> <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">@lang('frontend.widgets.livemap.noflights')</div>
<table rv-show="has_data" id="live_flights_table" class="table table-striped"> <table rv-show="has_data" id="live_flights_table" class="table table-striped">
<thead> <thead>
<tr class="text-small header"> <tr class="text-small header">
<td class="text-small">{{ __trans_choice('Flight', 1) }}</td> <td class="text-small">{{ trans_choice('frontend.global.Flight', 1) }}</td>
<td class="text-small">{{ __('Departure') }}</td> <td class="text-small">@lang('frontend.global.departure')</td>
<td class="text-small">{{ __('Arrival') }}</td> <td class="text-small">@lang('frontend.global.arrival')</td>
<td class="text-small">{{ __('Aircraft') }}</td> <td class="text-small">@lang('frontend.global.aircraft')</td>
<td class="text-small">{{ __('Altitude') }}</td> <td class="text-small">@lang('frontend.widgets.livemap.altitude')</td>
<td class="text-small">{{ __('GS') }}</td> <td class="text-small">@lang('frontend.widgets.livemap.gs')</td>
<td class="text-small">{{ __('Distance') }}</td> <td class="text-small">@lang('frontend.widgets.livemap.distance')</td>
<td class="text-small">{{ __('Status') }}</td> <td class="text-small">@lang('frontend.global.status') }}</td>
</tr> </tr>
</thead> </thead>
<tbody> <tbody>

View File

@@ -5,30 +5,30 @@ https://api.checkwx.com/#metar-decoded
--}} --}}
@if(!$metar) @if(!$metar)
<p>{{ __('METAR/TAF data could not be retrieved') }}</p> <p>@lang('frontend.widgets.weather.metarnotretrieved')</p>
@else @else
<table class="table table-striped"> <table class="table table-striped">
<tr> <tr>
<td>{{ __('Conditions') }}</td> <td>@lang('frontend.widgets.weather.conditions')</td>
<td> <td>
{{ $metar['category'] }} {{ $metar['category'] }}
{{ $metar['temperature'][$unit_temp] }} {{ $metar['temperature'][$unit_temp] }}
°{{strtoupper($unit_temp)}} °{{strtoupper($unit_temp)}}
@if($metar['visibility']) @if($metar['visibility'])
, {{ __('visibility') }} {{ $metar['visibility'][$unit_dist] }} {{$unit_dist}} , @lang('frontend.widgets.weather.visibility') {{ $metar['visibility'][$unit_dist] }} {{$unit_dist}}
@endif @endif
@if($metar['humidity']) @if($metar['humidity'])
, {{ $metar['humidity'] }}% {{ __('humidity') }} , {{ $metar['humidity'] }}% @lang('frontend.widgets.weather.humidity')
@endif @endif
@if($metar['dew_point']) @if($metar['dew_point'])
, {{ __('dew point') }} , @lang('frontend.widgets.weather.dewpoint')
{{ $metar['dew_point'][$unit_temp] }} {{ $metar['dew_point'][$unit_temp] }}
°{{strtoupper($unit_temp)}} °{{strtoupper($unit_temp)}}
@endif @endif
</td> </td>
</tr> </tr>
<tr> <tr>
<td>{{ __('Barometer') }}</td> <td>@lang('frontend.widgets.weather.barometer')</td>
<td> <td>
{{ number_format($metar['barometer'], 2) }} hPa {{ number_format($metar['barometer'], 2) }} hPa
/ {{ number_format($metar['barometer_in'], 2) }} inHg / {{ number_format($metar['barometer_in'], 2) }} inHg
@@ -36,7 +36,7 @@ https://api.checkwx.com/#metar-decoded
</tr> </tr>
@if($metar['clouds']) @if($metar['clouds'])
<tr> <tr>
<td>{{ __('Clouds') }}</td> <td>@lang('frontend.widgets.weather.clouds')</td>
<td> <td>
@if($unit_alt === 'ft') @if($unit_alt === 'ft')
{{$metar['clouds_report_ft']}} {{$metar['clouds_report_ft']}}
@@ -47,17 +47,17 @@ https://api.checkwx.com/#metar-decoded
</tr> </tr>
@endif @endif
<tr> <tr>
<td>{{ __('Wind') }}</td> <td>@lang('frontend.widgets.weather.wind')</td>
<td> <td>
{{$metar['wind_speed']}} kts {{ __('from') }} {{$metar['wind_direction_label']}} {{$metar['wind_speed']}} kts @lang('frontend.global.from') {{$metar['wind_direction_label']}}
({{$metar['wind_direction']}}°) ({{$metar['wind_direction']}}°)
@if($metar['wind_gust_speed']) @if($metar['wind_gust_speed'])
{{ __('gusts to').' '.$metar['wind_gust_speed'] }} @lang('frontend.widgets.weather.guststo') {{ $metar['wind_gust_speed'] }}
@endif @endif
</td> </td>
</tr> </tr>
<tr> <tr>
<td>{{ __('METAR') }}</td> <td>@lang('frontend.global.metar')</td>
<td> <td>
<div style="line-height:1.5em;min-height: 3em;"> <div style="line-height:1.5em;min-height: 3em;">
{{ $metar['raw'] }} {{ $metar['raw'] }}
@@ -66,14 +66,14 @@ https://api.checkwx.com/#metar-decoded
</tr> </tr>
@if($metar['remarks']) @if($metar['remarks'])
<tr> <tr>
<td>{{ __('Remarks') }}</td> <td>@lang('frontend.widgets.weather.remarks')</td>
<td> <td>
{{ $metar['remarks'] }} {{ $metar['remarks'] }}
</td> </td>
</tr> </tr>
@endif @endif
<tr> <tr>
<td>{{ __('Updated') }}</td> <td>@lang('frontend.widgets.weather.updated')</td>
<td>{{$metar['observed_time']}} ({{$metar['observed_age']}})</td> <td>{{$metar['observed_time']}} ({{$metar['observed_age']}})</td>
</tr> </tr>
</table> </table>