Seite 1 von 1
Fehlermeldung beim Verschicken von PMs
Verfasst: 26.11.2011 19:31
von Secretly
Hallo,
ich habe zwei Styles nach diesem Muster
https://www.phpbb.de/kb/shared_template erstellt und dass funktioniert auch alles. Jedoch habe ich jetzt das Problem, dass wenn ich eine PM verschicke einen Fehlermeldung bekomme:
Fatal error: The file ./styles/something/template/bbcode.html is missing. in /is/htdocs/wp1172474_BQBAATSYFN/www/phpbb/includes/bbcode.php on line 150
Die Datei bbcode.html ist im Ordner Prosilver vorhanden, auf welchen die beiden Styles zugreifen und die PM kommt auch an. Nur die Fehlermeldung ist eben etwas störend.
Re: Fehlermeldung beim Verschicken von PMs
Verfasst: 26.11.2011 20:03
von WileCoyote
Das scheint ein Fehler in der "Template Inheritance" Funktion zu sein. Im Moment kannst du nur doch das Kopieren der bbcode.html in den jeweiligen Template Ordner der Styles abhilfe schaffen.
Re: Fehlermeldung beim Verschicken von PMs
Verfasst: 26.11.2011 22:49
von Secretly
Okay, danke.

Darf ich fragen was mit "Template Inheritance" genau gemeint ist? Liegt es daran, dass der Ordner z.b. something heißt und der Style start of somethin new ?
Re: Fehlermeldung beim Verschicken von PMs
Verfasst: 28.11.2011 17:16
von Secretly
Kann mir jemand den Begriff "Template Inheritance" fürs nächste Mal erklären?
Re: Fehlermeldung beim Verschicken von PMs
Verfasst: 28.11.2011 18:45
von canonknipser
Mit ein bisschen Englishkenntnis tun das die
Coding Guidelines für dich

Re: Fehlermeldung beim Verschicken von PMs
Verfasst: 28.11.2011 20:43
von Secretly
ah danke für den Link

Re: Fehlermeldung beim Verschicken von PMs
Verfasst: 25.10.2013 23:55
von Scanialady
kann es sein, dass dieser Fehler noch immer vorhanden ist - auch in 3.0.12?
genau diese Fehlermeldung überraschte KillBill und mich nämlich gestern im Arcade Support, garniert von 80mal versandten PNs.
Wobei er sagt: es passiert nur, wenn die Standardsprache ENGLISCH ist. Es passiert nicht mit Standard ungarisch. Der Style dort ist übrigens prosilver SE
Er hat den Fehler identifiziert - kann es aber nicht so ganz toll in die englische oder womöglich deutsche Sprache umsetzen. Falls jemand ungarisch spricht:
http://phpbb.hu/forum/tema/6289
falls nicht, sind vielleicht zumindest die Codebrocken interessant, den Rest macht Google
Hier ein paar Brocken dessen, was er versucht hat mir (auf englisch) dazu zu erklären - verstehe ja selber nicht viel davon, also nur zur Info:
KillBill:
bbcode html error only en default lang. Hungary no problem.
no lang file
template files, missing bbcode.html
error
delete $user->theme
$user->theme['template_inherits_id']
send pm function
'template_inherits_id'
value 1
search file prosilver
value 0
search file prosilver_se
template_inherits_id send pm reset value
template.php
function _tpl_load(&$handle)
overrite value = null
error -> bbcode html search prosilver_se dir
Ich hoffe, ihr könnt mehr damit anfangen als ich

Ansonsten: KillBill fragen.

Re: Fehlermeldung beim Verschicken von PMs
Verfasst: 26.10.2013 00:35
von Miriam
Ich rate mal jetzt wild drauf los:
Finde in der /includes/bbcode.php
Code: Alles auswählen
if (isset($user->theme['template_inherits_id']) && $user->theme['template_inherits_id'])
{
$this->template_filename = $phpbb_root_path . 'styles/' . $user->theme['template_inherit_path'] . '/template/bbcode.html';
if (!@file_exists($this->template_filename))
{
trigger_error('The file ' . $this->template_filename . ' is missing.', E_USER_ERROR);
}
}
davor füge ein:
Code: Alles auswählen
if (empty($user->theme['template_inherits_id']) && !empty($template->orig_tpl_inherits_id))
{
$user->theme['template_inherits_id'] = $template->orig_tpl_inherits_id;
}
Oder Du packst einfach die bbcode.html des prosilvers auch in das Verzeichnis /styles/prosilver_se/template.
Re: Fehlermeldung beim Verschicken von PMs
Verfasst: 26.10.2013 10:55
von Scanialady
danke Miriam - ich selbst habe das Problem mit der inheritance Funktion nicht, weil bei mir prosilver installiert und aktiv ist.
Auf KillBills Seite ist offenbar lediglich prosilver_SE installiert, was den Fehler hervorgerufen hat.
Der Eintrag
Code: Alles auswählen
if (empty($user->theme['template_inherits_id']) && !empty($template->orig_tpl_inherits_id))
{
$user->theme['template_inherits_id'] = $template->orig_tpl_inherits_id;
}
wird von ihm auch angeraten - in dem Fall für Arcade (phpBBArcade.php), soll aber auch mit anderen MODs in den entsprechenden Dateien funktionieren. Denn das Problem trat ja auch schon unsortiert bei anderen Modifikationen auf. Es soll mit der Funktion "generate_text_for_display function" zusammenhängen, so dass alle Mods davon betroffen sind, die diese verwenden. Wie mChat z.B. oder User Blog Mod.
Ich würde es schön finden, wenn das Problem phpBB-seitig gelöst würde. Es ist ja offenbar schon lange bekannt, sehe sogar einen Eintrag im Bugtracker.
Dir Miriam erstmal danke für deine Antwort.
edit://
KillBill dankt für deine Idee und hat es ausprobiert. Es funktioniert prima, wenn man in der bbcode.php den Code einfügt nach
Code: Alles auswählen
$this->template_bitfield = new bitfield($user->theme['bbcode_bitfield']);
$this->template_filename = $phpbb_root_path . 'styles/' . $user->theme['template_path'] . '/template/bbcode.html';