Avatar

Dialogtext erscheint nicht (Technics)

by Mardor ⌂, Thursday, March 15, 2018, 14:04 (2239 days ago) @ Mardor

Hm, ich dachte, ich hätte verstanden, wie die BBCode-Buttons funktionieren, aber irgendwas fehlt noch. Ich bekomme es einfach nicht hin, dass im Dialogfenster, in dem eine URL eingegeben werden soll, ein benutzerdefinierter Text erscheint, den ich vorher in die german.lang eingetragen habe. Die Dialogbox ist - mit Ausnahme eines sinnfreien Hinweistextes, der bei mir in allen Button-Dialogen auftaucht und den ich gern loswäre - leer:
[image]

Ich wollte, dass in meinem Forum Google-plus-Postings eingebunden werden können. Das funktioniert nun auch und das Ergebnis sieht so aus: https://bauforum.wirklichewelt.de/index.php?id=11440

Ich hätte es aber gern, dass beim Druck des neuen BBCode-Buttons ein hilfreicherer Text als oben angezeigt wird.

Sechs notwendige Schritte zur Button-Einbindung habe ich herausgefunden, ein siebter scheint noch zu fehlen. Folgendes habe ich unternommen:

Datenbank:

INSERT INTO `Datenbankname`.`mlf2_settings` (`name`, `value`) VALUES ('bbcode_gplus', '1');
 

german.lang:

[posting]
bbcode_gplus_label =              'Google+'
bbcode_gplus_title =              'Google+ Posting einfügen'
bbcode_gplus_instruction =        '[googleplus]https://plus.google.com/+example/posts/3i14I5g26S[/googleplus]'
[general]
bbcode_gplus_code =               'Link zum Eintrag, z.B. https://plus.google.com/+example/posts/3i14I5g26S' 

Der Text bbcode_gplus_instruction wird anscheinend überhaupt nicht verwendet, kann das sein?

Subtemplate posting.inc.tpl (dort die gewünschte Button-Position suchen):

{if $settings.bbcode_gplus}
<dt id="googleplus" title="{#bbcode_gplus_label#}">{#bbcode_gplus_title#}</dt>
<dd>{#bbcode_gplus_instruction#}</dd>
{/if}

functions.inc.php Teil 1:

/**
 * processes BBCode googleplus
 */
function do_bbcode_gplus($action, $attributes, $content, $params, $node_object)
 {
  global $settings;
  if(!is_valid_url($content))
  {
   return false;
  }
 else
   {
 return '<div class="g-post" data-href="'.htmlspecialchars($content).'"></div><br /><a href="'.htmlspecialchars($content).'">Link zum Artikel auf Google+</a><script async src="https://apis.google.com/js/platform.js" defer></script>';
   }
 }

functions.inc.php Teil 2, in function html_format:

if ($settings['bbcode_gplus']==1)
 {
  $bbcode->addCode ('googleplus', 'usecontent?', 'do_bbcode_gplus', array ('usecontent_param' => 'default'), 'link', array ('block', 'quote'), array ('link'));
 }

posting.js, in var createBBCodeButton = function(button, list) …

case "googleplus":
bbCodeButton = new BBCodePromtButton( button, lang["bbcode_gplus_code"] ); 
break;

Wer kann mir sagen, was ich vergessen habe?


Complete thread:

 RSS Feed of thread