vb.org Archive

vb.org Archive (https://vborg.vbsupport.ru/index.php)
-   vBulletin 3.5 Styles (https://vborg.vbsupport.ru/forumdisplay.php?f=161)
-   -   Kirsch (https://vborg.vbsupport.ru/showthread.php?t=104744)

evenmonkeys 01-26-2006 05:30 PM

Well, the only two places it's going to do that is in the actual template or the replacement variable. Take a look in the FORUMDISPLAY template. Search for newthread.gif and see if you can find it in there. Maybe it specified itself as 25x25 in there. Though I have no idea how. It could also be occuring because of parents templates.

I also had a problem like that when I made it on my own site. There was no logical explination for why something was happening. I ended up hard-coding something I didn't want to. However, it made it work and it didn't really bother anything.

Let me know if that works for you. If not, I might be able to think of some other ideas.

MattKitchen 01-26-2006 05:31 PM

Alright, i re-installed the template and it looks good again - must have been something i did somewhere.... thanks neway.

evenmonkeys 01-26-2006 11:49 PM

Haha. No problem.

darkman 01-27-2006 07:28 PM

I really like this skin alot.
Very clean looking.
Thank you very much.

*installs

ProjectTR 01-28-2006 12:04 PM

and additional 2 steps to view paperclip pic.

1. change name /kirsch/misc/paperclip.gif to paperclip.png
2. open threadbits templates
find
paperclip.gif
change it paperclip.png

thanks..

evenmonkeys 01-29-2006 01:22 AM

Wha? That should already be working. >_>

croberts 02-02-2006 09:09 PM

I installed the style and it looks great. I am having a problem with the plug in though.

I created a new plugin, cut and pasted all the XML code in the "plugin PHP code" box and edited the path line. I have the hook location set to ajax start. The plugin is active.
The transparancy is not working.

Is there something I missed? I like this look and would really like to get it fully working. Thanks, Chris

Win 2003 Server, Vbulletin 3.5.3, IE 6.0

evenmonkeys 02-02-2006 09:15 PM

Your hook location is incorrect. Your hook location needs to be global_complete. The plugin needs to be as follows:
PHP Code:

 $output replacePngTags($output);  
function 
replacePngTags($x,$img_path='images/kirsch/',$sizeMeth='scale',$inScript=FALSE){
    
$arr2=array();
    
// make sure that we are only replacing for the Windows versions of Internet
    // Explorer 5.5+
    
$msie='/msie\s(5\.[5-9]|[6-9]\.[0-9]*).*(win)/i';
    if( !isset(
$_SERVER['HTTP_USER_AGENT']) ||
        !
preg_match($msie,$_SERVER['HTTP_USER_AGENT']) ||
        
preg_match('/opera/i',$_SERVER['HTTP_USER_AGENT']))
        return 
$x;
    if(
$inScript){
        
// first, I want to remove all scripts from the page...
        
$saved_scripts=array();
        
$placeholders=array();
        
preg_match_all('`<script[^>]*>(.*)</script>`isU',$x,$scripts);
        for(
$i=0;$i<count($scripts[0]);$i++){
            
$x=str_replace($scripts[0][$i],'replacePngTags_ScriptTag-'.$i,$x);
            
$saved_scripts[]=$scripts[0][$i];
            
$placeholders[]='replacePngTags_ScriptTag-'.$i;
        }
    }
    
// find all the png images in backgrounds
    
preg_match_all('/background-image:\s*url\(([\\"\\\']?)([^\)]+\.png)\1\);/Uis',$x,$background);
    for(
$i=0;$i<count($background[0]);$i++){
        
// simply replace:
        //  "background-image: url('image.png');"
        // with:
        //  "filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(
        //      enabled=true, sizingMethod=scale, src='image.png');"
        // I don't think that the background-repeat styles will work with this...
        
$x=str_replace($background[0][$i],'filter:progid:DXImageTransform.'.
                
'Microsoft.AlphaImageLoader(enabled=true, sizingMethod='.$sizeMeth.
                
', src=\''.$background[2][$i].'\');',$x);
    }
    
// find all the IMG tags with ".png" in them
    
$pattern='/<(input|img)[^>]*src=([\\"\\\']?)([^>]*\.png)\2[^>]*>/i';
    
preg_match_all($pattern,$x,$images);
    for(
$num_images=0;$num_images<count($images[0]);$num_images++){
        
// for each found image pattern
        
$original=$images[0][$num_images];
        
$quote=$images[2][$num_images];
        
$atts=''$width=0$height=0$modified=$original;
        
// We do this so that we can put our spacer.png image in the same
        // directory as the image - if a path wasn't passed to the function
        
if(empty($img_path)){
            
$tmp=split('[\\/]',$images[3][$num_images]);
            
$this_img=array_pop($tmp);
            
$img_path=join('/',$tmp);
            if(empty(
$img_path)){
                
// this was a relative URI, image should be in this directory
                
$tmp=split('[\\/]',$_SERVER['SCRIPT_NAME']);
                
array_pop($tmp);    // trash the script name, we only want the directory name
                
$img_path=join('/',$tmp).'/';
            }else{
                
$img_path.='/';
            }
        }else if(
substr($img_path,-1)!='/'){
            
// in case the supplied path didn't end with a /
            
$img_path.='/';
        }
        
// If the size is defined by styles, find them
        
preg_match_all(
            
'/style=([\\"\\\']).*(\s?width:\s?([0-9]+(px|%));).*'.
            
'(\s?height:\s?([0-9]+(px|%));).*\\1/Ui',
               
$images[0][$num_images],$arr2);
        if(
is_array($arr2) && count($arr2[0])){
            
// size was defined by styles, get values
            
$width=$arr2[3][0];
            
$height=$arr2[6][0];
            
// remove the width and height from the style
            
$stripper=str_replace(' ','\s','/('.$arr2[2][0].'|'.$arr2[5][0].')/');
            
// Also remove any empty style tags
            
$modified=preg_replace(
                
'`style='.$arr2[1][0].$arr2[1][0].'`i',
                
'',
                
preg_replace($stripper,'',$modified));
        }else{
            
// size was not defined by styles, get values from attributes
            
preg_match_all('/width=([\\"\\\']?)([0-9%]+)\\1/i',$images[0][$num_images],$arr2);
            if(
is_array($arr2) && count($arr2[0])){
                
$width=$arr2[2][0];
                if(
is_numeric($width))
                    
$width.='px';
    
                
// remove width from the tag
                
$modified=str_replace($arr2[0][0],'',$modified);
            }
            
preg_match_all('/height=([\\"\\\']?)([0-9%]+)\\1/i',$images[0][$num_images],$arr2);
            if(
is_array($arr2) && count($arr2[0])){
                
$height=$arr2[2][0];
                if(
is_numeric($height))
                    
$height.='px';
    
                
// remove height from the tag
                
$modified=str_replace($arr2[0][0],'',$modified);
            }
        }
        if(
$width==|| $height==0){
            
// width and height not defined in HTML attributes or css style, try to get
            // them from the image itself
            // this does not work in all conditions... It is best to define width and
            // height in your img tag or with inline styles..
            
if(file_exists($_SERVER['DOCUMENT_ROOT'].$img_path.$images[3][$num_images])){
                
// image is on this filesystem, get width & height
                
$size=getimagesize($_SERVER['DOCUMENT_ROOT'].$img_path.$images[3][$num_images]);
                
$width=$size[0].'px';
                
$height=$size[1].'px';
            }else if(
file_exists($_SERVER['DOCUMENT_ROOT'].$images[3][$num_images])){
                
// image is on this filesystem, get width & height
                
$size=getimagesize($_SERVER['DOCUMENT_ROOT'].$images[3][$num_images]);
                
$width=$size[0].'px';
                
$height=$size[1].'px';
            }
        }
        
        
// end quote is already supplied by originial src attribute
        
$replace_src_with=$quote.$img_path.'spacer.png'.$quote.' style="width: '.$width.
            
'; height: '.$height.'; filter: progid:DXImageTransform.'.
            
'Microsoft.AlphaImageLoader(src=\''.$images[3][$num_images].'\', sizingMethod='.
            
$sizeMeth.');"';
        
// now create the new tag from the old
        
$new_tag=str_replace($quote.$images[3][$num_images].$quote,$replace_src_with,
            
str_replace('  ',' ',$modified));
        
// now place the new tag into the content
        
$x=str_replace($original,$new_tag,$x);
    }
    
    if(
$inScript){
        
// before the return, put the script tags back in. (I was having problems when there was
        // javascript that had image tags for PNGs in it when using this function...
        
$x=str_replace($placeholders,$saved_scripts,$x);
    }
    
    return 
$x;



croberts 02-03-2006 05:25 AM

Thank you for the quick answer. I'll try it out.

evenmonkeys 02-03-2006 11:21 PM

Actually, the top three lines of the plug-in needs to be this:

PHP Code:

 $output replacePngTags($output);  
function 
replacePngTags($x,$img_path='http://yoursite.com/images/kirsch/',$sizeMeth='scale',$inScript=FALSE){
    
$arr2=array(); 

This is needed because certain modifications will not see the images folder correctly. So set the image location to http://yoursite.com/images/kirsch/.


All times are GMT. The time now is 11:57 PM.

Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2025, vBulletin Solutions Inc.

X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.01214 seconds
  • Memory Usage 1,827KB
  • Queries Executed 10 (?)
More Information
Template Usage:
  • (1)ad_footer_end
  • (1)ad_footer_start
  • (1)ad_header_end
  • (1)ad_header_logo
  • (1)ad_navbar_below
  • (2)bbcode_php_printable
  • (1)footer
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (6)option
  • (1)pagenav
  • (1)pagenav_curpage
  • (4)pagenav_pagelink
  • (1)pagenav_pagelinkrel
  • (1)post_thanks_navbar_search
  • (1)printthread
  • (10)printthreadbit
  • (1)spacer_close
  • (1)spacer_open 

Phrase Groups Available:
  • global
  • postbit
  • showthread
Included Files:
  • ./printthread.php
  • ./global.php
  • ./includes/init.php
  • ./includes/class_core.php
  • ./includes/config.php
  • ./includes/functions.php
  • ./includes/class_hook.php
  • ./includes/modsystem_functions.php
  • ./includes/class_bbcode_alt.php
  • ./includes/class_bbcode.php
  • ./includes/functions_bigthree.php 

Hooks Called:
  • init_startup
  • init_startup_session_setup_start
  • init_startup_session_setup_complete
  • cache_permissions
  • fetch_threadinfo_query
  • fetch_threadinfo
  • fetch_foruminfo
  • style_fetch
  • cache_templates
  • global_start
  • parse_templates
  • global_setup_complete
  • printthread_start
  • pagenav_page
  • pagenav_complete
  • bbcode_fetch_tags
  • bbcode_create
  • bbcode_parse_start
  • bbcode_parse_complete_precache
  • bbcode_parse_complete
  • printthread_post
  • printthread_complete