Skip to content
Snippets Groups Projects
Commit 81f54e44 authored by Dominik Hebeler's avatar Dominik Hebeler
Browse files

Weitere Bugs behoben. Der größte Teils dieses Tools sollte nun so langsam funktionieren.

parent cee2325d
No related branches found
No related tags found
2 merge requests!404Development,!384Resolve "Wir benötigen ein Tool mit dem das Übersetzen unsere Seiten stark vereinfacht wird."
......@@ -142,6 +142,7 @@ class LanguageController extends Controller
}
$t = $this->htmlEscape($t, $to);
$t = $this->createHints($t, $to);
return view('languages.edit')
......@@ -157,6 +158,20 @@ class LanguageController extends Controller
->with('new', $ex["new"]);
}
private function htmlEscape($t, $to)
{
foreach ($t as $key => $langTexts) {
if ($langTexts !== "") {
foreach ($langTexts as $lang => $text) {
if ($lang !== $to) {
$t[$key][$lang] = htmlspecialchars($text);
}
}
}
}
return $t;
}
private function createHints($t, $to)
{
foreach ($t as $key => $langTexts) {
......@@ -166,6 +181,9 @@ class LanguageController extends Controller
if (preg_match("/\s:\S+/si", $text)) {
$t[$key][$lang] = preg_replace("/(\s)(:\S+)/si", "$1<a class=\"text-danger hint\" data-toggle=\"tooltip\" data-trigger=\"hover\" data-placement=\"auto\" title=\"Dies ist ein Variablenname. Er wird dort, wo der Text verwendet wird durch einen dynamischen Wert ersetzt. In der Übersetzung sollte dieser deshalb auch so wie er ist in den Satz integriert werden.\" data-container=\"body\" >$2</a>", $text);
}
if (preg_match("/&lt;.*?&gt;/si", $text)) {
$t[$key][$lang] = preg_replace("/(&lt;.*?&gt;)/si", "<a class=\"text-danger hint\" data-toggle=\"tooltip\" data-trigger=\"hover\" data-placement=\"auto\" title=\"Dies ist ein sogenanntes HTML-Tag. Wenn Sie sich das zutrauen, bauen Sie diese HTML Tags gerne so wie sie sind in Ihre Übersetzung ein. Achten Sie hierbei darauf, dass der Text zwischen den Tags auch bei der Übersetzung an der logisch gleichen Stelle von den Tags umfasst ist.\" data-container=\"body\" >$1</a>", $text);
}
}
}
......
......@@ -37,7 +37,7 @@ In der nächsten Spalte findest du entweder Texte der Sprache für die uns einig
@else
<tr>
<td class="name">{{preg_replace("/(\s*).*#(.*)$/si", "$1$2", $name)}}</td>
<td>@if(isset($langValues[$to])) <input type="text" size="50" form="submit" name="_new_{{$name}}" value="{{$langValues[$to]}}" readonly /> @else <input type="text" size="50" form="submit" name="_new_{{$name}}" /> @endif</td>
<td>@if(isset($langValues[$to])) <input type="text" size="50" form="submit" name="{{$name}}" value="{{$langValues[$to]}}" readonly /> @else <input type="text" size="50" form="submit" name="_new_{{$name}}" /> @endif</td>
@foreach($langs as $lang => $value)
<td>{!! $langValues[$lang] or "" !!}</td>
@endforeach
......
......@@ -19,7 +19,14 @@
<tr @if(floor(($values['textCount'] / count($sum)) * 100) < 100) class="danger" @else class="success" @endif>
<td>{{$lang}}</td>
<td>{{ $values['textCount'] . "/" . count($sum)}} Texten übersetzt. ({{ floor(($values['textCount'] / count($sum)) * 100) }} %)</td>
<td><a href="{{ LaravelLocalization::getLocalizedURL(LaravelLocalization::getCurrentLocale(), url("/languages/edit", ['from'=>'all', 'to'=>'de'])) }}" class="btn btn-default @if(!$deComplete && $lang !== "de" || floor(($values['textCount'] / count($sum)) * 100) === 100) disabled @endif">Texte für "{{ $lang }}" ergänzen</a></td>
<td><a href="
@if( $lang === "de" && floor(($values['textCount'] / count($sum)) * 100) < 100)
{{ LaravelLocalization::getLocalizedURL(LaravelLocalization::getCurrentLocale(), url("/languages/edit", ['from'=>'all', 'to'=>'de'])) }}
@elseif($lang !== "de" && floor(($values['textCount'] / count($sum)) * 100) < 100)
{{ LaravelLocalization::getLocalizedURL(LaravelLocalization::getCurrentLocale(), url("/languages/edit", ['from'=>'de', 'to'=>$lang])) }}
@else
#
@endif " class="btn btn-default @if((!$deComplete && $lang !== "de") || floor(($values['textCount'] / count($sum)) * 100) >= 100) disabled @endif">Texte für "{{ $lang }}" ergänzen</a></td>
</tr>
@endforeach
</tbody>
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment