mirror of
https://github.com/VueFileManager/vuefilemanager.git
synced 2026-04-05 18:23:48 +00:00
add Language component
This commit is contained in:
@@ -26,9 +26,9 @@ class LanguageController extends Controller
|
||||
* @param $language
|
||||
* @return string
|
||||
*/
|
||||
public function get_language_strings($language)
|
||||
public function get_language_strings($locale)
|
||||
{
|
||||
return Language::where('locale', $language)->with('languegeStrings')->first();
|
||||
return Language::where('locale', $locale)->with('languageStrings')->first();
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -54,6 +54,30 @@ class LanguageController extends Controller
|
||||
return $language;
|
||||
}
|
||||
|
||||
/**
|
||||
* Update language
|
||||
*
|
||||
* @param Request $request
|
||||
* @param $id
|
||||
* @return $language
|
||||
*/
|
||||
public function update_language(Request $request, $id)
|
||||
{
|
||||
// Check if is demo
|
||||
if (env('APP_DEMO')) {
|
||||
return Demo::response_204();
|
||||
}
|
||||
|
||||
// Get language
|
||||
$language = Language::findOrFail($id);
|
||||
|
||||
// Update language
|
||||
$language->update([$request->input('name') => $request->input('value')]);
|
||||
|
||||
// Return updated language
|
||||
return $language;
|
||||
}
|
||||
|
||||
/**
|
||||
* Update strings for language
|
||||
*
|
||||
|
||||
@@ -24,7 +24,7 @@ class Language extends Model
|
||||
});
|
||||
}
|
||||
|
||||
public function languegeStrings()
|
||||
public function languageStrings()
|
||||
{
|
||||
return $this->hasMany('App\LanguageString', 'language_id', 'id');
|
||||
}
|
||||
|
||||
614
config/language_strings.php
Normal file
614
config/language_strings.php
Normal file
@@ -0,0 +1,614 @@
|
||||
<?php
|
||||
|
||||
return [
|
||||
"strings" => [
|
||||
"actions.close" => "Close",
|
||||
"actions.create_folder" => "Create folder",
|
||||
"actions.delete" => "Delete item",
|
||||
"actions.download" => "Download item",
|
||||
"actions.info_panel" => "Info panel",
|
||||
"actions.move" => "Move item",
|
||||
"actions.preview" => "Change preview",
|
||||
"actions.print" => "Print item",
|
||||
"actions.share" => "Share item",
|
||||
"actions.sorting_view" => "Sorting and View",
|
||||
"actions.upload" => "Upload file",
|
||||
"activation.stripe.button" => "Set up your Stripe account",
|
||||
"activation.stripe.description" => "To charge your users, please set up your Stripe account credentials.",
|
||||
"activation.stripe.title" => "Your Stripe account is not set",
|
||||
"admin_menu.dashboard" => "Dashboard",
|
||||
"admin_menu.invoices" => "Invoices",
|
||||
"admin_menu.pages" => "Pages",
|
||||
"admin_menu.plans" => "Plans",
|
||||
"admin_menu.settings" => "Settings",
|
||||
"admin_menu.users" => "Users",
|
||||
"admin_page_dashboard.backer_button" => "Help Us Improve",
|
||||
"admin_page_dashboard.license" => "License",
|
||||
"admin_page_dashboard.version" => "Version",
|
||||
"admin_page_dashboard.w_latest_users.title" => "Latest Registrations",
|
||||
"admin_page_dashboard.w_total_premium.link" => "Show All Plans",
|
||||
"admin_page_dashboard.w_total_premium.title" => "Total Premium Users",
|
||||
"admin_page_dashboard.w_total_space.link" => "Show All Users",
|
||||
"admin_page_dashboard.w_total_space.title" => "Total Space Used",
|
||||
"admin_page_dashboard.w_total_users.link" => "Show All Users",
|
||||
"admin_page_dashboard.w_total_users.title" => "Total Users",
|
||||
"admin_page_invoices.empty.description" => "All customers invoices will be showed here.",
|
||||
"admin_page_invoices.empty.title" => "You don’t have any invoices yet",
|
||||
"admin_page_invoices.table.number" => "Invoice Number",
|
||||
"admin_page_invoices.table.payed" => "Payed",
|
||||
"admin_page_invoices.table.plan" => "Plan",
|
||||
"admin_page_invoices.table.total" => "Total",
|
||||
"admin_page_invoices.table.user" => "User",
|
||||
"admin_page_plans.create_plan_button" => "Create Plan",
|
||||
"admin_page_plans.delete_plan_button" => "Delete Plan",
|
||||
"admin_page_plans.disclaimer_delete_plan" => "You can delete this plan, but, pay attention! Your plan will be deleted, but users who are subscribed with this plan, will be still charged unless they cancel subscription.",
|
||||
"admin_page_plans.disclaimer_edit_price" => "Price change for your plan is not available due to Stripe service design. If you wish change your price plan, please, create new plan.",
|
||||
"admin_page_plans.empty.button" => "Create New Plan",
|
||||
"admin_page_plans.empty.description" => "For create new plan, click on button below.",
|
||||
"admin_page_plans.empty.title" => "You don’t have any plan yet",
|
||||
"admin_page_plans.form.description" => "Description (optional)",
|
||||
"admin_page_plans.form.description_plac" => "Plan description",
|
||||
"admin_page_plans.form.name" => "Name",
|
||||
"admin_page_plans.form.name_delete_plac" => "Type plan name",
|
||||
"admin_page_plans.form.name_plac" => "Plan name",
|
||||
"admin_page_plans.form.price" => "Price",
|
||||
"admin_page_plans.form.price_plac" => "Plan price",
|
||||
"admin_page_plans.form.status" => "Status",
|
||||
"admin_page_plans.form.status_help" => "Status of your plan availability on website.",
|
||||
"admin_page_plans.form.storage" => "Storage Capacity in GB",
|
||||
"admin_page_plans.form.storage_helper" => "You have to type only number e.g. value '5' means, user will have 5GB of storage capacity.",
|
||||
"admin_page_plans.form.storage_plac" => "Storage capacity",
|
||||
"admin_page_plans.form.title_delete" => "Delete Plan",
|
||||
"admin_page_plans.form.title_details" => "Plan Details",
|
||||
"admin_page_plans.form.title_pricing" => "Plan Pricing",
|
||||
"admin_page_plans.subscribers.empty" => "There is no any subscriber yet.",
|
||||
"admin_page_plans.table.name" => "Plan Name",
|
||||
"admin_page_plans.table.price" => "Price",
|
||||
"admin_page_plans.table.status" => "Status",
|
||||
"admin_page_plans.table.storage_capacity" => "Storage Capacity",
|
||||
"admin_page_plans.table.subscribers" => "Subscribers",
|
||||
"admin_page_plans.tabs.delete" => "Delete Plan",
|
||||
"admin_page_plans.tabs.settings" => "Settings",
|
||||
"admin_page_plans.tabs.subscribers" => "Subscribers",
|
||||
"admin_page_user.change_capacity" => "Change Capacity",
|
||||
"admin_page_user.create_user.avatar" => "Avatar",
|
||||
"admin_page_user.create_user.group_details" => "Account Details",
|
||||
"admin_page_user.create_user.group_settings" => "Account Settings",
|
||||
"admin_page_user.create_user.label_conf_pass" => "Confirm password",
|
||||
"admin_page_user.create_user.label_email" => "Type E-mail",
|
||||
"admin_page_user.create_user.label_name" => "Type full name",
|
||||
"admin_page_user.create_user.submit" => "Create User",
|
||||
"admin_page_user.delete_user" => "Delete User",
|
||||
"admin_page_user.invoices.empty" => "User don't have any invoices yet.",
|
||||
"admin_page_user.label_change_capacity" => "Type storage capacity in GB",
|
||||
"admin_page_user.label_delete_user" => "Type with Case Sensitive user name ‘{user}‘",
|
||||
"admin_page_user.label_person_info" => "Personal Information",
|
||||
"admin_page_user.placeholder_delete_user" => "Type here",
|
||||
"admin_page_user.save_role" => "Save Role",
|
||||
"admin_page_user.select_role" => "Select user role",
|
||||
"admin_page_user.send_password_link" => "Send Password Reset Link",
|
||||
"admin_page_user.subscription.empty" => "User don't have any subscription yet.",
|
||||
"admin_page_user.subscription.interval_mo" => "Monthly",
|
||||
"admin_page_user.table.action" => "Action",
|
||||
"admin_page_user.table.created_at" => "Registered",
|
||||
"admin_page_user.table.name" => "User",
|
||||
"admin_page_user.table.plan" => "Subscription Plan",
|
||||
"admin_page_user.table.role" => "Role",
|
||||
"admin_page_user.table.storage_capacity" => "Storage Capacity",
|
||||
"admin_page_user.table.storage_used" => "Storage Used",
|
||||
"admin_page_user.tabs.delete" => "Delete User",
|
||||
"admin_page_user.tabs.detail" => "Detail",
|
||||
"admin_page_user.tabs.invoices" => "Invoices",
|
||||
"admin_page_user.tabs.password" => "Password",
|
||||
"admin_page_user.tabs.storage" => "Storage Usage",
|
||||
"admin_page_user.tabs.subscription" => "Subscription",
|
||||
"admin_pages.form.content" => "Content",
|
||||
"admin_pages.form.content_plac" => "Type your content here...",
|
||||
"admin_pages.form.slug" => "Slug",
|
||||
"admin_pages.form.title" => "Title",
|
||||
"admin_pages.form.title_plac" => "Title name",
|
||||
"admin_pages.form.visibility" => "Visibility",
|
||||
"admin_pages.form.visibility_help" => "Status of your page visibility on website.",
|
||||
"admin_pages.table.page" => "Page",
|
||||
"admin_pages.table.slug" => "Slug",
|
||||
"admin_pages.table.status" => "Status",
|
||||
"admin_settings.appearance.description" => "App Description",
|
||||
"admin_settings.appearance.description_plac" => "Type your app description",
|
||||
"admin_settings.appearance.favicon" => "App Favicon (optional)",
|
||||
"admin_settings.appearance.logo" => "App Logo (optional)",
|
||||
"admin_settings.appearance.logo_horizontal" => "App Logo Horizontal (optional)",
|
||||
"admin_settings.appearance.section_appearance" => "Appearance",
|
||||
"admin_settings.appearance.section_general" => "General Settings",
|
||||
"admin_settings.appearance.title" => "App Title",
|
||||
"admin_settings.appearance.title_plac" => "Type your app title",
|
||||
"admin_settings.billings.address" => "Billing Address",
|
||||
"admin_settings.billings.address_plac" => "Type your billing address",
|
||||
"admin_settings.billings.city" => "Billing City",
|
||||
"admin_settings.billings.city_plac" => "Type your billing city",
|
||||
"admin_settings.billings.company_name" => "Company Name",
|
||||
"admin_settings.billings.company_name_plac" => "Type your company name",
|
||||
"admin_settings.billings.country" => "Billing Country",
|
||||
"admin_settings.billings.country_plac" => "Select your billing country",
|
||||
"admin_settings.billings.phone_number" => "Billing Phone Number (optional)",
|
||||
"admin_settings.billings.phone_number_plac" => "Type your billing phone number",
|
||||
"admin_settings.billings.postal_code" => "Billing Postal Code",
|
||||
"admin_settings.billings.postal_code_plac" => "Type your billing postal code",
|
||||
"admin_settings.billings.section_billing" => "Billing Information",
|
||||
"admin_settings.billings.section_company" => "Company Information",
|
||||
"admin_settings.billings.state" => "Billing State",
|
||||
"admin_settings.billings.state_plac" => "Type your billing state",
|
||||
"admin_settings.billings.vat" => "VAT Number",
|
||||
"admin_settings.billings.vat_plac" => "Type your VAT number",
|
||||
"admin_settings.email.driver" => "Mail Driver",
|
||||
"admin_settings.email.driver_plac" => "Type your mail driver",
|
||||
"admin_settings.email.email_disclaimer" => "This form is not fully pre-filled for security reasons. Your email settings is available in your <b>.env</b> file. For apply new Email settings, please confirm your options by button at the end of formular.",
|
||||
"admin_settings.email.encryption" => "Mail Encryption",
|
||||
"admin_settings.email.encryption_plac" => "Select your mail encryption",
|
||||
"admin_settings.email.host" => "Mail Host",
|
||||
"admin_settings.email.host_plac" => "Type your mail host",
|
||||
"admin_settings.email.password" => "Mail Password",
|
||||
"admin_settings.email.password_plac" => "Type your mail password",
|
||||
"admin_settings.email.port" => "Mail Port",
|
||||
"admin_settings.email.port_plac" => "Type your mail port",
|
||||
"admin_settings.email.save_button" => "Save Email Settings",
|
||||
"admin_settings.email.section_email" => "Email Setup",
|
||||
"admin_settings.email.username" => "Mail Username",
|
||||
"admin_settings.email.username_plac" => "Type your mail username",
|
||||
"admin_settings.others.allow_registration" => "Allow User Registration",
|
||||
"admin_settings.others.allow_registration_help" => "You can disable public registration for new users. You will still able to <br/>create new users in administration panel.",
|
||||
"admin_settings.others.cache_clear" => "Clear Cache",
|
||||
"admin_settings.others.cache_disclaimer" => "Did you change anything in your .env file or change your Stripe credentials? Then clear your cache.",
|
||||
"admin_settings.others.contact_email" => "Contact Email",
|
||||
"admin_settings.others.contact_email_plac" => "Type your contact email",
|
||||
"admin_settings.others.default_storage" => "Default Storage Space for User Accounts",
|
||||
"admin_settings.others.default_storage_plac" => "Set default storage space in GB",
|
||||
"admin_settings.others.google_analytics" => "Google Analytics Code (optional)",
|
||||
"admin_settings.others.google_analytics_plac" => "Paste your Google Analytics Code",
|
||||
"admin_settings.others.mimetypes_blacklist" => "Mimetypes Blacklist",
|
||||
"admin_settings.others.mimetypes_blacklist_help" => "If you want to prevent upload some type of files, just add them to blacklist like this => x-php,mp3,jpeg <br/> Use a comma between each mimetype. Don't use a dot before mimetypes.",
|
||||
"admin_settings.others.mimetypes_blacklist_plac" => "Add mimetypes to Blacklist",
|
||||
"admin_settings.others.section_cache" => "Application Cache",
|
||||
"admin_settings.others.section_others" => "Others Settings",
|
||||
"admin_settings.others.section_user" => "Users and Storage",
|
||||
"admin_settings.others.storage_limit" => "Storage Limitation",
|
||||
"admin_settings.others.storage_limit_help" => "If this value is off, all users will have infinity storage capacity and you won't be <br/>able to charge your users for storage plan.",
|
||||
"admin_settings.others.upload_limit" => "Upload Limit",
|
||||
"admin_settings.others.upload_limit_help" => "If you want to set max file size limit on single upload, add size of your limit in MB. E.g. 100 means 100 MB and 2 000 means 2 000 MB limit.",
|
||||
"admin_settings.others.upload_limit_plac" => "Type your upload limit in MB",
|
||||
"admin_settings.payments.allow_payments" => "Allow Subscription Payments",
|
||||
"admin_settings.payments.button_submit" => "Test and Save Stripe",
|
||||
"admin_settings.payments.button_testing" => "Testing Stripe Connection",
|
||||
"admin_settings.payments.credentials_disclaimer" => "Your Stripe credentials is not showed because these values are secret and must not be revealed by stranger. You can change your Stripe credentials in your <b>.env</b> file.",
|
||||
"admin_settings.payments.section_payments" => "Stripe Payments",
|
||||
"admin_settings.payments.stripe_create_acc" => "If you don’t have stripe account, please <a href=\"https =>//dashboard.stripe.com/register\" target=\"_blank\">register here</a> and get your Publishable Key, Secret Key and create your webhook.",
|
||||
"admin_settings.payments.stripe_create_webhook" => "You have to create webhook endpoint in your Stripe Dashboard. You can find it in <b>Dashboard -> Developers -> Webhooks -> Add Endpoint</b>. In Endpoint URL please copy and paste url bellow. Make sure, this url is your public domain, not localhost. In events section, please click on <b>receive all events</b>. That's all.",
|
||||
"admin_settings.payments.stripe_currency" => "Stripe Currency",
|
||||
"admin_settings.payments.stripe_currency_plac" => "Select your Stripe currency",
|
||||
"admin_settings.payments.stripe_pub_key" => "Publishable Key",
|
||||
"admin_settings.payments.stripe_pub_key_plac" => "Paste your publishable key",
|
||||
"admin_settings.payments.stripe_sec_key" => "Secret Key",
|
||||
"admin_settings.payments.stripe_sec_key_plac" => "Paste your secret key",
|
||||
"admin_settings.payments.stripe_setup" => "Stripe Setup",
|
||||
"admin_settings.payments.stripe_webhook_key_plac" => "Paste your stripe webhook secret",
|
||||
"admin_settings.payments.webhook_url" => "Stripe webhook URL",
|
||||
"admin_settings.tabs.appearance" => "Appearance",
|
||||
"admin_settings.tabs.billings" => "Billings",
|
||||
"admin_settings.tabs.email" => "Email",
|
||||
"admin_settings.tabs.others" => "Application",
|
||||
"admin_settings.tabs.payments" => "Payments",
|
||||
"alerts.error_confirm" => "That’s horrible!",
|
||||
"alerts.leave_to_sign_in" => "Do you really want to leave?",
|
||||
"alerts.success_confirm" => "Awesome!",
|
||||
"context_menu.add_folder" => "Add Folder",
|
||||
"context_menu.add_to_favourites" => "Add to Favourites",
|
||||
"context_menu.create_folder" => "Create Folder",
|
||||
"context_menu.delete" => "Delete",
|
||||
"context_menu.detail" => "Detail",
|
||||
"context_menu.download" => "Download",
|
||||
"context_menu.empty_trash" => "Empty Trash",
|
||||
"context_menu.log_out" => "Log Out",
|
||||
"context_menu.move" => "Move",
|
||||
"context_menu.no_options" => "No Options Available",
|
||||
"context_menu.profile_settings" => "Profile Settings",
|
||||
"context_menu.remove_from_favourites" => "Remove Favourite",
|
||||
"context_menu.rename" => "Rename",
|
||||
"context_menu.restore" => "Restore",
|
||||
"context_menu.select" => "Select",
|
||||
"context_menu.share" => "Share",
|
||||
"context_menu.share_cancel" => "Cancel Sharing",
|
||||
"context_menu.share_edit" => "Edit Sharing",
|
||||
"context_menu.upload" => "Upload",
|
||||
"context_menu.zip_folder" => "Zip and Download",
|
||||
"cookie_disclaimer.button" => "cookies policy",
|
||||
"cookie_disclaimer.description" => "By browsing this website you are agreeing to our {0}.",
|
||||
"datatable.paginate_info" => "Showing 1 - {visible} from {total} records",
|
||||
"empty_page.call_to_action" => "Upload Files",
|
||||
"empty_page.description" => "Upload some files here easily via upload button.",
|
||||
"empty_page.title" => "Upload Your First File",
|
||||
"errors.capacity_digit" => "The storage capacity must be lower than 10 digit number.",
|
||||
"file_detail.author" => "Author",
|
||||
"file_detail.author_participant" => "Public Participant",
|
||||
"file_detail.created_at" => "Created at",
|
||||
"file_detail.items" => "Items",
|
||||
"file_detail.selected_multiple" => "Selected Multiple Items",
|
||||
"file_detail.shared" => "Shared",
|
||||
"file_detail.size" => "Size",
|
||||
"file_detail.where" => "Where",
|
||||
"file_detail_meta.aperature" => "F Number",
|
||||
"file_detail_meta.aperture_value" => "Aperture Value",
|
||||
"file_detail_meta.author" => "Author",
|
||||
"file_detail_meta.camera_lens" => "Camera Lens",
|
||||
"file_detail_meta.color_space" => "Color Space",
|
||||
"file_detail_meta.dimension" => "Dimensions",
|
||||
"file_detail_meta.exposure" => "Exposure Time",
|
||||
"file_detail_meta.focal" => "Focal Length",
|
||||
"file_detail_meta.iso" => "ISO",
|
||||
"file_detail_meta.latitude" => "Latitude",
|
||||
"file_detail_meta.longitude" => "Longitude",
|
||||
"file_detail_meta.make" => "Camera",
|
||||
"file_detail_meta.meta_data" => "Metadata",
|
||||
"file_detail_meta.model" => "Model",
|
||||
"file_detail_meta.resolution" => "Resolution",
|
||||
"file_detail_meta.time_data" => "Content Created",
|
||||
"folder.empty" => "Empty",
|
||||
"folder.item_counts" => "{count} Item | {count} Items",
|
||||
"global.active" => "Active",
|
||||
"global.admin" => "Admin",
|
||||
"global.cancel" => "Cancel",
|
||||
"global.canceled" => "Canceled",
|
||||
"global.confirm_action" => "Yes, I'm sure",
|
||||
"global.default" => "Default",
|
||||
"global.free" => "Free",
|
||||
"global.get_it" => "Get It",
|
||||
"global.incomplete" => "Incomplete",
|
||||
"global.menu" => "Menu",
|
||||
"global.monthly_ac" => "Mo.",
|
||||
"global.or" => "or",
|
||||
"global.premium" => "Premium",
|
||||
"global.saas" => "Services",
|
||||
"global.subscription" => "Subscription",
|
||||
"global.total" => "Total",
|
||||
"global.upgrade_plan" => "Upgrade Plan",
|
||||
"incomplete_payment.description" => "Your latest payment is incomplete. {0}",
|
||||
"incomplete_payment.href" => "Please confirm your payment.",
|
||||
"input_image.supported" => "Supported formats are .png, .jpg, .jpeg.",
|
||||
"input_image.title" => "Upload Image",
|
||||
"inputs.placeholder_search_files" => "Search files or folders...",
|
||||
"item_thumbnail.deleted_at" => "Deleted {time}",
|
||||
"item_thumbnail.original_location" => "Original Location",
|
||||
"locations.home" => "Files",
|
||||
"locations.logout" => "Log Out",
|
||||
"locations.profile" => "Profile",
|
||||
"locations.settings" => "Settings",
|
||||
"locations.shared" => "Shared",
|
||||
"locations.trash" => "Trash",
|
||||
"menu.admin" => "Administration",
|
||||
"menu.files" => "Files",
|
||||
"menu.invoices" => "Invoices",
|
||||
"menu.latest" => "Recent Uploads",
|
||||
"menu.logout" => "Log Out",
|
||||
"menu.password" => "Password",
|
||||
"menu.payment_cards" => "Payment Cards",
|
||||
"menu.profile" => "Profile Settings",
|
||||
"menu.settings" => "Settings",
|
||||
"menu.shared" => "Shared Files",
|
||||
"menu.storage" => "Storage",
|
||||
"menu.subscription" => "Subscription",
|
||||
"menu.trash" => "Trash",
|
||||
"messages.nothing_from_participants" => "You don't have any uploads from other users.",
|
||||
"messages.nothing_to_preview" => "There is nothing to preview.",
|
||||
"messages.nothing_was_found" => "Nothing was found.",
|
||||
"mobile_selecting.deselect_all" => "Deselect All",
|
||||
"mobile_selecting.done" => "Done",
|
||||
"mobile_selecting.select_all" => "Select All",
|
||||
"notice.stripe_activation" => "Your Stripe account is not set. To charging your users please {0}.",
|
||||
"notice.stripe_activation_button" => "set up your Stripe account",
|
||||
"page_contact_us.description" => "Do you have any questions? Get in touch with us.",
|
||||
"page_contact_us.error_message" => "Something went wrong, please try it again.",
|
||||
"page_contact_us.form.email" => "Email",
|
||||
"page_contact_us.form.email_plac" => "Type your email",
|
||||
"page_contact_us.form.message" => "Message",
|
||||
"page_contact_us.form.message_plac" => "Type your message here...",
|
||||
"page_contact_us.form.submit_button" => "Send Message",
|
||||
"page_contact_us.success_message" => "Your message was send successfully.",
|
||||
"page_contact_us.title" => "Contact Us",
|
||||
"page_create_password.button_update" => "Update Password",
|
||||
"page_create_password.label_confirm_pass" => "Confirm password",
|
||||
"page_create_password.label_email" => "Email =>",
|
||||
"page_create_password.label_new_pass" => "New password",
|
||||
"page_create_password.subtitle" => "Create your new password here =>",
|
||||
"page_create_password.title" => "Only One Step to Log In",
|
||||
"page_forgotten_password.button_get_link" => "Get Link",
|
||||
"page_forgotten_password.pass_reseted_signin" => "Sign In",
|
||||
"page_forgotten_password.pass_reseted_subtitle" => "Your password was reset successfully.",
|
||||
"page_forgotten_password.pass_reseted_title" => "Awesome!",
|
||||
"page_forgotten_password.pass_sennded_subtitle" => "We have e-mailed your password reset link!",
|
||||
"page_forgotten_password.pass_sennded_title" => "Thank you!",
|
||||
"page_forgotten_password.password_remember_button" => "Log In.",
|
||||
"page_forgotten_password.password_remember_text" => "Remember your password?",
|
||||
"page_forgotten_password.subtitle" => "Get reset link with your email =>",
|
||||
"page_forgotten_password.title" => "Forgotten Password?",
|
||||
"page_index.get_started_button" => "Sign Up Now",
|
||||
"page_index.menu.contact_us" => "Contact Us",
|
||||
"page_index.menu.log_in" => "Log In",
|
||||
"page_index.menu.pricing" => "Pricing",
|
||||
"page_index.menu.sign_in" => "Sign Up",
|
||||
"page_index.sign_feature_1" => "No credit card required",
|
||||
"page_index.sign_feature_2" => "{defaultSpace} Free storage space",
|
||||
"page_index.sign_up_button" => "Sign Up Now",
|
||||
"page_login.button_next" => "Next Step",
|
||||
"page_login.placeholder_email" => "Type your E-mail",
|
||||
"page_login.registration_button" => "Register account.",
|
||||
"page_login.registration_text" => "Don’t have an account?",
|
||||
"page_login.subtitle" => "Please type your email to log in =>",
|
||||
"page_login.title" => "Welcome Back!",
|
||||
"page_pricing_tables.description" => "Choose plan witch perfect fit your needs. All plans is billed monthly automatically via your credit card.",
|
||||
"page_pricing_tables.storage_capacity" => "Of Storage Capacity",
|
||||
"page_pricing_tables.title" => "Choose Your Plan",
|
||||
"page_pricing_tables.vat_excluded" => "Price displayed excludes VAT.",
|
||||
"page_registration.agreement" => "By clicking on 'Create Account' button I agree to the {0} and {1}.",
|
||||
"page_registration.button_create_account" => "Create Account",
|
||||
"page_registration.have_an_account" => "Do you have an account?",
|
||||
"page_registration.label_confirm_pass" => "Confirm password =>",
|
||||
"page_registration.label_email" => "Email =>",
|
||||
"page_registration.label_name" => "Full Name =>",
|
||||
"page_registration.label_pass" => "Create password =>",
|
||||
"page_registration.placeholder_confirm_pass" => "Confirm your new password",
|
||||
"page_registration.placeholder_email" => "Type your E-mail",
|
||||
"page_registration.placeholder_name" => "Type your full name",
|
||||
"page_registration.placeholder_pass" => "New password",
|
||||
"page_registration.subtitle" => "Please fill registration to create account =>",
|
||||
"page_registration.title" => "Create New Account",
|
||||
"page_shared.download_file" => "Download File",
|
||||
"page_shared.placeholder_pass" => "Type password",
|
||||
"page_shared.submit" => "Submit",
|
||||
"page_shared.subtitle" => "Please type the password to get shared content =>",
|
||||
"page_shared.title" => "Your Share Link is Protected",
|
||||
"page_shared_404.subtitle" => "The content you are finding was probably deleted.",
|
||||
"page_shared_404.title" => "Not Found =>(",
|
||||
"page_sign_in.button_log_in" => "Log In",
|
||||
"page_sign_in.password_reset_button" => "Reset Password.",
|
||||
"page_sign_in.password_reset_text" => "Forgotten your password?",
|
||||
"page_sign_in.placeholder_password" => "Type your password",
|
||||
"page_sign_in.subtitle" => "Confirm you by your password =>",
|
||||
"page_sign_in.title" => "Are You {name}?",
|
||||
"page_upgrade_account.change_payment.change_payment" => "change your default payment method",
|
||||
"page_upgrade_account.change_payment.pay_by_new_card" => "pay by new credit card",
|
||||
"page_upgrade_account.change_payment.you_can" => "Also you can",
|
||||
"page_upgrade_account.desription" => "Choose plan witch perfect fit your needs. All plans is billed monthly automatically via your credit card.",
|
||||
"page_upgrade_account.errors.pay_by_another_card" => "Please pay by another payment card",
|
||||
"page_upgrade_account.section_billing" => "Billing Information",
|
||||
"page_upgrade_account.section_card" => "Payment Card",
|
||||
"page_upgrade_account.section_summary" => "Order Summary",
|
||||
"page_upgrade_account.summary.period" => "Billed monthly",
|
||||
"page_upgrade_account.summary.submit_button" => "Pay with credit card",
|
||||
"page_upgrade_account.summary.submit_disclaimer" => "By submit form, you agree to save the payment method and billing information in your {app} account.",
|
||||
"page_upgrade_account.summary.total_with_vat" => "Total with VAT",
|
||||
"page_upgrade_account.summary.vat" => "VAT",
|
||||
"page_upgrade_account.title" => "Choose Payment Method",
|
||||
"popup_create_folder.folder_default_name" => "New Folder",
|
||||
"popup_create_folder.label" => "Type Name",
|
||||
"popup_create_folder.placeholder" => "Type your name",
|
||||
"popup_create_folder.title" => "Create Folder",
|
||||
"popup_delete_card.message" => "This event is irreversible and your payment card will be delete forever",
|
||||
"popup_delete_card.title" => "Are you sure?",
|
||||
"popup_deleted_plan.message" => "Your plan was successfully deleted.",
|
||||
"popup_deleted_plan.title" => "Plan was deleted",
|
||||
"popup_deleted_user.message" => "Your user was deleted with all user data content.",
|
||||
"popup_deleted_user.title" => "User was deleted",
|
||||
"popup_deleted_user_aborted.message" => "You can't delete this account while user have active subscription.",
|
||||
"popup_deleted_user_aborted.title" => "User wasn't deleted",
|
||||
"popup_error.message" => "Something went wrong and we can't continue. Please contact us.",
|
||||
"popup_error.title" => "Whooops, something went wrong!",
|
||||
"popup_exceed_limit.message" => "Please contact your administrator to change your limit.",
|
||||
"popup_exceed_limit.title" => "Whooops, you exceed storage limit =>(",
|
||||
"popup_mimetypes_blacklist.message" => "File of this type ({mimetype}) is not allowed to upload.",
|
||||
"popup_mimetypes_blacklist.title" => "You are trying to upload unsupported file type",
|
||||
"popup_move_item.cancel" => "Cancel",
|
||||
"popup_move_item.submit" => "Move Item",
|
||||
"popup_move_item.title" => "Move Item",
|
||||
"popup_pass_changed.message" => "So now, you have awesome new password.",
|
||||
"popup_pass_changed.title" => "Your password was changed!",
|
||||
"popup_passport_error.message" => "Probably you didn't generated Passport Grant client or you didn't set up passport credentials in your .env file. Please follow install instructions.",
|
||||
"popup_passport_error.title" => "Invalid Passport Grand Client",
|
||||
"popup_paylod_error.message" => "Sorry, your file is too large and can't be uploaded",
|
||||
"popup_paylod_error.title" => "File is too large",
|
||||
"popup_rename.color_pick_label" => "Pick Your Color =>",
|
||||
"popup_rename.emoji_list_not_found" => "Not Found",
|
||||
"popup_rename.label" => "Edit Name",
|
||||
"popup_rename.placeholder" => "Type your title",
|
||||
"popup_rename.search_emoji_input_placeholder" => "Search your emoji...",
|
||||
"popup_rename.set_emoji_input_placeholder" => "Emojis List...",
|
||||
"popup_rename.tab_color_title" => "Folder Color",
|
||||
"popup_rename.tab_emoji_title" => "Emoji as an Icon",
|
||||
"popup_rename.title" => "Rename Your {item}",
|
||||
"popup_set_card.message" => "Your card will be set as default and will be always charged for the next billings.",
|
||||
"popup_set_card.title" => "Set as default card?",
|
||||
"popup_share_create.title" => "Share Your {item}",
|
||||
"popup_share_edit.change_pass" => "Change Password",
|
||||
"popup_share_edit.confirm" => "Confirm",
|
||||
"popup_share_edit.go_back" => "Go Back",
|
||||
"popup_share_edit.save" => "Save Changes",
|
||||
"popup_share_edit.send_to_recipients" => "Send to Recipients",
|
||||
"popup_share_edit.stop" => "Cancel Sharing",
|
||||
"popup_share_edit.title" => "Update sharing options",
|
||||
"popup_signup_error.message" => "Please check your database connection if everything works correctly.",
|
||||
"popup_signup_error.title" => "Server Error",
|
||||
"popup_subscription_cancel.button" => "I'm done",
|
||||
"popup_subscription_cancel.message" => "You'll continue to have access to the features you've paid for until the end of your billing cycle.",
|
||||
"popup_subscription_cancel.title" => "Subscription Was Canceled",
|
||||
"popup_subscription_resumed.button" => "That's awesome!",
|
||||
"popup_subscription_resumed.message" => "Your subscription was re-activated, and they will be billed on the original billing cycle.",
|
||||
"popup_subscription_resumed.title" => "Subscription Was Resumed",
|
||||
"popup_upload_limit.message" => "Size of your uploaded file exceed the upload limit ({uploadLimit}).",
|
||||
"popup_upload_limit.title" => "You exceed upload limit on single file",
|
||||
"popup_zipping.message" => "Please wait until your files start downloading.",
|
||||
"popup_zipping.title" => "Zipping Your Files...",
|
||||
"preview_sorting.grid_view" => "Grid View",
|
||||
"preview_sorting.list_view" => "List View",
|
||||
"preview_sorting.preview_sorting_button" => "View",
|
||||
"preview_sorting.sort_alphabet" => "Sort By Aplhabet",
|
||||
"preview_sorting.sort_date" => "Sort By Date",
|
||||
"profile.change_pass" => "Change Password",
|
||||
"profile.profile_info" => "Profile Information",
|
||||
"profile.store_pass" => "Store New Password",
|
||||
"pronouns.of" => "of",
|
||||
"roles.admin" => "Admin",
|
||||
"roles.user" => "User",
|
||||
"routes.create_new_password" => "create-new-password",
|
||||
"routes_title.appearance" => "Appearance",
|
||||
"routes_title.billings" => "Billings",
|
||||
"routes_title.dashboard" => "Dashboard",
|
||||
"routes_title.email" => "Email",
|
||||
"routes_title.invoices" => "Invoices",
|
||||
"routes_title.others" => "Others",
|
||||
"routes_title.page_edit" => "Edit Page",
|
||||
"routes_title.pages" => "Pages",
|
||||
"routes_title.payment_methods" => "Payment Methods",
|
||||
"routes_title.payments" => "Payments",
|
||||
"routes_title.plan" => "Plan",
|
||||
"routes_title.plan_create" => "Create Plan",
|
||||
"routes_title.plan_delete" => "Plan Delete",
|
||||
"routes_title.plan_settings" => "Plan Settings",
|
||||
"routes_title.pricing_plans" => "Pricing Plans",
|
||||
"routes_title.profile" => "My Profile",
|
||||
"routes_title.profile_settings" => "Profile Settings",
|
||||
"routes_title.settings" => "Settings",
|
||||
"routes_title.settings_mobile" => "Settings",
|
||||
"routes_title.settings_password" => "Change Password",
|
||||
"routes_title.settings_storage" => "Storage",
|
||||
"routes_title.subscribers" => "Subscribers",
|
||||
"routes_title.subscription" => "Subscription",
|
||||
"routes_title.upgrade_billing" => "Billing",
|
||||
"routes_title.upgrade_plan" => "Upgrade Plan",
|
||||
"routes_title.user_create" => "Create User",
|
||||
"routes_title.users_delete" => "Delete User",
|
||||
"routes_title.users_detail" => "Detail",
|
||||
"routes_title.users_list" => "User Management",
|
||||
"routes_title.users_password" => "Password",
|
||||
"routes_title.users_storage_usage" => "Storage Usage",
|
||||
"routes_title.users_user" => "User",
|
||||
"rows.card.expiration" => "Expiration Date",
|
||||
"rows.card.number" => "Card Number",
|
||||
"rows.card.status" => "Status",
|
||||
"rows.invoice.number" => "Invoice Number",
|
||||
"rows.invoice.payed" => "Payed",
|
||||
"rows.invoice.plan" => "Plan",
|
||||
"rows.invoice.total" => "Total",
|
||||
"shared.can_download" => "Can download file",
|
||||
"shared.editor" => "Can edit and upload files",
|
||||
"shared.empty_shared" => "You haven't shared anything yet.",
|
||||
"shared.visitor" => "Can only view and download",
|
||||
"shared_form.button_close_options" => "Close Options",
|
||||
"shared_form.button_done" => "Awesome, I’m done!",
|
||||
"shared_form.button_folder_icon_open" => "Customize Folder Icon",
|
||||
"shared_form.button_generate" => "Generate Link",
|
||||
"shared_form.button_more_options" => "Set Expiration",
|
||||
"shared_form.email_placeholder" => "Type your emails",
|
||||
"shared_form.email_successfully_send_message" => "Your item was <b>successfully sended</b> to recipients emails.",
|
||||
"shared_form.expiration_day" => "{value}d.",
|
||||
"shared_form.expiration_hour" => "{value}h.",
|
||||
"shared_form.label_expiration" => "Link Expiration",
|
||||
"shared_form.label_password_protection" => "Password Protected",
|
||||
"shared_form.label_permission" => "Permission",
|
||||
"shared_form.label_send_to_recipients" => "Send to Recipients",
|
||||
"shared_form.label_share_vie_email" => "Get your link",
|
||||
"shared_form.label_shared_url" => "Share url",
|
||||
"shared_form.placeholder_permission" => "Select your permission",
|
||||
"shared_form.recipients_label" => "Recipients",
|
||||
"shared_form.share_by_email" => "Share by Email",
|
||||
"shared_form.share_by_link" => "Share by Link",
|
||||
"sidebar.favourites" => "Favourites",
|
||||
"sidebar.favourites_empty" => "Drag here your favourite folder.",
|
||||
"sidebar.folders_empty" => "Create some new folder.",
|
||||
"sidebar.home" => "Files",
|
||||
"sidebar.latest" => "Recent Uploads",
|
||||
"sidebar.locations_title" => "Base",
|
||||
"sidebar.my_shared" => "My Shared Items",
|
||||
"sidebar.navigator_title" => "Navigator",
|
||||
"sidebar.participant_uploads" => "Participant Uploads",
|
||||
"sidebar.tools_title" => "Tools",
|
||||
"storage.audios" => "Audios",
|
||||
"storage.documents" => "Documents",
|
||||
"storage.images" => "Images",
|
||||
"storage.others" => "Others",
|
||||
"storage.sec_capacity" => "Your disk Usage",
|
||||
"storage.sec_details" => "Capacity Usage Details",
|
||||
"storage.total_capacity" => "Your storage capacity is {capacity}",
|
||||
"storage.total_used" => "Total used {used}",
|
||||
"storage.videos" => "Videos",
|
||||
"toaster.account_upgraded" => "Your account was successfully upgraded.",
|
||||
"toaster.card_deleted" => "Your card was successfully deleted.",
|
||||
"toaster.card_new_add" => "Your card was successfully added",
|
||||
"toaster.card_set" => "Your card was successfully set as default.",
|
||||
"toaster.changed_capacity" => "You successfully changed user's storage size!",
|
||||
"toaster.changed_user" => "You successfully changed user's role!",
|
||||
"toaster.created_user" => "User was created successfully!",
|
||||
"toaster.email_set" => "Your email settings was updated successfully",
|
||||
"toaster.plan_created" => "Your plan was successfully created!",
|
||||
"toaster.sended_password" => "You successfully send user email for reset password!",
|
||||
"toaster.stripe_set" => "Your Stripe account was successfully set!",
|
||||
"types.file" => "File",
|
||||
"types.folder" => "Folder",
|
||||
"upgrade_banner.button" => "Upgrade",
|
||||
"upgrade_banner.description" => "You nearly reach your storage capacity.",
|
||||
"upgrade_banner.title" => "You reach your storage capacity. Please upgrade.",
|
||||
"uploading.cancel" => "Cancel Uploading",
|
||||
"uploading.processing_file" => "Processing File...",
|
||||
"uploading.progress" => "Uploading File {progress}% - {current}/{total}",
|
||||
"uploading.progress_single_upload" => "Uploading File {progress}%",
|
||||
"user_add_card.default_description" => "Your card will be charged for billing plans as first.",
|
||||
"user_add_card.default_title" => "Set as Default Payment Method",
|
||||
"user_box_delete.description" => "You can delete your user, but, pay attention! This event is irreversible and all user data include user files will be deleted.",
|
||||
"user_box_delete.title" => "Delete User",
|
||||
"user_box_password.description" => "You can send password reset email via button bellow. User will be redirected to page where he can update password for his account.",
|
||||
"user_box_password.title" => "Change User Password",
|
||||
"user_box_role.description" => "You can change role for current user. Admin role can edit or create new users, change storage capacity and any other application settings.",
|
||||
"user_box_role.title" => "Change User Role",
|
||||
"user_box_storage.description" => "Change user storage capacity by input bellow. You have to type only number e.g. value '5' means, user will have 5GB of storage capacity.",
|
||||
"user_box_storage.title" => "Change User Storage Capacity",
|
||||
"user_invoices.empty" => "You don't have any invoices yet.",
|
||||
"user_invoices.title" => "Invoices",
|
||||
"user_password.title" => "Change Your Password",
|
||||
"user_payments.add_card" => "Add Payment Card",
|
||||
"user_payments.card_field_title" => "Credit Card",
|
||||
"user_payments.delete_card" => "Delete card",
|
||||
"user_payments.empty" => "You don't have any payment cards yet.",
|
||||
"user_payments.field_loading" => "Loading card field...",
|
||||
"user_payments.set_as_default" => "Set as default card",
|
||||
"user_payments.store_card" => "Store Payment Card",
|
||||
"user_payments.title" => "Payment Methods",
|
||||
"user_settings.address" => "Address",
|
||||
"user_settings.address_plac" => "Type your billing address",
|
||||
"user_settings.city" => "City",
|
||||
"user_settings.city_plac" => "Type your billing city",
|
||||
"user_settings.country" => "Country",
|
||||
"user_settings.country_plac" => "Select your billing country",
|
||||
"user_settings.name" => "Name",
|
||||
"user_settings.name_plac" => "Type your billing name",
|
||||
"user_settings.phone_number" => "Phone Number",
|
||||
"user_settings.phone_number_plac" => "Type your billing phone number",
|
||||
"user_settings.postal_code" => "Postal Code",
|
||||
"user_settings.postal_code_plac" => "Type your billing postal code",
|
||||
"user_settings.state" => "State",
|
||||
"user_settings.state_plac" => "Type your billing state",
|
||||
"user_settings.timezone" => "Timezone",
|
||||
"user_settings.timezone_plac" => "Select your timezone",
|
||||
"user_settings.title_account" => "Account Information",
|
||||
"user_settings.title_billing" => "Billing Information",
|
||||
"user_subscription.billed" => "Billed",
|
||||
"user_subscription.cancel_plan" => "Cancel Plan",
|
||||
"user_subscription.canceled_at" => "Canceled At",
|
||||
"user_subscription.created_at" => "Created At",
|
||||
"user_subscription.empty" => "You don't have any subscription yet.",
|
||||
"user_subscription.ends_at" => "Ends At",
|
||||
"user_subscription.plan" => "Plan",
|
||||
"user_subscription.renews_at" => "Renews At",
|
||||
"user_subscription.resume_plan" => "Resume Plan",
|
||||
"user_subscription.status" => "Status",
|
||||
"user_subscription.title" => "Subscription Plan",
|
||||
"validation_errors.incorrect_password" => "Sorry, you passed incorrect password =>(",
|
||||
"validation_errors.wrong_image" => "You may have uploaded the wrong file, try again!"
|
||||
|
||||
]
|
||||
];
|
||||
@@ -1,113 +1,79 @@
|
||||
{
|
||||
"/js/main.js": "/js/main.js",
|
||||
"/css/app.css": "/css/app.css",
|
||||
"/chunks/admin.js": "/chunks/admin.js?id=d9ef79cabf24df304657",
|
||||
"/chunks/admin-account.js": "/chunks/admin-account.js?id=63c04ed6eb66b99be097",
|
||||
"/chunks/admin.js": "/chunks/admin.js?id=d0e96f9d43262195f434",
|
||||
"/chunks/admin-account.js": "/chunks/admin-account.js?id=e086db78de4de0f46ad7",
|
||||
"/chunks/admin-account~chunks/app-appearance~chunks/app-billings~chunks/app-email~chunks/app-index~chu~2d9ff916.js": "/chunks/admin-account~chunks/app-appearance~chunks/app-billings~chunks/app-email~chunks/app-index~chu~2d9ff916.js?id=07b0ad73181498d46930",
|
||||
"/chunks/admin-account~chunks/app-setup~chunks/billings-detail~chunks/create-new-password~chunks/datab~01aef58e.js": "/chunks/admin-account~chunks/app-setup~chunks/billings-detail~chunks/create-new-password~chunks/datab~01aef58e.js?id=6cb8c3f7a9aed769ec61",
|
||||
"/chunks/admin~chunks/files~chunks/settings~chunks/shared-files~chunks/shared-page.js": "/chunks/admin~chunks/files~chunks/settings~chunks/shared-files~chunks/shared-page.js?id=7480293537e480966ae0",
|
||||
"/chunks/app-appearance.js": "/chunks/app-appearance.js?id=b99a5c881b7f15a7e8c5",
|
||||
"/chunks/app-appearance~chunks/app-billings~chunks/app-email~chunks/app-index~chunks/app-others~chunks~605f4c49.js": "/chunks/app-appearance~chunks/app-billings~chunks/app-email~chunks/app-index~chunks/app-others~chunks~605f4c49.js?id=9e50edacd8630aa6fc22",
|
||||
"/chunks/app-appearance~chunks/app-billings~chunks/app-email~chunks/app-index~chunks/app-others~chunks~8cc7d96f.js": "/chunks/app-appearance~chunks/app-billings~chunks/app-email~chunks/app-index~chunks/app-others~chunks~8cc7d96f.js?id=b6dbd27dc777d0878f4b",
|
||||
"/chunks/app-appearance~chunks/app-billings~chunks/app-email~chunks/app-index~chunks/app-others~chunks~8cc7d96f.js": "/chunks/app-appearance~chunks/app-billings~chunks/app-email~chunks/app-index~chunks/app-others~chunks~8cc7d96f.js?id=d951063a67002cd00366",
|
||||
"/chunks/app-appearance~chunks/app-billings~chunks/app-email~chunks/app-index~chunks/app-others~chunks~b9e5655a.js": "/chunks/app-appearance~chunks/app-billings~chunks/app-email~chunks/app-index~chunks/app-others~chunks~b9e5655a.js?id=d066e2c40f4c0ca68bf1",
|
||||
"/chunks/app-billings.js": "/chunks/app-billings.js?id=aac5bd51067578358164",
|
||||
"/chunks/app-email.js": "/chunks/app-email.js?id=9d1631b19f6492b8cae4",
|
||||
"/chunks/app-index.js": "/chunks/app-index.js?id=ec7605e0fcf922be3dbc",
|
||||
"/chunks/app-language.js": "/chunks/app-language.js?id=6df87ae1329a978b8f75",
|
||||
"/chunks/app-others.js": "/chunks/app-others.js?id=44efcfb317747ff3b508",
|
||||
"/chunks/app-payments.js": "/chunks/app-payments.js?id=187ecc16f9f7fbc4ccac",
|
||||
"/chunks/app-settings.js": "/chunks/app-settings.js?id=033223b2f39c72c71a73",
|
||||
"/chunks/app-settings~chunks/dashboard~chunks/invoices~chunks/page-edit~chunks/pages~chunks/plan~chunk~8a0e1d25.js": "/chunks/app-settings~chunks/dashboard~chunks/invoices~chunks/page-edit~chunks/pages~chunks/plan~chunk~8a0e1d25.js?id=52e8a931f975c4e03a3c",
|
||||
"/chunks/app-setup.js": "/chunks/app-setup.js?id=8038cc956f309a321a7c",
|
||||
"/chunks/billings-detail.js": "/chunks/billings-detail.js?id=bbfc290b50cebb202228",
|
||||
"/chunks/app-setup.js": "/chunks/app-setup.js?id=4effad41e0f915276c1b",
|
||||
"/chunks/billings-detail.js": "/chunks/billings-detail.js?id=29d4992070355267f2c7",
|
||||
"/chunks/contact-us.js": "/chunks/contact-us.js?id=4dc0385ff5abe06d164e",
|
||||
"/chunks/contact-us~chunks/dynamic-page~chunks/landing-page.js": "/chunks/contact-us~chunks/dynamic-page~chunks/landing-page.js?id=a4b8a7017c82de28296b",
|
||||
"/chunks/create-new-password.js": "/chunks/create-new-password.js?id=108dcc4b5af4c973be56",
|
||||
"/chunks/dashboard.js": "/chunks/dashboard.js?id=0feeb46fa2549c8d4be4",
|
||||
"/chunks/dashboard~chunks/invoices~chunks/pages~chunks/plan-subscribers~chunks/plans~chunks/settings-i~0e2a0654.js": "/chunks/dashboard~chunks/invoices~chunks/pages~chunks/plan-subscribers~chunks/plans~chunks/settings-i~0e2a0654.js?id=cc1b4cbd4aa7f70151f7",
|
||||
"/chunks/database.js": "/chunks/database.js?id=ce57f3e69798319aab7b",
|
||||
"/chunks/database.js": "/chunks/database.js?id=d88dd27e1e9ef785c137",
|
||||
"/chunks/dynamic-page.js": "/chunks/dynamic-page.js?id=f7ff36abf37571173944",
|
||||
"/chunks/environment-setup.js": "/chunks/environment-setup.js?id=48efd0b887fbc804ac90",
|
||||
"/chunks/environment-setup.js": "/chunks/environment-setup.js?id=bafe938bed9cc13ed444",
|
||||
"/chunks/files.js": "/chunks/files.js?id=6a283c2c9f8a02500bc6",
|
||||
"/chunks/files~chunks/settings-subscription~chunks/shared-files~chunks/shared-page~chunks/user-subscription.js": "/chunks/files~chunks/settings-subscription~chunks/shared-files~chunks/shared-page~chunks/user-subscription.js?id=b646ec02fb9d6a497e74",
|
||||
"/chunks/files~chunks/shared-files~chunks/shared-page.js": "/chunks/files~chunks/shared-files~chunks/shared-page.js?id=b5bb396ab8a7b0dd3483",
|
||||
"/chunks/files~chunks/shared-page.js": "/chunks/files~chunks/shared-page.js?id=47ade53389e84dd64310",
|
||||
"/chunks/forgotten-password.js": "/chunks/forgotten-password.js?id=d5e39543eeb619cb5513",
|
||||
"/chunks/installation-disclaimer.js": "/chunks/installation-disclaimer.js?id=f037ea11689d01ea489e",
|
||||
"/chunks/installation-disclaimer.js": "/chunks/installation-disclaimer.js?id=764e5f0462c23f0a793c",
|
||||
"/chunks/invoices.js": "/chunks/invoices.js?id=0dddc007dba47ac5785e",
|
||||
"/chunks/landing-page.js": "/chunks/landing-page.js?id=963140915655ff33f611",
|
||||
"/chunks/not-found-shared.js": "/chunks/not-found-shared.js?id=8c8ee101f3445e086040",
|
||||
"/chunks/page-edit.js": "/chunks/page-edit.js?id=0952cc3fb3aa4797a679",
|
||||
"/chunks/page-edit.js": "/chunks/page-edit.js?id=716d7430723b38f08cd6",
|
||||
"/chunks/pages.js": "/chunks/pages.js?id=313adabcad5dafb0f932",
|
||||
"/chunks/plan.js": "/chunks/plan.js?id=41d7a74e57ac07ce3619",
|
||||
"/chunks/plan-create.js": "/chunks/plan-create.js?id=8d1c89c91afa65224225",
|
||||
"/chunks/plan-create.js": "/chunks/plan-create.js?id=b22c88619acc8d699c2e",
|
||||
"/chunks/plan-delete.js": "/chunks/plan-delete.js?id=4da54a76628aef67ea3e",
|
||||
"/chunks/plan-settings.js": "/chunks/plan-settings.js?id=e608674e1719be65fe6f",
|
||||
"/chunks/plan-subscribers.js": "/chunks/plan-subscribers.js?id=8655313c7b71b1019c8f",
|
||||
"/chunks/plans.js": "/chunks/plans.js?id=d6d92de642403caa999b",
|
||||
"/chunks/profile.js": "/chunks/profile.js?id=1e629aa55540ed106ce7",
|
||||
"/chunks/profile~chunks/settings-password.js": "/chunks/profile~chunks/settings-password.js?id=f9e2ea1515204b5c63b6",
|
||||
"/chunks/profile~chunks/settings-password.js": "/chunks/profile~chunks/settings-password.js?id=555e6cf8a4b64b2bf130",
|
||||
"/chunks/purchase-code.js": "/chunks/purchase-code.js?id=91a470e84a34587f3944",
|
||||
"/chunks/settings.js": "/chunks/settings.js?id=87d29c7fd4e0e6f1a3bd",
|
||||
"/chunks/settings-create-payment-methods.js": "/chunks/settings-create-payment-methods.js?id=8bc4707d554ffca037a1",
|
||||
"/chunks/settings-invoices.js": "/chunks/settings-invoices.js?id=f5c1b720a5b12060b83b",
|
||||
"/chunks/settings-create-payment-methods.js": "/chunks/settings-create-payment-methods.js?id=01e53a56780af8a64842",
|
||||
"/chunks/settings-invoices.js": "/chunks/settings-invoices.js?id=11e08fa4faa935635246",
|
||||
"/chunks/settings-password.js": "/chunks/settings-password.js?id=0229d51aca95ffc75902",
|
||||
"/chunks/settings-payment-methods.js": "/chunks/settings-payment-methods.js?id=6645f6fa891ede787f43",
|
||||
"/chunks/settings-storage.js": "/chunks/settings-storage.js?id=0ec77e47b2622ee5e253",
|
||||
"/chunks/settings-subscription.js": "/chunks/settings-subscription.js?id=00c6bca64820c4fd3a89",
|
||||
"/chunks/settings-payment-methods.js": "/chunks/settings-payment-methods.js?id=3bce5589787fcb1049d6",
|
||||
"/chunks/settings-storage.js": "/chunks/settings-storage.js?id=c597872e1ac17c09700d",
|
||||
"/chunks/settings-subscription.js": "/chunks/settings-subscription.js?id=1f07938bfda50c1d9ab2",
|
||||
"/chunks/setup-wizard.js": "/chunks/setup-wizard.js?id=b671f4f3198119b48449",
|
||||
"/chunks/shared-files.js": "/chunks/shared-files.js?id=b13068f12911fbf79f74",
|
||||
"/chunks/shared-page.js": "/chunks/shared-page.js?id=b22b072500c256e062e5",
|
||||
"/chunks/sign-in.js": "/chunks/sign-in.js?id=0212907c9bf1cdbd99ed",
|
||||
"/chunks/sign-up.js": "/chunks/sign-up.js?id=91001c0d2c2522eb0d03",
|
||||
"/chunks/stripe-credentials.js": "/chunks/stripe-credentials.js?id=0e90002c41282e286785",
|
||||
"/chunks/subscription-plans.js": "/chunks/subscription-plans.js?id=6ceb34852ec8a0280aef",
|
||||
"/chunks/stripe-credentials.js": "/chunks/stripe-credentials.js?id=6272837c1fa4cebc7d6b",
|
||||
"/chunks/subscription-plans.js": "/chunks/subscription-plans.js?id=298abbbbe8c02e2caa20",
|
||||
"/chunks/subscription-service.js": "/chunks/subscription-service.js?id=7176521fbf0047110ae1",
|
||||
"/chunks/upgrade.js": "/chunks/upgrade.js?id=84fa2517046334070313",
|
||||
"/chunks/upgrade-billing.js": "/chunks/upgrade-billing.js?id=816be29562b9052cabb1",
|
||||
"/chunks/upgrade.js": "/chunks/upgrade.js?id=723700a8762b54314668",
|
||||
"/chunks/upgrade-billing.js": "/chunks/upgrade-billing.js?id=715b17e9c6a1f6aff708",
|
||||
"/chunks/upgrade-billing~chunks/upgrade-plan.js": "/chunks/upgrade-billing~chunks/upgrade-plan.js?id=a589c99d29f03bc71487",
|
||||
"/chunks/upgrade-plan.js": "/chunks/upgrade-plan.js?id=8bf12e8b93c7eaee4171",
|
||||
"/chunks/user.js": "/chunks/user.js?id=bdb8a51693952859f5e1",
|
||||
"/chunks/user-create.js": "/chunks/user-create.js?id=d0056a5db2089bc05508",
|
||||
"/chunks/user-create.js": "/chunks/user-create.js?id=499fa0f0dca50c9e4e51",
|
||||
"/chunks/user-delete.js": "/chunks/user-delete.js?id=91d17d44835dd32ec36f",
|
||||
"/chunks/user-detail.js": "/chunks/user-detail.js?id=b5b474dd8fea7b99c766",
|
||||
"/chunks/user-invoices.js": "/chunks/user-invoices.js?id=68ea653f6d345e469307",
|
||||
"/chunks/user-password.js": "/chunks/user-password.js?id=ac51d17a4aa7ae50bc88",
|
||||
"/chunks/user-storage.js": "/chunks/user-storage.js?id=5cfec8a8f8a8aef24ef2",
|
||||
"/chunks/user-subscription.js": "/chunks/user-subscription.js?id=34603496ceacb8bd2da3",
|
||||
"/chunks/users.js": "/chunks/users.js?id=6e68cb068f69fba3199c",
|
||||
"/js/main.e9267f5855b7b9bf8a61.hot-update.js": "/js/main.e9267f5855b7b9bf8a61.hot-update.js",
|
||||
"/chunks/admin.e9267f5855b7b9bf8a61.hot-update.js": "/chunks/admin.e9267f5855b7b9bf8a61.hot-update.js",
|
||||
"/chunks/admin-account.e9267f5855b7b9bf8a61.hot-update.js": "/chunks/admin-account.e9267f5855b7b9bf8a61.hot-update.js",
|
||||
"/chunks/admin~chunks/files~chunks/settings~chunks/shared-files~chunks/shared-page.e9267f5855b7b9bf8a61.hot-update.js": "/chunks/admin~chunks/files~chunks/settings~chunks/shared-files~chunks/shared-page.e9267f5855b7b9bf8a61.hot-update.js",
|
||||
"/chunks/app-appearance~chunks/app-billings~chunks/app-email~chunks/app-index~chunks/app-others~chunks~8cc7d96f.e9267f5855b7b9bf8a61.hot-update.js": "/chunks/app-appearance~chunks/app-billings~chunks/app-email~chunks/app-index~chunks/app-others~chunks~8cc7d96f.e9267f5855b7b9bf8a61.hot-update.js",
|
||||
"/chunks/app-index.e9267f5855b7b9bf8a61.hot-update.js": "/chunks/app-index.e9267f5855b7b9bf8a61.hot-update.js",
|
||||
"/chunks/app-settings.e9267f5855b7b9bf8a61.hot-update.js": "/chunks/app-settings.e9267f5855b7b9bf8a61.hot-update.js",
|
||||
"/chunks/app-setup.e9267f5855b7b9bf8a61.hot-update.js": "/chunks/app-setup.e9267f5855b7b9bf8a61.hot-update.js",
|
||||
"/chunks/billings-detail.e9267f5855b7b9bf8a61.hot-update.js": "/chunks/billings-detail.e9267f5855b7b9bf8a61.hot-update.js",
|
||||
"/chunks/contact-us.e9267f5855b7b9bf8a61.hot-update.js": "/chunks/contact-us.e9267f5855b7b9bf8a61.hot-update.js",
|
||||
"/chunks/dashboard.e9267f5855b7b9bf8a61.hot-update.js": "/chunks/dashboard.e9267f5855b7b9bf8a61.hot-update.js",
|
||||
"/chunks/database.e9267f5855b7b9bf8a61.hot-update.js": "/chunks/database.e9267f5855b7b9bf8a61.hot-update.js",
|
||||
"/chunks/environment-setup.e9267f5855b7b9bf8a61.hot-update.js": "/chunks/environment-setup.e9267f5855b7b9bf8a61.hot-update.js",
|
||||
"/chunks/files.e9267f5855b7b9bf8a61.hot-update.js": "/chunks/files.e9267f5855b7b9bf8a61.hot-update.js",
|
||||
"/chunks/files~chunks/shared-files~chunks/shared-page.e9267f5855b7b9bf8a61.hot-update.js": "/chunks/files~chunks/shared-files~chunks/shared-page.e9267f5855b7b9bf8a61.hot-update.js",
|
||||
"/chunks/installation-disclaimer.e9267f5855b7b9bf8a61.hot-update.js": "/chunks/installation-disclaimer.e9267f5855b7b9bf8a61.hot-update.js",
|
||||
"/chunks/landing-page.e9267f5855b7b9bf8a61.hot-update.js": "/chunks/landing-page.e9267f5855b7b9bf8a61.hot-update.js",
|
||||
"/chunks/plan-create.e9267f5855b7b9bf8a61.hot-update.js": "/chunks/plan-create.e9267f5855b7b9bf8a61.hot-update.js",
|
||||
"/chunks/plan-subscribers.e9267f5855b7b9bf8a61.hot-update.js": "/chunks/plan-subscribers.e9267f5855b7b9bf8a61.hot-update.js",
|
||||
"/chunks/profile.e9267f5855b7b9bf8a61.hot-update.js": "/chunks/profile.e9267f5855b7b9bf8a61.hot-update.js",
|
||||
"/chunks/purchase-code.e9267f5855b7b9bf8a61.hot-update.js": "/chunks/purchase-code.e9267f5855b7b9bf8a61.hot-update.js",
|
||||
"/chunks/settings.e9267f5855b7b9bf8a61.hot-update.js": "/chunks/settings.e9267f5855b7b9bf8a61.hot-update.js",
|
||||
"/chunks/settings-create-payment-methods.e9267f5855b7b9bf8a61.hot-update.js": "/chunks/settings-create-payment-methods.e9267f5855b7b9bf8a61.hot-update.js",
|
||||
"/chunks/settings-invoices.e9267f5855b7b9bf8a61.hot-update.js": "/chunks/settings-invoices.e9267f5855b7b9bf8a61.hot-update.js",
|
||||
"/chunks/settings-payment-methods.e9267f5855b7b9bf8a61.hot-update.js": "/chunks/settings-payment-methods.e9267f5855b7b9bf8a61.hot-update.js",
|
||||
"/chunks/settings-subscription.e9267f5855b7b9bf8a61.hot-update.js": "/chunks/settings-subscription.e9267f5855b7b9bf8a61.hot-update.js",
|
||||
"/chunks/shared-page.e9267f5855b7b9bf8a61.hot-update.js": "/chunks/shared-page.e9267f5855b7b9bf8a61.hot-update.js",
|
||||
"/chunks/sign-in.e9267f5855b7b9bf8a61.hot-update.js": "/chunks/sign-in.e9267f5855b7b9bf8a61.hot-update.js",
|
||||
"/chunks/sign-up.e9267f5855b7b9bf8a61.hot-update.js": "/chunks/sign-up.e9267f5855b7b9bf8a61.hot-update.js",
|
||||
"/chunks/stripe-credentials.e9267f5855b7b9bf8a61.hot-update.js": "/chunks/stripe-credentials.e9267f5855b7b9bf8a61.hot-update.js",
|
||||
"/chunks/subscription-plans.e9267f5855b7b9bf8a61.hot-update.js": "/chunks/subscription-plans.e9267f5855b7b9bf8a61.hot-update.js",
|
||||
"/chunks/upgrade.e9267f5855b7b9bf8a61.hot-update.js": "/chunks/upgrade.e9267f5855b7b9bf8a61.hot-update.js",
|
||||
"/chunks/upgrade-billing.e9267f5855b7b9bf8a61.hot-update.js": "/chunks/upgrade-billing.e9267f5855b7b9bf8a61.hot-update.js",
|
||||
"/chunks/user-invoices.e9267f5855b7b9bf8a61.hot-update.js": "/chunks/user-invoices.e9267f5855b7b9bf8a61.hot-update.js",
|
||||
"/chunks/user-subscription.e9267f5855b7b9bf8a61.hot-update.js": "/chunks/user-subscription.e9267f5855b7b9bf8a61.hot-update.js"
|
||||
"/chunks/user-subscription.js": "/chunks/user-subscription.js?id=bc0934de44055596bba6",
|
||||
"/chunks/users.js": "/chunks/users.js?id=6e68cb068f69fba3199c"
|
||||
}
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
<template>
|
||||
<div class="form-label">
|
||||
<edit-2-icon size="22" class="icon"></edit-2-icon>
|
||||
<edit-2-icon v-if="!icon" size="22" class="icon"></edit-2-icon>
|
||||
<settings-icon v-if="icon === 'settings'" size="22" class="icon"></settings-icon>
|
||||
<b class="label">
|
||||
<slot></slot>
|
||||
</b>
|
||||
@@ -8,12 +9,14 @@
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { Edit2Icon } from 'vue-feather-icons'
|
||||
import { Edit2Icon, SettingsIcon } from 'vue-feather-icons'
|
||||
|
||||
export default {
|
||||
name: 'FormLabel',
|
||||
props: ['icon'],
|
||||
components: {
|
||||
Edit2Icon
|
||||
Edit2Icon,
|
||||
SettingsIcon
|
||||
}
|
||||
}
|
||||
</script>
|
||||
@@ -30,7 +33,8 @@
|
||||
.icon {
|
||||
margin-right: 10px;
|
||||
|
||||
path {
|
||||
path,
|
||||
circle {
|
||||
stroke: $theme;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -25,7 +25,8 @@
|
||||
"pages": "Pages",
|
||||
"plans": "Plans",
|
||||
"settings": "Settings",
|
||||
"users": "Users"
|
||||
"users": "Users",
|
||||
"language": "Language"
|
||||
},
|
||||
"admin_page_dashboard": {
|
||||
"backer_button": "Become a Backer",
|
||||
@@ -662,7 +663,8 @@
|
||||
"users_list": "User Management",
|
||||
"users_password": "Password",
|
||||
"users_storage_usage": "Storage Usage",
|
||||
"users_user": "User"
|
||||
"users_user": "User",
|
||||
"language": "Language"
|
||||
},
|
||||
"rows": {
|
||||
"card": {
|
||||
|
||||
11
resources/js/router.js
vendored
11
resources/js/router.js
vendored
@@ -284,6 +284,17 @@ const routesAdmin = [
|
||||
},
|
||||
]
|
||||
},
|
||||
|
||||
{
|
||||
name: 'Language',
|
||||
path: '/admin/language',
|
||||
component: () =>
|
||||
import(/* webpackChunkName: "chunks/app-language" */ './views/Admin/Languages/Language'),
|
||||
meta: {
|
||||
requiresAuth: true,
|
||||
title: i18n.t('routes_title.language')
|
||||
},
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
|
||||
41
resources/js/store/modules/app.js
vendored
41
resources/js/store/modules/app.js
vendored
@@ -1,4 +1,5 @@
|
||||
import i18n from '@/i18n/index'
|
||||
import Axios from 'axios'
|
||||
|
||||
const defaultState = {
|
||||
fileInfoPanelVisible: localStorage.getItem('file_info_visibility') == 'true' || false,
|
||||
@@ -8,6 +9,10 @@ const defaultState = {
|
||||
authorized: undefined,
|
||||
homeDirectory: undefined,
|
||||
requestedPlan: undefined,
|
||||
languages: {
|
||||
allLanguages: undefined,
|
||||
strings: undefined,
|
||||
},
|
||||
sorting: {
|
||||
sort: localStorage.getItem('sorting') ? JSON.parse(localStorage.getItem('sorting')).sort : 'DESC',
|
||||
field: localStorage.getItem('sorting') ? JSON.parse(localStorage.getItem('sorting')).field : 'created_at',
|
||||
@@ -841,6 +846,35 @@ const defaultState = {
|
||||
],
|
||||
}
|
||||
const actions = {
|
||||
getLanguages: ({commit, state}) => {
|
||||
|
||||
return new Promise((resolve, reject) => {
|
||||
|
||||
axios
|
||||
.get('/api/language/get')
|
||||
.then((response) => {
|
||||
commit('LOAD_LANGUAGES', response.data)
|
||||
})
|
||||
.catch(() => Vue.prototype.$isSomethingWrong())
|
||||
.finally(() => {
|
||||
resolve(true)
|
||||
})
|
||||
})
|
||||
},
|
||||
getLanguageStrings: ({ commit }, language) => {
|
||||
return new Promise((resolve, reject) => {
|
||||
|
||||
axios
|
||||
.get(`/api/language/${language.locale}/strings`)
|
||||
.then(response => {
|
||||
commit('LOAD_LANGUAGE_STRINGS', response.data)
|
||||
})
|
||||
.catch(() => Vue.prototype.$isSomethingWrong())
|
||||
.finally(() => {
|
||||
resolve(true)
|
||||
})
|
||||
})
|
||||
},
|
||||
changePreviewType: ({commit, state}, preview) => {
|
||||
|
||||
// Get preview type
|
||||
@@ -865,6 +899,12 @@ const actions = {
|
||||
},
|
||||
}
|
||||
const mutations = {
|
||||
LOAD_LANGUAGE_STRINGS (state, data) {
|
||||
state.languages.strings = data
|
||||
},
|
||||
LOAD_LANGUAGES(state, data) {
|
||||
state.languages.allLanguages = data
|
||||
},
|
||||
UPDATE_SORTING(state) {
|
||||
state.sorting.field = JSON.parse(localStorage.getItem('sorting')).field
|
||||
state.sorting.sort = JSON.parse(localStorage.getItem('sorting')).sort
|
||||
@@ -906,6 +946,7 @@ const getters = {
|
||||
requestedPlan: state => state.requestedPlan,
|
||||
currencyList: state => state.currencyList,
|
||||
countries: state => state.countries,
|
||||
languages: state => state.languages,
|
||||
api: state => state.config.api,
|
||||
config: state => state.config,
|
||||
index: state => state.index,
|
||||
|
||||
@@ -30,6 +30,14 @@
|
||||
{{ $t('admin_menu.settings') }}
|
||||
</div>
|
||||
</router-link>
|
||||
<router-link :to="{name: 'Language'}" class="menu-list-item link">
|
||||
<div class="icon">
|
||||
<globe-icon size="17"></globe-icon>
|
||||
</div>
|
||||
<div class="label">
|
||||
{{ $t('admin_menu.language') }}
|
||||
</div>
|
||||
</router-link>
|
||||
</div>
|
||||
</ContentGroup>
|
||||
|
||||
@@ -69,7 +77,7 @@
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { UsersIcon, SettingsIcon, FileTextIcon, CreditCardIcon, DatabaseIcon, BoxIcon, MonitorIcon } from 'vue-feather-icons'
|
||||
import { UsersIcon, SettingsIcon, FileTextIcon, CreditCardIcon, DatabaseIcon, BoxIcon, MonitorIcon, GlobeIcon } from 'vue-feather-icons'
|
||||
import ContentSidebar from '@/components/Sidebar/ContentSidebar'
|
||||
import ContentGroup from '@/components/Sidebar/ContentGroup'
|
||||
import { mapGetters } from 'vuex'
|
||||
@@ -89,6 +97,7 @@
|
||||
ContentSidebar,
|
||||
ContentGroup,
|
||||
UsersIcon,
|
||||
GlobeIcon
|
||||
},
|
||||
}
|
||||
</script>
|
||||
|
||||
100
resources/js/views/Admin/Languages/Language.vue
Normal file
100
resources/js/views/Admin/Languages/Language.vue
Normal file
@@ -0,0 +1,100 @@
|
||||
<template>
|
||||
<div id="single-page">
|
||||
<div id="page-content">
|
||||
<MobileHeader :title="$router.currentRoute.meta.title"/>
|
||||
|
||||
<div class="wrapper">
|
||||
<Spinner v-if="! loadedLanguages"/>
|
||||
<div v-if="loadedLanguages" class="side-content">
|
||||
<PageHeader :can-back="true" :title="$router.currentRoute.meta.title"/>
|
||||
|
||||
<div class="languages-wrapper">
|
||||
<label class="language-label">Langueages</label>
|
||||
<div class="all-language-wrapper">
|
||||
<div @click="getLanguageStrings(language)" class="language" v-for="language in languages.allLanguages" :key="language.id">
|
||||
{{language.name}}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<Spinner v-if="! loadedStrings"/>
|
||||
<LanguageStrings v-if="loadedStrings"/>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import LanguageStrings from '@/views/Admin/Languages/LanguageStrings'
|
||||
import MobileHeader from '@/components/Mobile/MobileHeader'
|
||||
import PageHeader from '@/components/Others/PageHeader'
|
||||
import Spinner from '@/components/FilesView/Spinner'
|
||||
import { mapGetters } from 'vuex'
|
||||
|
||||
export default {
|
||||
name: 'Language',
|
||||
components: {
|
||||
LanguageStrings,
|
||||
MobileHeader,
|
||||
PageHeader,
|
||||
Spinner
|
||||
},
|
||||
computed: {
|
||||
...mapGetters(['languages'])
|
||||
},
|
||||
data () {
|
||||
return {
|
||||
loadedLanguages: false,
|
||||
loadedStrings:false
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
getLanguageStrings (language) {
|
||||
this.loadedStrings = false
|
||||
|
||||
this.$store.dispatch('getLanguageStrings', language).then((loaded) => this.loadedStrings = loaded)
|
||||
}
|
||||
},
|
||||
mounted () {
|
||||
this.$store.dispatch('getLanguages').then((loaded) => {
|
||||
|
||||
this.loadedLanguages = loaded
|
||||
|
||||
this.getLanguageStrings(this.languages.allLanguages[0])
|
||||
})
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
@import '@assets/vue-file-manager/_variables';
|
||||
@import '@assets/vue-file-manager/_mixins';
|
||||
|
||||
.wrapper {
|
||||
display: flex;
|
||||
}
|
||||
|
||||
.side-content{
|
||||
width: 225px;
|
||||
|
||||
.languages-wrapper {
|
||||
margin-top: 70px;
|
||||
|
||||
.language-label {
|
||||
color: $text-muted;
|
||||
font-weight: 700;
|
||||
@include font-size(12);
|
||||
}
|
||||
.all-language-wrapper {
|
||||
|
||||
.language {
|
||||
color: $text;
|
||||
font-weight: 700;
|
||||
@include font-size(13);
|
||||
margin-top: 20px;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
</style>
|
||||
230
resources/js/views/Admin/Languages/LanguageStrings.vue
Normal file
230
resources/js/views/Admin/Languages/LanguageStrings.vue
Normal file
@@ -0,0 +1,230 @@
|
||||
<template>
|
||||
<div class="language-strings-wrapper">
|
||||
<div class="search-bar-wrapper">
|
||||
<div class="search-bar">
|
||||
<div class="icon" >
|
||||
<search-icon size="19"></search-icon>
|
||||
</div>
|
||||
<!-- <div class="icon">
|
||||
<x-icon class="pointer" size="19"></x-icon>
|
||||
</div> -->
|
||||
<input
|
||||
|
||||
class="query"
|
||||
type="text"
|
||||
name="query"
|
||||
:placeholder="$t('inputs.placeholder_search_files')"
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form block-form">
|
||||
<div>
|
||||
<FormLabel class="mt-70" icon="settings">Language Settings</FormLabel>
|
||||
<div class="block-wrapper">
|
||||
<div class="input-wrapper">
|
||||
<div class="inline-wrapper">
|
||||
<div class="switch-label">
|
||||
<label class="input-label">
|
||||
Set as Default Language:
|
||||
</label>
|
||||
</div>
|
||||
<SwitchInput
|
||||
|
||||
class="switch"
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="block-wrapper">
|
||||
<label> Language Name:</label>
|
||||
<ValidationProvider tag="div" mode="passive" class="input-wrapper" name="Language Name" rules="required" v-slot="{ errors }">
|
||||
<input type="text"
|
||||
:class="{'is-error': errors[0]}"
|
||||
/>
|
||||
<span class="error-message" v-if="errors[0]">{{ errors[0] }}</span>
|
||||
</ValidationProvider>
|
||||
</div>
|
||||
|
||||
<div class="block-wrapper">
|
||||
<label> Language Slug:</label>
|
||||
<ValidationProvider tag="div" mode="passive" class="input-wrapper" name="Language Slug" rules="required" v-slot="{ errors }">
|
||||
<input type="text"
|
||||
:class="{'is-error': errors[0]}"
|
||||
/>
|
||||
<span class="error-message" v-if="errors[0]">{{ errors[0] }}</span>
|
||||
</ValidationProvider>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<FormLabel class="mt-70">Language Strings</FormLabel>
|
||||
<div class="block-wrapper" v-for="(string, index) in languages.strings.language_strings" :key="string.id">
|
||||
<label> {{string.value}}:</label>
|
||||
<ValidationProvider tag="div" mode="passive" class="input-wrapper" name="Language string" rules="required" v-slot="{ errors }">
|
||||
<input type="text"
|
||||
@input="updateString(string.value)"
|
||||
v-model="languages.strings.language_strings[index].value"
|
||||
:class="{'is-error': errors[0]}"
|
||||
/>
|
||||
<span class="error-message" v-if="errors[0]">{{ errors[0] }}</span>
|
||||
</ValidationProvider>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { ValidationProvider, ValidationObserver } from 'vee-validate/dist/vee-validate.full'
|
||||
import SwitchInput from '@/components/Others/Forms/SwitchInput'
|
||||
import FormLabel from '@/components/Others/Forms/FormLabel'
|
||||
import { SearchIcon, XIcon } from 'vue-feather-icons'
|
||||
import { mapGetters } from 'vuex'
|
||||
|
||||
export default {
|
||||
name: 'LanguageStrings',
|
||||
components: {
|
||||
ValidationProvider,
|
||||
ValidationObserver,
|
||||
SwitchInput,
|
||||
FormLabel,
|
||||
SearchIcon,
|
||||
XIcon,
|
||||
},
|
||||
computed: {
|
||||
...mapGetters(['languages'])
|
||||
},
|
||||
methods: {
|
||||
updateString (value) {
|
||||
console.log(value)
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
|
||||
@import '@assets/vue-file-manager/_variables';
|
||||
@import '@assets/vue-file-manager/_mixins';
|
||||
@import '@assets/vue-file-manager/_forms';
|
||||
|
||||
|
||||
.language-strings-wrapper {
|
||||
width: 100%;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
}
|
||||
|
||||
.search-bar-wrapper {
|
||||
padding: 7px 0px;
|
||||
}
|
||||
|
||||
.search-bar {
|
||||
position: relative;
|
||||
width: 100%;
|
||||
|
||||
border-radius: 8px;
|
||||
|
||||
input {
|
||||
background: $light-background;
|
||||
border-radius: 8px;
|
||||
outline: 0;
|
||||
padding: 9px 20px 9px 43px;
|
||||
font-weight: 400;
|
||||
@include font-size(16);
|
||||
width: 100%;
|
||||
height: 50px;
|
||||
min-width: 175px;
|
||||
transition: 0.15s all ease;
|
||||
border: 1px solid transparent;
|
||||
-webkit-appearance: none;
|
||||
|
||||
&::placeholder {
|
||||
color: $text-muted;
|
||||
@include font-size(14);
|
||||
font-weight: 500;
|
||||
}
|
||||
|
||||
&:focus {
|
||||
border: 1px solid $theme;
|
||||
box-shadow: 0 0 7px rgba($theme, 0.3);
|
||||
}
|
||||
|
||||
&:focus + .icon {
|
||||
path {
|
||||
fill: $theme;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.icon {
|
||||
height: 100%;
|
||||
position: absolute;
|
||||
top: 0;
|
||||
left: 0;
|
||||
padding: 11px 15px;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
|
||||
circle,
|
||||
line {
|
||||
color: $text-muted;
|
||||
}
|
||||
|
||||
.pointer {
|
||||
cursor: pointer;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// @media only screen and (max-width: 1024px) {
|
||||
|
||||
// .search-bar input {
|
||||
// max-width: 190px;
|
||||
// padding-right: 0;
|
||||
// }
|
||||
// }
|
||||
|
||||
@media only screen and (max-width: 690px) {
|
||||
|
||||
.search-bar {
|
||||
|
||||
input {
|
||||
min-width: initial;
|
||||
width: 100%;
|
||||
max-width: initial;
|
||||
padding: 9px 20px 9px 30px;
|
||||
|
||||
&:focus {
|
||||
border: 1px solid transparent;
|
||||
box-shadow: none;
|
||||
}
|
||||
}
|
||||
|
||||
.icon {
|
||||
padding: 11px 15px 11px 0;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@media (prefers-color-scheme: dark) {
|
||||
.search-bar {
|
||||
input {
|
||||
border-color: transparent;
|
||||
color: $dark_mode_text_primary;
|
||||
|
||||
&::placeholder {
|
||||
color: $dark_mode_text_secondary;
|
||||
}
|
||||
}
|
||||
|
||||
.icon svg path {
|
||||
fill: $dark_mode_text_secondary;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
</style>
|
||||
@@ -69,6 +69,8 @@
|
||||
latest_upgrade: '{{ isset($settings->latest_upgrade) && $settings->latest_upgrade ? $settings->latest_upgrade : null }}',
|
||||
|
||||
chunkSize: {{ format_bytes(config('vuefilemanager.chunk_size')) }},
|
||||
|
||||
// language_strings: '{{ config('language_strings[test]') }}',
|
||||
}
|
||||
</script>
|
||||
|
||||
|
||||
@@ -171,9 +171,10 @@ Route::group(['middleware' => ['auth:api', 'auth.master', 'auth.admin', 'scope:m
|
||||
|
||||
// Language
|
||||
Route::post('/language/create', 'Language\LanguageController@create_language');
|
||||
Route::patch('/language/{id}/update', 'Language\LanguageController@update_language');
|
||||
Route::patch('/language/update-string', 'Language\LanguageController@update_string');
|
||||
Route::get('/language/get', 'Language\LanguageController@get_languages');
|
||||
Route::get('/language/{language}/strings', 'Language\LanguageController@get_language_strings');
|
||||
Route::get('/language/{locale}/strings', 'Language\LanguageController@get_language_strings');
|
||||
});
|
||||
|
||||
// Protected sharing routes for authenticated user
|
||||
|
||||
Reference in New Issue
Block a user