ilch Forum » Ilch Clan 1.1 » Module und Modifikationen » Bildgrößenberechnug für BBCode2.0 mit JS

Geschlossen
  1. #1
    User Pic
    Mairu Coder
    Registriert seit
    16.06.2006
    Beiträge
    15.334
    Beitragswertungen
    386 Beitragspunkte
    Also ich hab mich nochmal kurz damit auseinander gesetzt und ich denke, es ist die serverschonendste Variante und auch die die bei funpic und Co funktionieren sollte.

    Dazu müsstest ihr in der include/includes/js/BBCodeGlobals.js folgende Funktion einfügen
      function SetSize(img,maxw,maxh){
      var w = img.width;
      var h = img.height;
      if (w>maxw) {
        h = maxw * h / w;
        w = maxw;
        }
      if (h>maxh) {
        w = maxh * w / h;
        h = maxh;
        }
      img.width = w;
      img.height = h;  
      }


    Und dann noch in der include/includes/class/bbcode.php
    Die Funktion
    	//> Bilder auf Maximale größen überprüfen.
    	function _img($string) {
    		//> Information des Bildes Laden.
    		$img_info = @getimagesize($string);  
    		
    		if(!function_exists(getimagesize) || empty($img_info[0])) {
    			$image = "<img src=\"".$string."\" alt=\"\" title=\"\" border=\"0\">"; 
    		} else {
    			if($img_info[1] <= $this->info['ImgMaxHoehe'] && $img_info[0] <= $this->info['ImgMaxBreite']) {
    				$image = "<img src=\"".$string."\" ".$img_info[3]." alt=\"\" title=\"\" border=\"0\">"; 
    			} else {
    				$img_width = $this->info['ImgMaxBreite'] / $img_info[0];
    				$img_height = $this->info['ImgMaxHoehe'] /$img_info[1];
    				if($img_width < $img_height) {
    					$new_width = $img_info[0] * $img_width;
    					$new_height = $img_info[1] * $img_width;  
    				} else {
    					$new_width = $img_info[0] * $img_height;
    					$new_height = $img_info[1] * $img_height;   
    				}  
    			
    				$image = "<a href=\"".$string."\" target=\"_BLANK\"><img src=\"".$string."\" width=\"".sprintf("%00d",$new_width)."\" height=\"".sprintf("%00d",$new_height)."\" alt=\"\" title=\"\" border=\"0\"></a>"; 
    			}
    		}
    		
    		return $image;
    	}
    durch diese hier ersetzen
    	//> Bilder auf Verkleinern via Javascript überprüfen.
    	function _img($string) {
        $image = '<img src="'.$string.'" alt="" title="" border="0" onload="SetSize(this,'.$this->info['ImgMaxBreite'].','.$this->info['ImgMaxHoehe'].');"/>'; 
    	  return $image;
    	}


    Ich hab dies auch in den BBCode 2.0 für 1.1D mit integriert. Bei Fehlern bitte hier posten.


    verwendete ilchClan Version: 1.1
    Und auch immer mal ein Blick auf die FAQ werfen. | Mairus Ilchseite
    0 Mitglieder finden den Beitrag gut.
  2. #2
    User Pic
    NoSelf Mitglied
    Registriert seit
    19.05.2006
    Beiträge
    37
    Beitragswertungen
    0 Beitragspunkte
    Funzt bei mir granicht.

    Bilder werden in orginal größe angezeigt

    Trotzdem THX
    0 Mitglieder finden den Beitrag gut.
  3. #3
    User Pic
    timosy Mitglied
    Registriert seit
    26.11.2006
    Beiträge
    175
    Beitragswertungen
    0 Beitragspunkte
    	//> Bilder auf Maximale größen überprüfen.
    
    	function _img($string) {
    		//> Information des Bildes Laden.
    		$ws = array('http', 'www.');
    		if ((function_exists('getimagesize') AND ((in_array(strtolower(substr($string,0,4)),$ws) AND ini_get('allow_url_fopen')) OR !in_array(strtolower(substr($string,0,4)),$ws)))) {
        $img_info = @getimagesize($string); 
        	if($img_info[1] <= $this->info['ImgMaxHoehe'] && $img_info[0] <= $this->info['ImgMaxBreite']) {
    				$image = "<img src=\"".$string."\" ".$img_info[3]." alt=\"\" title=\"\" border=\"0\">"; 
    			  }
          else {
    				$img_width = $this->info['ImgMaxBreite'] / $img_info[0];
    				$img_height = $this->info['ImgMaxHoehe'] /$img_info[1];
    				if($img_width < $img_height) {
    					$new_width = $img_info[0] * $img_width;
    					$new_height = $img_info[1] * $img_width;  
    				  }
            else {
    					$new_width = $img_info[0] * $img_height;
    					$new_height = $img_info[1] * $img_height;   
    				  }  
    				$image = "<a href=\"".$string."\" target=\"_BLANK\"><img src=\"".$string."\" width=\"".sprintf("%00d",$new_width)."\" height=\"".sprintf("%00d",$new_height)."\" alt=\"\" title=\"\" border=\"0\"></a>"; 
    			} 
    		}
    		else {
    		  $css2 = FALSE;
    		  $css2_browser = array ("Firefox", "Opera", "Netscape6/6", "Netscape/7", "Netscape/8", "Safari/3", "Safari/4");
          foreach ($css2_browser as $b) {
            if (strpos($_SERVER['HTTP_USER_AGENT'],$b)) {
              $css2 = TRUE;
              break;
              }      
            }     
          $image = "<img src=\"".$string."\" alt=\"\" title=\"\" border=\"0\" style=\"".($css2 ? 'max-height:'.$this->info['ImgMaxHoehe'].'px; max-width='.$this->info['ImgMaxBreite'].'px;' : 'height:'.$this->info['ImgMaxHoehe'].'px; width='.$this->info['ImgMaxBreite'].'px;')."\">"; 
    			}
    		return $image;
    	}


    hab aktuell den drinnen und er funktioniert auch bei funpic, blos werden die bilder nicht mit dem original verlinkt...könnt mir jemand sagen warum ned?
    0 Mitglieder finden den Beitrag gut.
  4. #4
    User Pic
    Mairu Coder
    Registriert seit
    16.06.2006
    Beiträge
    15.334
    Beitragswertungen
    386 Beitragspunkte
    @NoSelf hast du die BBCodeGlobals.js auch in deiner index.htm eingetragen? Und auch Cache geleert, damit die Datei (BBCodeGlobals.js) neugeladen wird.

    @timosy Das verlinken ist dir selbst überlassen, es könnte ja auch sein, dass man nicht zum Original, sondern wo anders hinlinken will, wenn du zum Original linken willst dann kannst du das so machen
    [url=http://www.bild.de/bild.jpg][img]http://www.bild.de/bild.jpg[/img][/url]



    Zuletzt modifiziert von Mairu am 17.01.2007 - 19:07:01
    Und auch immer mal ein Blick auf die FAQ werfen. | Mairus Ilchseite
    0 Mitglieder finden den Beitrag gut.
  5. #5
    User Pic
    timosy Mitglied
    Registriert seit
    26.11.2006
    Beiträge
    175
    Beitragswertungen
    0 Beitragspunkte
    hmm ja ach so ist klar ...ach hatte gedacht das das vorgesehen war aber wenn man sich den code so anschaut ^^ stimmt...

    man kann ja immer noch >>>rechte maustaste>>>Grafik anzeigen klicken (aber ob des alle bei mir checken :S)


    Zuletzt modifiziert von timosy am 17.01.2007 - 19:12:24
    0 Mitglieder finden den Beitrag gut.
  6. #6
    User Pic
    Mairu Coder
    Registriert seit
    16.06.2006
    Beiträge
    15.334
    Beitragswertungen
    386 Beitragspunkte
    Wenn du es fest verlinkt haben willst, kannst du ja auch
    return "<a href=\"$string\">$image</a>";
    versuchen.


    Zuletzt modifiziert von Mairu am 17.01.2007 - 19:23:03
    Und auch immer mal ein Blick auf die FAQ werfen. | Mairus Ilchseite
    0 Mitglieder finden den Beitrag gut.
  7. #7
    User Pic
    timosy Mitglied
    Registriert seit
    26.11.2006
    Beiträge
    175
    Beitragswertungen
    0 Beitragspunkte
    danke!

    hmm jetzt kann ich mich ned entscheiden...
    0 Mitglieder finden den Beitrag gut.
  8. #8
    User Pic
    NoSelf Mitglied
    Registriert seit
    19.05.2006
    Beiträge
    37
    Beitragswertungen
    0 Beitragspunkte
    ZitatZitat geschrieben von Mairu

    @NoSelf hast du die BBCodeGlobals.js auch in deiner index.htm eingetragen? Und auch Cache geleert, damit die Datei (BBCodeGlobals.js) neugeladen wird.


    Wie in die Index.htm?

    Ne hab ich leider nicht. Wusste ich ich nicht.

    Was muss ich denn da eintragen??
    0 Mitglieder finden den Beitrag gut.
  9. #9
    User Pic
    Mairu Coder
    Registriert seit
    16.06.2006
    Beiträge
    15.334
    Beitragswertungen
    386 Beitragspunkte
    Das steht in der Anleitung zur BBCode Installation, sonst funktioniert auch der Klapptext nicht.

    <script type='text/javascript' src='include/includes/js/BBCodeGlobal.js'></script>

    Kannst du direkt über </head> einfügen.


    Zuletzt modifiziert von Mairu am 18.01.2007 - 12:00:10
    Und auch immer mal ein Blick auf die FAQ werfen. | Mairus Ilchseite
    0 Mitglieder finden den Beitrag gut.
  10. #10
    User Pic
    lordrepha Mitglied
    Registriert seit
    11.03.2006
    Beiträge
    1.362
    Beitragswertungen
    22 Beitragspunkte
    also bei mir geht keins von beiden Mairu bei deinem script werden die Img Bilder immer noch in original grösse dargestellt die scr bilder gehen aber... eigentlich bräuchte ich nur die scr bilder nur wenn ich den img button ruasmache sind in der signatur auch keine Img erlaubt wenn mir einer sagt wie ich die Bilder erlauben kann in der signatur würde mir das schon reichen oder wie ich den Button Img rausbekomme im forum beim antworten
    0 Mitglieder finden den Beitrag gut.
  11. #11
    User Pic
    Mairu Coder
    Registriert seit
    16.06.2006
    Beiträge
    15.334
    Beitragswertungen
    386 Beitragspunkte
    Und ich kann dir sofort nach Besuch deiner Seite sagen, dass du keine der beiden Javascript Dateien in dein Design eingebunden hast und es deswegen auch nicht funktionieren kann.
    Und auch immer mal ein Blick auf die FAQ werfen. | Mairus Ilchseite
    0 Mitglieder finden den Beitrag gut.
  12. #12
    User Pic
    lordrepha Mitglied
    Registriert seit
    11.03.2006
    Beiträge
    1.362
    Beitragswertungen
    22 Beitragspunkte
    ohh man was habe ich den schon wieder falsch gemacht.....

    ok ich habe es in der index html war die java datei an der Falschen stelle eingetragen

    Sorry und danke an Mairu


    Zuletzt modifiziert von lordrepha am 30.01.2007 - 17:20:46
    0 Mitglieder finden den Beitrag gut.
  13. #13
    User Pic
    lordrepha Mitglied
    Registriert seit
    11.03.2006
    Beiträge
    1.362
    Beitragswertungen
    22 Beitragspunkte
    habe letzten die index mal wieder in meiner dummheit übberschrieben code steht drinne nur leider geht es nicht..

    <html>
    
    <head>
    <title>GW-Buendnis.de</title>
    <link rel="stylesheet" type="text/css" href="include/designs/design_23/style.css">
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    
    <style type="text/css">
    
    <!--
    th {
    	color: #000000;
    }
    .Stil2 {
    	color: #fff9bc;
    	line-height: 20px;
    }
    .Stil3 {
    	color: #FFFFFF;
    	font-weight: bold;
    }
    body,td,th {
    	color: #FFFFFF;
    }
    -->
    </style>
    <script type='text/javascript' src='include/includes/js/BBCodeGlobal.js'></script>
    </head>
    
    <body>
    <table width="452" border="0">
      <tr>
        <td bgcolor="#FFFFFF">{_boxes_vtec-loginh}</td>


    wäre cool wenn mir jemand unter die arme greifen könnte.
    0 Mitglieder finden den Beitrag gut.
  14. #14
    User Pic
    Mairu Coder
    Registriert seit
    16.06.2006
    Beiträge
    15.334
    Beitragswertungen
    386 Beitragspunkte
    Also bei deiner Seite ist es eben nicht so, sondern da hast du es im style drin, wo es nicht geht, weiter hast du da vor <html> mehrere Scriptanweisungen, solltest du mal ändern.
    Und auch immer mal ein Blick auf die FAQ werfen. | Mairus Ilchseite
    0 Mitglieder finden den Beitrag gut.
  15. #15
    User Pic
    lordrepha Mitglied
    Registriert seit
    11.03.2006
    Beiträge
    1.362
    Beitragswertungen
    22 Beitragspunkte
    ich habe nun etwas aufgeräumt und das gemacht was du mir empfohlen hast
    <html>
    <head>
    <title>GW Fan &amp; Buendnisseite</title>
    
    <link rel="stylesheet" type="text/css" href="include/designs/design_24/style.css">
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"><style type="text/css">
    <!--
    .Menuheader
    {
    	font-family: Verdana, Arial, Helvetica, sans-serif;
    	font-size:12px;
    	font-weight:bold;
    	line-height:24px;
    	background: url(include/designs/design_24/change/boxheader.gif);
    	background-repeat:no-repeat;
    }
    .Midboxheader
    {
    	font-family: Verdana, Arial, Helvetica, sans-serif;
    	font-size:12px;
    	font-weight:bold;
    	color:#EEEEEE;
    	line-height:24px;
    	background: url(include/designs/design_24/change/midboxheader.gif);
    	background-repeat:no-repeat;
    }
    .Hauptboxheader
    {
    	font-family: Verdana, Arial, Helvetica, sans-serif;
    	font-size:12px;
    	font-weight:bold;
    	color:#EEEEEE;
    	line-height:24px;
    	background: url(include/designs/design_24/change/hauptboxheader.gif);
    	background-repeat:no-repeat;
    }
    
    .Menuitem
    {
    	font-size: 12px;
    	background: url(include/designs/design_24/change/boxmitte.gif);
    	background-repeat: repeat-y;
    }
    
    .Midboxitem
    {
    	font-size: 12px;
    	background: url(include/designs/design_24/change/midboxmitte.gif);
    	background-repeat: repeat-y;
    	padding-left:10;
    }
    .Hauptboxitemheader
    {
    	vertical-align:top;
    	font-size: 12px;
    	background: url(include/designs/design_24/change/hauptboxmitteheader.gif);
    	background-repeat: no-repeat;
    	padding-left:5;
    	padding-right:5;
    }
    .Hauptboxitem
    {
    	vertical-align:top;
    	background-image: url(include/designs/design_24/change/hauptboxmitte.gif);
    	background-repeat: repeat-y;
    }
    .author
    {
    	font-size: 9px;
    	color: #EEEEEE;
    	background-color: #222222;
    	text-align: center;
    }
    td.headerspace
    {
    	line-height:250px;
    }
    
    #poem{
    	width:500px;
    	color:#CCCCCC;
    }
    
    table.run
    {
    	top: -20px;
    }
    
    -->
    
    </style>
    <script type='text/javascript' src='include/includes/js/Interface.js'></script>
    <script type="text/javascript" src="include/includes/js/js/prototype.js"></script>
    <script type="text/javascript" src="include/includes/js/js/scriptaculous.js?load=effects"></script>
    <script type="text/javascript" src="include/includes/js/js/lightbox.js"></script>
    <script type='text/javascript' src='include/includes/js/BBCodeGlobal.js'></script>
    <link rel="stylesheet" href="include/includes/js/css/lightbox.css" type="text/css" media="screen" />
    <script type='text/javascript' src='include/includes/js/BBCodeGlobal.js'></script>
    </head>


    geht aber leider immer noch nicht.... man man man warum habe ich die blos überschrieben verdammt nochmal

    und ausserdem habe ich nun die original gepostet habe gestern irgendwie die total falsche index.htm gepostet.


    Zuletzt modifiziert von lordrepha am 05.06.2007 - 19:18:20
    0 Mitglieder finden den Beitrag gut.
  16. #16
    User Pic
    lordrepha Mitglied
    Registriert seit
    11.03.2006
    Beiträge
    1.362
    Beitragswertungen
    22 Beitragspunkte
    bin mit meinem latein am ende
    0 Mitglieder finden den Beitrag gut.
  17. #17
    User Pic
    Mairu Coder
    Registriert seit
    16.06.2006
    Beiträge
    15.334
    Beitragswertungen
    386 Beitragspunkte
    Was stimmt denn jetzt nicht?
    Und auch immer mal ein Blick auf die FAQ werfen. | Mairus Ilchseite
    0 Mitglieder finden den Beitrag gut.
  18. #18
    User Pic
    lordrepha Mitglied
    Registriert seit
    11.03.2006
    Beiträge
    1.362
    Beitragswertungen
    22 Beitragspunkte
    im ie werden bilder im forum in originalgrösse angezeigt oder wird es bei dir verkleinert dargestellt

    zb hier lordrepha.lo.funpic.de/legionofsun/index.php?forum-showposts-284

    Zuletzt modifiziert von lordrepha am 05.06.2007 - 22:21:52
    0 Mitglieder finden den Beitrag gut.
  19. #19
    User Pic
    Mairu Coder
    Registriert seit
    16.06.2006
    Beiträge
    15.334
    Beitragswertungen
    386 Beitragspunkte
    Ja wird es, das Problem wird sein, du benutzt den IE 6, der unterstützt diese css Befehle aber nicht, du kannst allerdings mal die Javascriptvariante testen, ist auch in der aktuellen Version, die man runterladen kann dabei.

    Edit: Ich sehe gerade der IE 7 auch nicht, schlecht.


    Zuletzt modifiziert von Mairu am 05.06.2007 - 22:25:16
    Und auch immer mal ein Blick auf die FAQ werfen. | Mairus Ilchseite
    0 Mitglieder finden den Beitrag gut.
  20. #20
    User Pic
    lordrepha Mitglied
    Registriert seit
    11.03.2006
    Beiträge
    1.362
    Beitragswertungen
    22 Beitragspunkte
    javascript variante??? und ich ahbe den ie 7.0


    Zuletzt modifiziert von lordrepha am 05.06.2007 - 22:26:52
    0 Mitglieder finden den Beitrag gut.
  21. #21
    User Pic
    Mairu Coder
    Registriert seit
    16.06.2006
    Beiträge
    15.334
    Beitragswertungen
    386 Beitragspunkte
    Naja eigentlich wird die hier im ersten Post beschrieben, bei dir wird das nicht benutzt.
    Und auch immer mal ein Blick auf die FAQ werfen. | Mairus Ilchseite
    0 Mitglieder finden den Beitrag gut.
  22. #22
    User Pic
    lordrepha Mitglied
    Registriert seit
    11.03.2006
    Beiträge
    1.362
    Beitragswertungen
    22 Beitragspunkte
    ok ich weiss woran es liegt ich habe die lightbox2.0 eingebunden die verlangt das man den code in der include/includes/ class/bbcode.php ändert. Diesen Code
    //> Screenshots darstellen.
    	function _screenshot($string) {
        $image = '<a href="'.$string.'" target="_blank"><img src="'.$string.'" alt="" title="" border="0" onload="SetSize(this,'.$this->info['ScreenMaxBreite'].','.$this->info['ScreenMaxHoehe'].');"/></a>';
        return $image;
    	}


    mit diesem code
    //> Screenshots darstellen.
            function _screenshot($string) {
                                    $image = "<a href=\"".$string."\" rel=\"lightbox\"><img src=\"".$string."\" style=\" max-width:".$this->info['ScreenMaxBreite']."px;\" max-height:".$this->info['ScreenMaxHoehe']."px;\" alt=\"\" title=\"\" border=\"0\"></a>";
           
                    return $image;
            }
    ersetzt. Die beiden codes sind nicht konform miteinander das bedeutet setzte ich den oberen ein wird im ie das bild verkleinert so wie es sein soll, aber die lightbox2.0 funktioniert nicht. drehe ich es um und setzte ich den unteren code ein wird das Bild nicht verkleinert aber die Lightbox funktioniert....

    Frage kann man nicht beides integrieren.
    0 Mitglieder finden den Beitrag gut.
  23. #23
    User Pic
    Mairu Coder
    Registriert seit
    16.06.2006
    Beiträge
    15.334
    Beitragswertungen
    386 Beitragspunkte
    Du kannst bei dem unteren Code, statt max-height und max-width, height und width verwenden, außerdem sollte das mit der lightbix nur bei [*shot] kommen und nicht bei [img]
    Und auch immer mal ein Blick auf die FAQ werfen. | Mairus Ilchseite
    0 Mitglieder finden den Beitrag gut.
  24. #24
    User Pic
    lordrepha Mitglied
    Registriert seit
    11.03.2006
    Beiträge
    1.362
    Beitragswertungen
    22 Beitragspunkte
    danke so geht es ... einfach das max_ wegmachen perfekt danke mairu... auch das du dir gestern die nacht um die ohren geschlagen hast. img können bei mir die user nicht hochladen nur shots...von daher alles supi.

    PS: habe dich auf der startseite erwähnt... zwinker
    0 Mitglieder finden den Beitrag gut.
  25. #25
    User Pic
    Bookie500 Mitglied
    Registriert seit
    15.08.2006
    Beiträge
    12
    Beitragswertungen
    0 Beitragspunkte
    Gibt es schon eine Möglichkeit das BBCode2.0 H auch unter IE funktioniert, dass man bei Bilder die Seite nicht erst aktualisieren muss?


    Zuletzt modifiziert von Bookie500 am 28.10.2007 - 00:12:03
    0 Mitglieder finden den Beitrag gut.
  26. #26
    User Pic
    Mairu Coder
    Registriert seit
    16.06.2006
    Beiträge
    15.334
    Beitragswertungen
    386 Beitragspunkte
    Sollte mit der neusten Version eigentlich gehen.
    Und auch immer mal ein Blick auf die FAQ werfen. | Mairus Ilchseite
    0 Mitglieder finden den Beitrag gut.
  27. #27
    User Pic
    Bookie500 Mitglied
    Registriert seit
    15.08.2006
    Beiträge
    12
    Beitragswertungen
    0 Beitragspunkte
    Danke, für die schnelle Antwort. Es kommt auch nur hin und wieder vor, dass einige Bilder im IE angezeigt werden und einige nicht. Dürfte aber eine Macke von IE sein.

    Jetzt habe ich aber folgendes Problem, es wird bei der Vorschau im IE überhaupt nie Bilder angezeigt. :'(
    Bei Firefox ist alles korrekt.
    0 Mitglieder finden den Beitrag gut.
  28. #28
    User Pic
    Mairu Coder
    Registriert seit
    16.06.2006
    Beiträge
    15.334
    Beitragswertungen
    386 Beitragspunkte
    Du hast deine Seite nicht gepostet, somit kann ich nicht überprüfen, ob du vielleicht doch nicht die neuste Version hast.
    Und auch immer mal ein Blick auf die FAQ werfen. | Mairus Ilchseite
    0 Mitglieder finden den Beitrag gut.
  29. #29
    User Pic
    Bookie500 Mitglied
    Registriert seit
    15.08.2006
    Beiträge
    12
    Beitragswertungen
    0 Beitragspunkte
    Die Hompage ist externer Link

    In der Rubrik: Alles Mögliche: Witziges, Grüße, .... können auch Gäste posten.
    externer Link

    In der Linken Box "Ruf bei Fraktionen" sind alle Beiträge mit Bilder. Mir ist aufgefallen, wenn man das erstemal daraufklickt erscheinen die Bilder, jedoch wenn man den im Browser den Retourbotton drückt und dann wieder die Seite besucht die Bilder oft weg sind.

    Verwende: Ilch 1.1H und BBCode2.0_11H vom 25.03.2007.


    Zuletzt modifiziert von Bookie500 am 29.10.2007 - 12:19:24
    0 Mitglieder finden den Beitrag gut.
  30. #30
    User Pic
    Mairu Coder
    Registriert seit
    16.06.2006
    Beiträge
    15.334
    Beitragswertungen
    386 Beitragspunkte
    Joa das ist nicht die neuste.
    Und auch immer mal ein Blick auf die FAQ werfen. | Mairus Ilchseite
    0 Mitglieder finden den Beitrag gut.
Geschlossen

Zurück zu Module und Modifikationen

Optionen: Bei einer Antwort zu diesem Thema eine eMail erhalten