|
|
Latest News |
Latest Threads |
|
 |
56.057 Posts & 4.945 Themen in 78 Foren |
|
|
|
 |
Forensuche |
|
Suchbegriff |
Benutzerauswahl |
Ergebnisse anzeigen |
 |
 |
BBcode Bildergröße 8 Beiträge in diesem Thema |
|
|
 |
|
 |
25.02.2018 - 10:46 Uhr |
|
|
|
Huhu,
gibt es beim PHPKIT die Möglichkeit, eine Bildergröße mit einem BBcode anzugeben? In den News benutze ich oft Cover, die aber eine Größe von 400*400 haben und mit einem html Code muss ich sie dann auf 200*200 kleiner machen. Wäre schön wenn das auch ohne html gehen würde.
|
|
|
|
|
|
|
 |
WEBI Unberechenbares Urgestein |
 |
|
|
|
|
|
|
|
|
 |
25.02.2018 - 21:35 Uhr |
|
|
|
Moin, Moin,
vorab: Ungetestet!
Öffne die Datei pkinc/cfg/bbcode.php und suche nach folgendem:
| PHP-Quelltext array(
'tag' => 'img',
'html' => '<img border="0" alt="" src="{image}" />',
'type' => 'img'
), | |
ersetze es durch nachfolgendem:
| PHP-Quelltext array(
'tag' => 'img',
'html' => '<img border="0" alt="" src="{image}" {width} {height} />',
'type' => 'img'
), | |
Nun öffne die Datei pkinc/class/bbcode.php und suche nach diesem:
| PHP-Quelltext case 'img' :
if($this->parse_images)
{
#PHP 7.0 Upgrade Patch ANFANG
$pattern = "#\[(".$code['tag'].")]([^\"\?\&]*\.(gif|jpg|jpeg|bmp|png))([\s]?)\[\/\\1\]#iU";
$text = preg_replace_callback($pattern, function($match) use ($code) { return $this->replace_image($code['html'],$match[2]); }, $text);
#PHP 7.0 Upgrade Patch ENDE
}
break; #END case img | |
ersetze es mit diesem:
| PHP-Quelltext case 'img' :
if($this->parse_images)
{
$pattern = "#\[(".$code['tag'].")]([^\"\?\&]*\.(gif|jpg|jpeg|bmp|png))([\s]?)\[\/\\1\]#iU"; # Standard
$text = preg_replace_callback($pattern, function($match) use ($code) { return $this->replace_image($code['html'],$match[2]); }, $text);
$pattern = "#\[(".$code['tag'].")=(.*)\]([^\"\?\&]*\.(gif|jpg|jpeg|bmp|png))([\s]?)\[\/\\1\]#isuSU"; # ImageSize
$text = preg_replace_callback($pattern, function($match) use ($code) { return $this->replace_image($code['html'],$match[3],$match[2]); }, $text);
}
break;
#END case img | |
suche innerhalb obig genannter Datei weiter nach diesen Passagen:
| PHP-Quelltext protected function replace_image($html,$link)
{
if($this->imageresize)
{
$html = '<a href="'.$link.'" target="_blank">'.$html.'</a>';
$link = pkLinkFx('rsimg','src='.base64_encode($link));
}
$str = str_replace("{image}",$link,$html);
return $str;
}
#@END Method: replace_image | |
und ersetze jene mit diesen:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | | PHP-Quelltext protected function replace_image($html,$link,$size='')
{
$size = empty($size) ? '' : list($imgw, $imgh) = preg_split('`[Xx]`', $size);
$imgw = is_numeric($imgw) ? 'width="'.$imgw.'"' : '';
$imgh = is_numeric($imgh) ? 'height="'.$imgh.'"' : '';
if($this->imageresize)
{
$html = '<a href="'.$link.'" target="_blank">'.$html.'</a>';
$link = pkLinkFx('rsimg','src='.base64_encode($link));
}
$str = str_replace("{image}",$link,$html);
$str = str_replace("{width}",$imgw,$str);
$str = str_replace("{height}",$imgh,$str);
return $str;
}
#@END Method: replace_image | |
Das Ganze setzt voraus, dass der PHP 7.0 Upgrade Patch von Kit-Coding installiert ist.
Genutzt werden sollte das Ganze dann wie gewohnt mittels [*img]Pfad-zur-Grafik[*/img] oder eben mit Angaben der Größen, bspw. wie folgt: [*img=BreitexHöhe]Pfad-zur-Grafik[*/img] das X | x trennt hierbei die Breiten- und Höhenangabe voneinander. (BB-Codes ohne * verwenden.)
Wünsche einen angenehmen Wochenstart.
mfG
|
|
|
|
|
|
|
 |
|
 |
26.02.2018 - 12:26 Uhr |
|
|
|
Super, hat sofort auf Anhieb funktioniert 
Könnte man nur ein zusätzliches icon dafür anlegen, was genau neben dem anderen ist?
Wenn man darauf klickt, sollte als Standard es so ausgegeben werden:
[img=200x200][/img]
die Grafikurl gibt man einfach wie normal im Popup ein.
Wünsche dir auch einen guten Start in die Woche 
|
Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von DHH - 26.02.2018 - 12:27 Uhr |
|
|
|
|
|
|
|
 |
WEBI Unberechenbares Urgestein |
 |
|
|
|
|
|
|
|
|
 |
26.02.2018 - 22:01 Uhr |
|
|
|
Nein, soetwas ist natürlich unmöglich. 
Ich schlage vor, keine neue BB-Code-Grafik hierfür anzulegen, da letzten Endes auch der normale IMG-BB-Code hierfür genutzt wird.
Stattdessen nutzen und erweitern wir lediglich das PopUp des IMG-BB-Codes.
Öffne die Datei pk/fx/main.js und suche darin nach folgendem:
| Quellcode admincss = "<link rel='stylesheet' href='fx/default/css/main.css' type='text/css'>"; | |
Füge darüber dieses hinzu:
| Quellcode imagewidth = "Geben Sie hier die Breite der Grafik ein. (Optional)";
imageheight = "Geben Sie hier die H\u00F6he der Grafik ein. (Optional)";
imagepath = "Geben Sie hier den vollst\u00E4ndigen Pfad zur Grafik ein."; | |
Suche weiter nach diesem:
| Quellcode /* list */ | |
füge darüber dieses hinzu:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | | Quellcode function pkBBImage(bbcode) {
text = (pkBBSelected) ? pkBBSelected : '';
imgwidth = prompt(imagewidth, '');
imgheight = prompt(imageheight, '');
imgpath = prompt(imagepath, text);
if((imgwidth != '') && (imgheight != '') && (imgpath != '')) {
output = "["+bbcode+"="+imgwidth+"x"+imgheight+"]"+imgpath+"[/"+bbcode+"]";
pkBBCodeAdd(output);
}
else if((imgwidth == '') && (imgheight == '') && (imgpath != '')) {
output = "["+bbcode+"]"+imgpath+"[/"+bbcode+"]";
pkBBCodeAdd(output);
}
else {
output = "["+bbcode+"][/"+bbcode+"]";
pkBBCodeAdd(output);
}
} | |
Nun öffne die Datei fx/main.js und suche nach diesem:
| Quellcode listenwerte = "Geben Sie bitte die Listenpunkte ein und dr\u00FCcken Sie anschliessend OK.\r\nAlternativ k\u00F6nnen Sie 'Abbrechen' w\u00E4hlen, um die Liste direkt fertigzustellen."; | |
Füge darunter dieses hinzu:
| Quellcode imagewidth = "Geben Sie hier die Breite der Grafik ein. (Optional)";
imageheight = "Geben Sie hier die H\u00F6he der Grafik ein. (Optional)";
imagepath = "Geben Sie hier den vollst\u00E4ndigen Pfad zur Grafik ein."; | |
Suche weiter nach diesem:
| Quellcode /* list */ | |
füge darüber dieses hinzu:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | | Quellcode function pkBBImage(bbcode) {
text = (pkBBSelected) ? pkBBSelected : '';
imgwidth = prompt(imagewidth, '');
imgheight = prompt(imageheight, '');
imgpath = prompt(imagepath, text);
if((imgwidth != '') && (imgheight != '') && (imgpath != '')) {
output = "["+bbcode+"="+imgwidth+"x"+imgheight+"]"+imgpath+"[/"+bbcode+"]";
pkBBCodeAdd(output);
}
else if((imgwidth == '') && (imgheight == '') && (imgpath != '')) {
output = "["+bbcode+"]"+imgpath+"[/"+bbcode+"]";
pkBBCodeAdd(output);
}
else {
output = "["+bbcode+"][/"+bbcode+"]";
pkBBCodeAdd(output);
}
} | |
Weiter geht es innerhalb der Dateien pkinc/publictpl/format_text.htm sowie pkinc/admintpl/format_text.htm dort suchen wir nach diesem:
| Quellcode // pkinc/admintpl/format_text.htm
<td><a href="javascript:;" onclick="pkBBCode('IMG');" onfocus="blur();"><img src="./../fx/default/bbcode/img.gif" alt="Grafik einfuegen" /></a></td>
// pkinc/publictpl/format_text.htm
<td><a href="javascript:;" onclick="pkBBCode('IMG');" onfocus="blur();"><img src="fx/default/bbcode/img.gif" alt="Grafik einfuegen" /></a></td> | |
und ersetzen die jeweiligen Passagen hiermit:
| Quellcode // pkinc/admintpl/format_text.htm
<td><a href="javascript:;" onclick="pkBBImage('IMG');" onfocus="blur();"><img src="./../fx/default/bbcode/img.gif" alt="Grafik einfuegen" /></a></td>
// pkinc/publictpl/format_text.htm
<td><a href="javascript:;" onclick="pkBBImage('IMG');" onfocus="blur();"><img src="fx/default/bbcode/img.gif" alt="Grafik einfuegen" /></a></td> | |  |
Wenn alles glatt läuft, sollte nun bei dem Klick auf das IMG-BB-Code-Icon (welch' grandioses Wort - Doppelkupplungsgetriebe kann einpacken!) ein PopUp öffnen, welches die folgenden Werte der Grafik hinterfragt: Breite, Höhe und Pfad. Breite und Höhe wären hierbei optionale Angaben. Wird nur der Pfad hinterlegt wird wie gewohnt [*img]Pfad-zur-Grafik[*/img] ausgegeben. Bei Eingabe der Breiten- als auch Höhenwerte der Grafik (inkl. Pfadangabe) sollte die Ausgabe wie folgt aussehen: [*img=123x456]Pfad-zur-Grafik[*/img]. Bei fehlerhafter Eingabe erfolgt die Ausgabe [*img][*/img] ohne weiteren Angaben. Einzelne Werte, bspw. nur die Breite oder aber nur die Höhe, wird dabei nicht berücksichtigt. Die zwei bzw. eine Abfrage habe ich mir nun einmal geschenkt. Da er auch ohnehin, bei Angabe der Höhe diese als erste Angabe und somit als Breite verarbeiten würde. Auch ist es möglich, einen bereits publizierten Text zu markieren (in diesem Fall zum Beispiel einen Pfad) und diesen direkt als deklarierten Pfad bei Anklicken der IMG-BB-Code-Grafik zu hinterlegen.
Solltest du nun tatsächlich wünschen, dass grundsätzlich B:200 x H:200 als Standard festgelegt wird, könntest du auch innerhalb der obig genannten main.js-Dateien folgende Passagen abändern:
| Quellcode imgwidth = prompt(imagewidth, ''); // Statt '' => 200 einsetzen
imgheight = prompt(imageheight, ''); // Statt '' => 200 einsetzen
// Beispiel:
imgwidth = prompt(imagewidth, 200);
imgheight = prompt(imageheight, 200); | |
Alles verständlich? Alles funktionell? Na ich hoffe doch.
Nun ab in den Feierabend und eine gute Nachtruhe. 
mfG
|
|
|
|
|
|
|
 |
|
 |
27.02.2018 - 09:14 Uhr |
|
|
|
Hmm, irgendwo steckt ein Fehler. Habe mal alle Dateien hochgeladen. Selbst wenn ich drauf klicke, passiert nichts.

|
Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von DHH - 27.02.2018 - 09:14 Uhr |
|
|
|
|
|
|
|
 |
WEBI Unberechenbares Urgestein |
 |
|
|
|
|
|
|
|
|
 |
27.02.2018 - 17:54 Uhr |
|
|
|
Bei der Bearbeitung sehe ich bisher lediglich 2 kleine Fehler - innerhalb der beiden format_text.htm-Dateien. Allerdings auch nur den Pfad der BB-Code-Grafik betreffend. Bei dem Template innerhalb des Ordners admintpl/ fehlt dem eigentlichen Pfad vorweg ./../ und bei dem Template innerhalb des Ordners publictpl sind genau jene Zeichen zu viel. 
Nun aber zum eigentlichen Problem.
Hast du es bereits mit STRG+F5 (um den Cache zu leeren) versucht?
|
|
|
|
|
|
|
 |
|
 |
28.02.2018 - 08:03 Uhr |
|
|
|
Guten morgen 
Also das Strg+F5 hat schon mal dazu beigetragen, dass es nun mit der Größe usw. klappt. Nur wird das Bilder icon nicht mehr angezeigt.
|
|
|
|
|
|
|
 |
|
 |
28.02.2018 - 08:29 Uhr |
|
|
|
Hab ein bisschen runprobiert und nun wird auch die icon Grafik angezeigt 
Danke dir, nun geht alles 
|
Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von DHH - 28.02.2018 - 08:30 Uhr |
|
|
|
|
|
|
|
 |
Ähnliche Themen |
|
|
|
|
|
|
|
|