HTH-C.com - Forum
Latest News Latest Threads
Neuerung: Persönliche Galerie
Informationen zur Übernahme der Erweite..
HTH Blog - Version 2.0
#HTH.Systems - Betatester gesucht
Neueröffnung - PHPKit-Award.de
HTH Webchat v3
Letzter Beitrag Happy Birthday Bottyline Weiblicher Benutzer Heute, 0:00 Zeit der letzten Antwort
Letzter Beitrag Guter Host Anbieter [Welcher?] WEBI Männlicher Benutzer 17.07.2018 - 23:07 Zeit der letzten Antwort
Letzter Beitrag Herzlich Willkommen Botty Männlicher Benutzer 15.07.2018 - 11:47 Zeit der letzten Antwort
Letzter Beitrag Musik Band & Artisten Community Portal Marsmania Männlicher Benutzer 11.07.2018 - 23:46 Zeit der letzten Antwort
Letzter Beitrag Herzlichen Dank WEBI Marsmania Männlicher Benutzer 10.07.2018 - 13:52 Zeit der letzten Antwort
 36.460 Posts & 4.923 Themen in 78 Foren
Forenübersicht » Support / Hilfe » PHPKit 1.6.4 & 1.6.5 & 1.6.6 » Modifikationen » BBcode Bildergröße

BBcode Bildergröße
8 Beiträge in diesem Thema
 Seiten (1):    1  
25.02.2018 - 10:46 Uhr
Beitrag: #1
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.

 
Zum Anfang der Seite
25.02.2018 - 21:35 Uhr
Beitrag: #2
Moin, Moin,

vorab: Ungetestet!

Öffne die Datei pkinc/cfg/bbcode.php und suche nach folgendem:



1
2
3
4
5

PHP-Quelltext

array(
    
'tag'    => 'img',
    
'html'    => '<img border="0" alt="" src="{image}" />',
    
'type'    => 'img'
    
),
ersetze es durch nachfolgendem:



1
2
3
4
5

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:



1
2
3
4
5
6
7
8
9
10

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:



1
2
3
4
5
6
7
8
9
10
11

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:



1
2
3
4
5
6
7
8
9
10
11
12
13
14

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

 
Zum Anfang der Seite
26.02.2018 - 12:26 Uhr
Beitrag: #3
Super, hat sofort auf Anhieb funktioniert  Glücklich
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  Glücklich

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von DHH - 26.02.2018 - 12:27 Uhr
 
Zum Anfang der Seite
26.02.2018 - 22:01 Uhr
Beitrag: #4
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:



1

Quellcode

admincss "<link rel='stylesheet' href='fx/default/css/main.css' type='text/css'>";
Füge darüber dieses hinzu:



1
2
3

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:



1

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:



1

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:



1
2
3

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:



1

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:



1
2
3
4
5

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:



1
2
3
4
5

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:




1
2
3
4
5
6

Quellcode

 imgwidth  prompt(imagewidth,  ''); // Statt '' => 200 einsetzen
 
imgheight prompt(imageheight''); // Statt '' => 200 einsetzen

 // Beispiel:
 
imgwidth  prompt(imagewidth,  200);
 
imgheight prompt(imageheight200);

Alles verständlich? Alles funktionell? Na ich hoffe doch.
Nun ab in den Feierabend und eine gute Nachtruhe. zwinkern

mfG

 
Zum Anfang der Seite
27.02.2018 - 09:14 Uhr
Beitrag: #5
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
 
Zum Anfang der Seite
27.02.2018 - 17:54 Uhr
Beitrag: #6
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. zwinkern

Nun aber zum eigentlichen Problem.
Hast du es bereits mit STRG+F5 (um den Cache zu leeren) versucht?

 
Zum Anfang der Seite
28.02.2018 - 08:03 Uhr
Beitrag: #7
Guten morgen  Glücklich
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.

 
Zum Anfang der Seite
28.02.2018 - 08:29 Uhr
Beitrag: #8
Hab ein bisschen runprobiert und nun wird auch die icon Grafik angezeigt  Glücklich
Danke dir, nun geht alles  Glücklich

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von DHH - 28.02.2018 - 08:30 Uhr
 
Zum Anfang der Seite
 Seiten (1):    1  

Ähnliche Themen
 
Support Support » BBcode - Letzte Antwort von BuLLeT am 04.10.09, 00:18 BBcode  (04.10.09, 00:18)
Support Support » Scriptfenster BBcode - Letzte Antwort von archipage am 21.10.07, 21:00 Scriptfenster BBcode  (21.10.07, 21:00)
Support Support » BBCode Klapptext [1.6.5] - Letzte Antwort von Milano am 27.08.11, 16:38 BBCode Klapptext [1.6.5]  (27.08.11, 16:38)
Modifikationen Modifikationen » Problem mit BBCode Parse - Letzte Antwort von burtb_5544 am 02.09.08, 09:58 Problem mit BBCode Parse  (02.09.08, 09:58)
Modifikationen Modifikationen » BBCode Absatz html - Letzte Antwort von DHH am 24.01.14, 13:21 BBCode Absatz html  (24.01.14, 13:21)

HTH-C.com - Webmedien & Community