Visa fullständig version: Löste Om Ämnesrubrik överskrids genom införande av langtitle saker går sönder
Jag märkte att om någon inlägg en tråd på ett annat språk som är strax under min tecken för Ämnesrubrik och langtitle taggarna gå över denna gräns, denna skruvar upp visningen av tråden i forumdisplay, sökresultat, och på diskussionen sida sig själv. Samma sak gäller om en Ämnesrubrik översätts, någon svarar på tråden, och "Re: skickar efter titeln över dess tecken.
Jag kan inte visa ett exempel på detta eftersom jag var tvungen att fixa det på mitt forum. Jag är säker på om det kan replikeras här om du anger en titel precis under Ämnesrubrik tecken som är översatt från standardspråket.
r.dziadusz
13-09-11, 11:04
Kan du visa oss ett problem, för jag kan knappt förstå när problemet verkar
Problemet är när "langtitle" sätts in i Ämnesrubrik är det erkänner inte den tråden gränsen titeln karaktär. Om taggen blir avskurna och är inte riktigt stängd, det bryter den sida där titeln visas.
r.dziadusz
14-09-11, 10:05
Ok, men jag kan inte återskapa problemet på min Test Forum, min [langtitle] aldrig kapas.
Skulle ni kunna skicka mig information om detta problem. Vad är din langtitle längd gräns, och hur länge prick ska vara (på vilket språk) för att bryta den linjen?
min titel längdbegränsningen var 85, men jag ökade det till 100. Så, till exempel, om användaren in en titel som var 95 tecken och sedan så langtitle taggar skulle skicka det över gränsen. Systemet stympad taggen stängning langtitle vilket resulterar i att bryta layouten.
r.dziadusz
18-09-11, 20:01
Ok vi kunde återskapa problemet, och nu är vi jobbar på det
Hej. Jag kunde reproducera den. Det var verkligen svårt att föröka sig och jag gjorde det misstag som arbetar på något annat. Det var svårt, eftersom det är vBulletin bugg. vBET använder vBulletin funktion vbchop, som förmodar att skära sträng enligt önskad längd på säkert sätt (med tanke på kodade tecken). Tyvärr vBulletin har fel där och för meddelanden som kodas till säkra UTF-8 (tecken som & #-kod;) ger fel resultat.
Vi skickar felrapport till vBulletin (vBulletin bugg (http://tracker.vbulletin.com/browse/VBIV-13177)) och skapade snabblösning på vBET sida. Så just nu vBET upptäcker om vbchop återvände längre resultatet och skär den till önskade. Även vi har enkla upptäckt att kolla inte brev kodade i formatet & #-koden, inte skära i mitten, och om ja, så sista ordet är också klippa (bara genom att hitta sista plats). Se quick fix nedan.
Quick Fix:
Öppna / includes / vbenterprisetranslator_functions_detection.php
Sök:
$title = vbchop($title, $vbulletin->options['titlemaxchars'] - 12).'[/langtitle]';
Ersätt med:
$desiredLength = $vbulletin->options['titlemaxchars'] - 12;
$title = vbchop($title, $desiredLength);
if (strlen($title) > $desiredLength) {
$title = substr($title, 0, $desiredLength);
$lastOpen = strrpos($title,'&');
$lastSpace = strrpos($title, ' ');
$lastClose = strrpos($title,';');
if ($lastOpen!==false && $lastSpace!==false && $lastClose!==false && ($lastSpace < $lastOpen) && ($lastOpen > $lastClose)) {
$title = substr($title, 0, $lastSpace);
}
}
$title .= '[/langtitle]';
Denna kommer att inkluderas i nästa utgåva.
Observera att tidigare inlägget ändrats för att ge mer sofistikerade quick fix (lösa frågan om sänkning av mitt brev i format & #-kod;). Så om du redan tillämpa tidigare lösning kan du överväga att använda faktiska en, eller bara vänta på ny version:)
Tack Michal - Jag visste att något var upp. Har quick fix också redovisa svar också? Ibland är: "skickade den över gränsen.
Vi har inte kontrollera det. Om du kommer att tycka att frågan fortfarande existerar i så fall, kontakta oss här och vi kommer att hantera detta:)
Automatic Translations (Powered by Google, Microsoft®,
Yandex, SDL Language Cloud, IBM Watson and Apertium):
Powered by vBulletin® Version 4.2.5 Copyright © 2024 vBulletin Solutions Inc. All rights reserved.