You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
125 lines
6.0 KiB
125 lines
6.0 KiB
{{-- <!DOCTYPE html>
|
|
<html>
|
|
<head>
|
|
<title>How to Create Multi Language Website in Laravel - CodeSolutionStuff.com</title>
|
|
<meta charset="utf-8">
|
|
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
|
<link href="//netdna.bootstrapcdn.com/bootstrap/3.2.0/css/bootstrap.min.css" rel="stylesheet">
|
|
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
|
|
</head>
|
|
<body>
|
|
<div class="container">
|
|
<h1>How to Create Multi Language Website in Laravel - CodeSolutionStuff.com</h1>
|
|
<div class="row">
|
|
<div class="col-md-2 col-md-offset-6 text-right">
|
|
<strong>Select Language: </strong>
|
|
</div>
|
|
<div class="col-md-4">
|
|
<select class="form-control changeLang">
|
|
<option value="en" {{ session()->get('locale') == 'en' ? 'selected' : '' }}>English</option>
|
|
<option value="vi" {{ session()->get('locale') == 'vi' ? 'selected' : '' }}>VietNamese</option>
|
|
</select>
|
|
</div>
|
|
</div>
|
|
<h1>{{ __('lang.title') }}</h1>
|
|
</div>
|
|
</body>
|
|
<script type="text/javascript">
|
|
var url = "{{ route('lang.changeLang') }}";
|
|
$(".changeLang").change(function(){
|
|
window.location.href = url + "?lang="+ $(this).val();
|
|
});
|
|
</script>
|
|
</html>Create Middleware --}}
|
|
|
|
<x-app-layout>
|
|
<x-slot name="header">
|
|
<h2 class="font-semibold text-xl text-gray-800 leading-tight">
|
|
{{ __('Edit Language') }}
|
|
</h2>
|
|
</x-slot>
|
|
|
|
<div class="py-12">
|
|
<div class="max-w-7xl mx-auto sm:px-6 lg:px-8">
|
|
<div class="bg-white overflow-hidden shadow-sm sm:rounded-lg">
|
|
<div class="p-6 bg-white border-b border-gray-200">
|
|
<div class="row">
|
|
<div class="col-md-5">
|
|
{{-- <h3>Edit language</h3> --}}
|
|
</div>
|
|
</div>
|
|
<div class="wrapper wrapper-content animated fadeInRight">
|
|
<div class="row">
|
|
<div class="ibox float-e-margins">
|
|
<div class="row">
|
|
@foreach ($data_final as $key => $data)
|
|
|
|
{{-- <div class="col">{{ $data[session()->get('locale')] }}</div> --}}
|
|
<div class="col-3">
|
|
<div id="accordion">
|
|
<div class="card">
|
|
<div class="card-header" id="heading-{{ $key }}">
|
|
<h5 class="mb-0">
|
|
<button class="btn btn-link collapsed" data-toggle="collapse"
|
|
data-target="#collapse_{{ $key }}" aria-expanded="false"
|
|
aria-controls="collapse_{{ $key }}">
|
|
<small>{{ $data[session()->get('locale')] }}</small>
|
|
</button>
|
|
</h5>
|
|
</div>
|
|
<div id="collapse_{{ $key }}" class="collapse" aria-labelledby="heading-{{ $key }}"
|
|
data-parent="#accordion">
|
|
<div class="card-body list-word-item">
|
|
@foreach ($data as $key_item => $item)
|
|
<div class="form-group">
|
|
<label for="formGroupExampleInput">{{ $key_item }}</label>
|
|
<input type="text" data-key="{{ $key }}" name="{{ $key_item }}" class="form-control" id="formGroupExampleInput" placeholder="Example input" value="{{ $item }}">
|
|
</div>
|
|
@endforeach
|
|
<button class="btn btn-success save-word-lang">@lang('lang.save')</button>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
@endforeach
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</x-app-layout>
|
|
<script>
|
|
$.ajaxSetup({
|
|
headers:
|
|
{ 'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content') }
|
|
});
|
|
$(document).ready(function () {
|
|
$(document).on('click','.save-word-lang',function(){
|
|
let input = $(this).closest('.list-word-item').find('input');
|
|
let data_push = [];
|
|
input.each(function(){
|
|
let obj = {};
|
|
obj.lang = $(this).attr('name');
|
|
obj.word = $(this).val();
|
|
obj.key = $(this).attr('data-key');
|
|
data_push.push(obj);
|
|
});
|
|
console.log(data_push);
|
|
$.ajax({
|
|
type: "post",
|
|
url: "{{ route('lang.update') }}",
|
|
data: {
|
|
data:JSON.stringify(data_push)
|
|
},
|
|
dataType: "json",
|
|
success: function (response) {
|
|
console.log("done..............");
|
|
}
|
|
});
|
|
})
|
|
});
|
|
</script>
|
|
|