Commit d7b27148 by Siti Aisah

update fitur edit agenda untuk auto translate dan manual

parent b1f1e29c
...@@ -189,15 +189,36 @@ class AgendaController extends Controller ...@@ -189,15 +189,36 @@ class AgendaController extends Controller
*/ */
public function edit($id) public function edit($id)
{ {
$setting = webprofilesetting();
$data = $this->repo->findId($id, ['rEn', 'rDe', 'rSa', 'rZh']); $data = $this->repo->findId($id, ['rEn', 'rDe', 'rSa', 'rZh']);
$categories = Categories::pluck('name', 'id'); $categories = Categories::pluck('name', 'id');
$manual=0;
$data = [ $data = [
'data' => $data, 'data' => $data,
'categories' => $categories, 'categories' => $categories,
'setting' => $setting,
'manual'=> $manual,
]; ];
return view('webprofile.backend.agendas.edit', $data)->withTitle(trans('feature.edit_agenda')); return view('webprofile.backend.agendas.edit', $data)->withTitle(trans('feature.edit_agenda'));
}
public function editPerBahasa($id)
{
$setting = webprofilesetting();
$data = $this->repo->findId($id, ['rEn', 'rDe', 'rSa', 'rZh']);
$categories = Categories::pluck('name', 'id');
$manual=1;
$data = [
'data' => $data,
'categories' => $categories,
'setting' => $setting,
'manual' => $manual,
];
return view('webprofile.backend.agendas.edit_per_bahasa', $data)->withTitle(trans('feature.edit_agenda'));
} }
/** /**
...@@ -209,52 +230,110 @@ class AgendaController extends Controller ...@@ -209,52 +230,110 @@ class AgendaController extends Controller
*/ */
public function update(Request $request, $id) public function update(Request $request, $id)
{ {
$data = $request->except(['_token', 'id', 'title_en', 'content_en', 'title_de', 'content_de', 'title_sa', 'content_sa', 'title_zh', 'content_zh']); $data = $request->except(['_token', 'manual', 'id', 'title_en', 'content_en', 'title_de', 'content_de', 'title_sa', 'content_sa', 'title_zh', 'content_zh']);
$dataEn = $request->except(['_token', 'id']); $dataEn = $request->except(['_token', 'id', 'manual']);
array_key_exists('info_status', $data) ? $data['info_status'] = 1 : $data['info_status'] = 0; array_key_exists('info_status', $data) ? $data['info_status'] = 1 : $data['info_status'] = 0;
$data['slug'] = str_slug($request->input('title')); $data['slug'] = str_slug($request->input('title'));
$agenda = $this->repo->findId($id, ['rEn', 'rDe', 'rSa','rZh']); $agenda = $this->repo->findId($id, ['rEn', 'rDe', 'rSa','rZh']);
$edit = $this->repo->update($data, $agenda);
$this->updateEn($dataEn, $agenda); $this->updateEn($dataEn, $agenda, $request->manual);
$this->updateDe($dataEn, $agenda); $this->updateDe($dataEn, $agenda, $request->manual);
$this->updateSa($dataEn, $agenda); $this->updateSa($dataEn, $agenda, $request->manual);
$this->updateZh($dataEn, $agenda); $this->updateZh($dataEn, $agenda, $request->manual);
$this->repo->update($data, $agenda);
return redirect()->route('agendas.index'); return redirect()->route('agendas.index');
} }
public function updateEn($data, $agenda) public function updateEn($data, $agenda, $manual)
{ {
if($manual==1) {
$dataEn['title'] = $data['title_en']; $dataEn['title'] = $data['title_en'];
$dataEn['content'] = $data['content_en']; $dataEn['content'] = $data['content_en'];
}
else{
if (strip_tags($data['content']) == null) {
$data['content'] = 'kosong';
}
$trans = new GoogleTranslate();
$title = $trans->translate($this->SOURCE, $this->TARGET, $data['title']);
$content = $trans->translate($this->SOURCE, $this->TARGET, strip_tags($data['content']));
$dataEn['title'] = $title;
$dataEn['content'] = $content;
}
$this->repoEn->update($dataEn, $agenda); $this->repoEn->update($dataEn, $agenda);
} }
public function updateDe($data, $agenda) public function updateDe($data, $agenda, $manual)
{ {
if($manual==1) {
$dataDe['title'] = $data['title_de']; $dataDe['title'] = $data['title_de'];
$dataDe['content'] = $data['content_de']; $dataDe['content'] = $data['content_de'];
}
else{
if (strip_tags($data['content']) == null) {
$data['content'] = 'kosong';
}
$trans = new GoogleTranslate();
$title = $trans->translate($this->SOURCE, $this->TARGETDE, $data['title']);
$content = $trans->translate($this->SOURCE, $this->TARGETDE, strip_tags($data['content']));
$dataDe['title'] = $title;
$dataDe['content'] = $content;
}
$this->repoDe->update($dataDe, $agenda); $this->repoDe->update($dataDe, $agenda);
} }
public function updateSa($data, $agenda) public function updateSa($data, $agenda, $manual)
{ {
if($manual==1) {
$dataSa['title'] = $data['title_sa']; $dataSa['title'] = $data['title_sa'];
$dataSa['content'] = $data['content_sa']; $dataSa['content'] = $data['content_sa'];
}
else{
if (strip_tags($data['content']) == null) {
$data['content'] = 'kosong';
}
$trans = new GoogleTranslate();
$title = $trans->translate($this->SOURCE, $this->TARGETSA, $data['title']);
$content = $trans->translate($this->SOURCE, $this->TARGETSA, strip_tags($data['content']));
$dataSa['title'] = $title;
$dataSa['content'] = $content;
}
$this->repoSa->update($dataSa, $agenda); $this->repoSa->update($dataSa, $agenda);
} }
public function updateZh($data, $agenda) public function updateZh($data, $agenda, $manual)
{ {
if($manual==1) {
$dataZh['title'] = $data['title_zh']; $dataZh['title'] = $data['title_zh'];
$dataZh['content'] = $data['content_zh']; $dataZh['content'] = $data['content_zh'];
}
else{
if (strip_tags($data['content']) == null) {
$data['content'] = 'kosong';
}
$trans = new GoogleTranslate();
$title = $trans->translate($this->SOURCE, $this->TARGETZH, $data['title']);
$content = $trans->translate($this->SOURCE, $this->TARGETZH, strip_tags($data['content']));
$dataZh['title'] = $title;
$dataZh['content'] = $content;
}
$this->repoZh->update($dataZh, $agenda); $this->repoZh->update($dataZh, $agenda);
} }
......
...@@ -35,7 +35,9 @@ class AgendaRepository extends Repository ...@@ -35,7 +35,9 @@ class AgendaRepository extends Repository
return DataTables::of($data) return DataTables::of($data)
->addIndexColumn() ->addIndexColumn()
->addColumn('action', function ($row) { ->addColumn('action', function ($row) {
$btn = '<a href="' . url('/webprofile/agendas/' . $row->id . '/edit') . '" data-toggle="tooltip" data-id="' . $row->id . '" data-original-title="' . trans('label.edit') . '" class="edit btn btn-warning btn-round btn-sm edit">' . trans('label.edit') . '</a>'; $btn = '<a href="' . url('/webprofile/agendas/' . $row->id . '/edit') . '" data-toggle="tooltip" data-id="' . $row->id . '" data-original-title="' . trans('label.editsemuabahasa') . '" class="edit btn btn-warning btn-round btn-sm edit">' . trans('label.editsemuabahasa') . '</a>';
$btn = $btn.'<a href="'.url('/webprofile/agendas/'.$row->id.'/editperbahasa').'" data-toggle="tooltip" data-id="'.$row->id.'" data-original-title="'.trans('label.edittiapbahasa').'" class="edit btn btn-warning btn-round btn-sm edit">'.trans('label.edittiapbahasa').'</a>';
$btn = $btn . ' <a href="javascript:void(0)" data-toggle="tooltip" data-id="' . $row->id . '" data-original-title="' . trans('label.delete') . '" class="btn btn-danger btn-round btn-sm delete">' . trans('label.delete') . '</a>'; $btn = $btn . ' <a href="javascript:void(0)" data-toggle="tooltip" data-id="' . $row->id . '" data-original-title="' . trans('label.delete') . '" class="btn btn-danger btn-round btn-sm delete">' . trans('label.delete') . '</a>';
......
...@@ -46,10 +46,11 @@ ...@@ -46,10 +46,11 @@
<div class="col-md-12"> <div class="col-md-12">
<div class="block"> <div class="block">
{{ Form::textarea('content', null, array('id'=>'content')) }} {{ Form::textarea('content', null, array('id'=>'content')) }}
{{ Form::hidden('manual', $manual, array('id'=>'manual')) }}
</div> </div>
</div> </div>
</div> </div>
<div class="tabs"> {{-- <div class="tabs">
<ul class="nav nav-tabs" role="tablist"> <ul class="nav nav-tabs" role="tablist">
<li class="active"><a href="#inggris" role="tab" data-toggle="tab" aria-expanded="true">Inggris</a></li> <li class="active"><a href="#inggris" role="tab" data-toggle="tab" aria-expanded="true">Inggris</a></li>
<li class=""><a href="#jerman" role="tab" data-toggle="tab" aria-expanded="false">Jerman</a></li> <li class=""><a href="#jerman" role="tab" data-toggle="tab" aria-expanded="false">Jerman</a></li>
...@@ -138,7 +139,7 @@ ...@@ -138,7 +139,7 @@
</div> </div>
</div> </div>
</div> </div>
</div> </div> --}}
</div> </div>
</div> </div>
</div> </div>
......
...@@ -21,6 +21,7 @@ Route::group(['middleware' => 'auth'], function () { ...@@ -21,6 +21,7 @@ Route::group(['middleware' => 'auth'], function () {
Route::get('posts/{id}/editperbahasa', 'PostController@editperbahasa'); Route::get('posts/{id}/editperbahasa', 'PostController@editperbahasa');
Route::resource('posts', 'PostController'); Route::resource('posts', 'PostController');
Route::resource('pages', 'PageController'); Route::resource('pages', 'PageController');
Route::get('agendas/{id}/editperbahasa', 'AgendaController@editperbahasa');
Route::resource('agendas', 'AgendaController'); Route::resource('agendas', 'AgendaController');
Route::resource('informations', 'InformationController'); Route::resource('informations', 'InformationController');
Route::resource('settings', 'SettingController'); Route::resource('settings', 'SettingController');
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment