View Full Version: Rešeno Če je nit naslov presežen z vstavljanjem langtitle stvari odmor
Opazil sem, da če nekdo objav nit v drugem jeziku, ki je tik pod min znakov za naslov nit, in langtitle tags iti čez to mejo, to vijaki up prikaz nit v forumdisplay, rezultati iskanja, in na nit strani sama. Enako velja, če je preveden nit naslov, nekdo odgovori na nit, in "Re:" pošlje po naslovu nad svojim znakov.
Ne morem pokazati primer tega, ker sem moral popraviti na mojem forumu. Prepričan sem, da če je na voljo tukaj ponoviti, če vnesete naslov tik pod naslovom nit omejitev znakov, ki je prevedena iz privzetega jezika.
r.dziadusz
13-09-11, 11:04
Bi vas prosimo, da nam pokaže problem, saj se komaj razumeti, ko se pojavi problem
Problem je, ko je "langtitle" vstavi v nit naziv, to ni priznava znakov nit naslova omejitev. Če dobi oznako odrezana in ni pravilno zaprta, se zlomi stran, kjer naslov pojavi.
r.dziadusz
14-09-11, 10:05
Ok, ampak jaz ne more razmnoževati ta problem na moj test forum, moj [langtitle] ni nikoli zmanjšal.
Bi lahko prosim spodbuda mi podrobne informacije o tem problemu. Kakšen je vaš langtitle dolžino meje, in kako dolgo Mrvica naj bi (v kateri jezik) za prekinitev linije?
moj naslov dolžina meje je bilo 85, vendar sem se je povečala na 100. Tako, na primer, če uporabnik doda naslov, ki je bil 95 znakov, nato pa potem langtitle tags bi ga poslati čez mejo. Sistem okrnjena tag zapiranje langtitle ki ima za posledico zlom postavitev.
r.dziadusz
18-09-11, 20:01
Ok smo lahko reproducirajo to problem, in sedaj delamo na njem
Hi. Sem lahko reproducira. Bilo je res težko za razmnoževanje in sem ga slučajno dela na nekaj drugega. Bilo je težko, ker je vBulletin bug. vBET uporablja vBulletin funkcijo vbchop, kar domnevam da zmanjšanje niz glede na želeno dolžino v varni način (ob upoštevanju, kodiranih znakov). Na žalost vBulletin ima bug tam in za sporočila, ki so kodirane varne UTF-8 (znaki, kot & # CODE;) daje napačne rezultate.
Smo poslali bug poročilo vBulletin (bug vBulletin (http://tracker.vbulletin.com/browse/VBIV-13177)) in ustvarili hitro popraviti na vBET strani. Torej, zdaj vBET zazna, vbchop vrnil več in rezultat je znižanje na želeno eno. Prav tako smo enostavno odkrivanje, da preverite to pismo so kodirani v formatu & # CODE; ni bil cut na sredini in če da, potem je zadnja beseda tudi cut (preprosto z iskanjem zadnjega prostora). Prosimo, glejte hitra rešitev spodaj.
Quick Fix:
Odpri / includes / vbenterprisetranslator_functions_detection.php
Najdi:
$title = vbchop($title, $vbulletin->options['titlemaxchars'] - 12).'[/langtitle]';
Zamenjajte z:
$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]';
To bo vključen v naslednji izdaji.
Prosimo, upoštevajte, da prejšnjem delovnem mestu je bil urejen tako, da zagotavljajo bolj sofisticirane hitra rešitev (reševanje vprašanja cut sredi pismo, v obliki & # CODE;). Torej, če ste že uporabljajo prejšnjo rešitev, lahko menite, da z uporabo dejanskih eno ali le čakati na novo sprostitev:)
Hvala Michal - Vedel sem, da je nekaj gor. Ali hitra rešitev tudi račun za odgovore, pa tudi? Včasih si: "poslali čez mejo.
Nismo pogledat. Če boste ugotovili, da vprašanje še vedno obstaja, v tem primeru, se obrnite na nas tukaj in mi bo to uredil:)
Automatic Translations (Powered by Google, Microsoft®,
Yandex, SDL Language Cloud, IBM Watson and Apertium):
Powered by vBulletin® Version 4.2.5 Copyright © 2025 vBulletin Solutions Inc. All rights reserved.