        

 function IncludeJavaScript(jsFile)
    {
      document.write('<script type="text/javascript" src="' + jsFile + '"></scr' + 'ipt>'); 
    }
     
    IncludeJavaScript('/resources/shared/scripts/google_banner.js'); 

var isiPopupOpen = false;

var Highlighter = new Class({

    /* implements */
    Implements: [Options],

    /* options */
    options: {
        autoUnhighlight: true,
        caseSensitive: false,
        elements: '*',
        className: '',
        onlyWords: true,
        tag: 'span'
    },

    /* initialization */
    initialize: function(options) {
        /* set options */
        this.setOptions(options);
        this.elements = $$(this.options.elements);
        this.words = [];
    },

    /* directs the plugin to highlight elements */
    highlight: function(words,elements,className) {

        /* figure out what we need to use as element(s) */
        var elements = $$(elements || this.elements);
        var klass = className || this.options.className;
        if (words.constructor === String) { words = [words]; }

        /* auto unhighlight old words? */
        if(this.options.autoUnhighlight) { this.unhighlight(); }

        /* set the pattern and regex */
        var pattern = '(' + words.join('|') + ')';
        pattern = this.options.onlyWords ? '\\b' + pattern + '\\b' : pattern;
        var regex = new RegExp(pattern, this.options.caseSensitive ? '' : 'i');

        /* run it for each element! */
        elements.each(function(el) { this.recurse(el,regex,klass); },this);

        /* make me chainable! */
        return this;
    },

    /* unhighlights items */
    unhighlight: function(words) {
        //var selector = this.options.tag + (word ? '[rel=' + word + ']' : '');
        if (words.constructor === String) { words = [words]; }
        words.each(function(word) {
            word = (this.options.caseSensitive ? word : word.toUpperCase());
            if(this.words[word]) {
                var elements = $$(this.words[word]);
                elements.set('class','');
                elements.each(function(el) {
                    var tn = document.createTextNode(el.get('text'));
                    el.getParent().replaceChild(tn,el);
                });
            }
        },this);
        return this;
    },

    /* recursed function */
    recurse: function(node,regex,klass) {
            if (node.nodeType === 3) {
                var match = node.data.match(regex);
                if (match) {
                    /* new element */
                    var highlight = new Element(this.options.tag);
                    highlight.addClass(klass);
                    var wordNode = node.splitText(match.index);
                    wordNode.splitText(match[0].length);
                    var wordClone = wordNode.cloneNode(true);
                    highlight.appendChild(wordClone);
                    wordNode.parentNode.replaceChild(highlight, wordNode);
                    highlight.set('rel',highlight.get('text'));
                    var comparer = highlight.get('text');
                    if(!this.options.caseSensitive) { comparer = highlight.get('text').toUpperCase(); }
                    if(!this.words[comparer]) { this.words[comparer] = []; }
                    this.words[comparer].push(highlight);
                    return 1;
                }
            } else if ((node.nodeType === 1 && node.childNodes) && !/(script|style)/i.test(node.tagName) && !(node.tagName === this.options.tag.toUpperCase() && node.className === klass)) {
                for (var i = 0; i < node.childNodes.length; i++) {
                    i += this.recurse(node.childNodes[i],regex,klass);
                }
            }
            return 0;
        }
    });


var highlighter ;
var myTimer;

        fadeout = function() {
            isiPopupOpen = false;
            $('share-hover').fade('out');
        }

    
enableHover = function(contentArea, keywords) {


	// Lets make the results on top as well
	//$('cursor').clone().inject($('results'),'before');

	highlighter = new Highlighter({
		elements: contentArea,
		className: 'highlight',
		autoUnhighlight: false
	    });
        
            highlighter.highlight(keywords);

        delayFadeout = function() {
                myTimer = fadeout.delay(1200)
        }
        
        fadein = function(a,ele) {
                                                                
//                                 $('share-storylist').setStyles({
//                                     top:a.client.y+document.body.parentNode.scrollTop+5,
//                                     left:a.client.x+document.body.parentNode.scrollLeft
//                                 });
                                                                
				if ( !isiPopupOpen )
				{
				var _t = a.client.y;

				 if ( _t > 450 )
				 {
				   _t = _t - 350;
				 }

				 $('share-storylist').setStyles({
				     //top:a.client.y+document.body.parentNode.scrollTop+5,
				     top:_t+document.body.parentNode.scrollTop,
				     left:a.client.x+document.body.parentNode.scrollLeft
				 });	

                                requestPage(ele.innerHTML.toLowerCase() );
                                $('share-hover').setStyles({
                                    display: 'block'
                                    }).fade('in');	
				}                                                                                
        }
        
        delayFadein = function(a,ele) {        		
                        myTimer = fadein(a,ele).delay(2000);
        }
        

        $$('span.highlight').each(function(ele){
            //show/hide
            ele.addEvent('click',function(a){
                console.log('enter...');
                fadein(a,ele)
                //delayFadein(a,ele);
            });
            ele.addEvent('mouseenter',function(e){this.style.cursor='pointer';});
            ele.addEvent('mouseleave',function(a){
                //console.log('leave...');                
                //delayFadeout;
            });

        });

        $('share-hover').setOpacity(1);
        
        //$('share-hover').addEvent('mouseleave',function(a){
        //        $('share-hover').fade('out');
        //});
        //$('share-hover').addEvent('mouseleave',fadeout);
        
       // $('share-hover').addEvent('mouseenter',function(a){
                //console.log('Enter Hover..');
               // myTimer = $clear(myTimer);
      //  });



    }    

    


function disableOverlay() {
    highlighter.unhighlight(keywords);
    $('share-hover').fade('out');
}

    
function requestPage(keyword) {
    
    new Request({
        url: '/resources/isi/html/'+ keyword.toLowerCase() +'.html',
        method: 'get',
        onComplete: function(response) {
    	    isiPopupOpen = true;	                    
            $('share-hover').set('html',response);            

	    if ( $('navigateB') )
	    {

	      $$('input:([id="navigateB"])').addEvent('click', 	      		
	    			function(e) { 	    				
					var navigateTo = $$('div:([id="share-storylist"])').getElement('.bottomLink').get('value');
					if ( navigateTo )
					{
					  navigateTo = navigateTo[0];
					  if ( !navigateTo ) { navigateTo = $('pick').get('value'); }
					}
	    				//var navigateTo = $('pick').get('value');
	    				var d = ''+document.location;
					//if ( ''.test(navigateTo,'i')  )
					if (navigateTo.test('pfizerpro','i'))
					{
					  document.location = navigateTo;					
					}
					else
					{
					  fadeout();
					  window.open (navigateTo);
					}
										 
	    			});				 
	    }

	    $$('.bottomLink a').addEvent('click', function(e){fadeout();});	    

	    $$('.isiclose').each(function(a) { a.addEvent('click',function(e) 
				{				     
				     e.stop();
				     fadeout();                                                                    				     				   
				     isiPopupOpen = false;	     
				      
				    });
				 }); 
	    
	    
        }
    }).send();
}


function disableHoverLink( source, keyword )
{
	//Coming from search page				     
	    if ( source != 'search' )
	    {
		$$('span.highlight').each(function(ele){
		    //show/hide
		    ele.addEvent('click',function(a){
			delayFadein(a,ele);
		    });

		});				    	
	    }

}


appendISIContent = function(keywords)
{

	var keypattern = '';
	
	$$('.gs-webResult').each(function(item,index) {
	   var keywordArray = new Array();
		keywords.each(function(kitem,kindex) {		        
		        keypattern = eval('/\\b'+ kitem +'\\b/gi');
		        
			if( keypattern.test ( item.getElement('a[class=gs-title]').get('text').replace(unescape('%AE'),'').toLowerCase() ) ) {
				keywordArray.include(kitem);
			}

			if( keypattern.test ( item.getElement('.gs-snippet').get('text').replace(unescape('%AE'),'').replace( unescape('%AE'),'').toLowerCase() ) ) {
				keywordArray.include(kitem);
			}
			if( keypattern.test ( item.getElement('.gs-visibleUrl-long').get('text').replace(unescape('%AE'),'').toLowerCase() ) ) {
				keywordArray.include(kitem);
			}
		});

		
		addISITextWithProduct(keywordArray, item );
		
	});
}
				
				
var isikeydetails = new Array( );

function addISITextWithProduct ( keywordArray, item )
{	
	   	keywordArray.each(function(kitem,kindex) {			
			if ( kitem != '' )
			{
		    if ( isikeydetails[kitem] != null )
		    {
		     	 constructISIText( item, isikeydetails[kitem], kitem );
		     }
		     else
		    {
			    new Request({
				url: '/irj/servlet/prt/portal/prtroot/com.wyeth.products.ui.ProductData',
				method: 'get',
				async: 'false',
				data: 'command=isi_banner&keyword='+kitem,
				onComplete: function(response) 
				{  	
					isikeydetails[kitem]=response;					
					constructISIText( item, isikeydetails[kitem], kitem );										
				}
			    }).send();		


		     }
		}
		
	});
}

//Creates the ISI Link for display
function constructISIText( item, response, kitem )
{
	var isidetails =[];
	isidetails = response.split('$');	    

				var linkIsi = new Element('a', {'class': 'isiLink'});
	var newdiv = '';	
	if (isidetails[1] && isidetails[1] == 'true')
	{				
	newdiv  = new Element('span', {html: 'Indication & Important Safety Information including boxed warning - '+ isidetails[2] });				  
	}
	else
	{
	newdiv  = new Element('span', {html: 'Indication & Important Safety Information - '+ isidetails[2] });				
	}
				var cleardiv  = new Element('div', {'class': 'clear'});
				newdiv.inject( linkIsi );
				cleardiv.inject(item);
				linkIsi.inject( item );																
				insertISIafterSearchResults(kitem);
				linkIsi.addEvent('click',function(e) { handleISI ( e,kitem) });	   	   
	
}

appendISILinksBySearchingKeywords = function() 
{
var k = [];
    new Request({
	url: '/irj/servlet/prt/portal/prtroot/com.wyeth.products.ui.ProductData',
	method: 'get',
	async: 'false',
	data: 'command=isi_keywords',
	onComplete: function(response) 
	{  	    
	    k = response.toLowerCase().split(',');  	    
	    appendISIContent(k);
	}
    }).send();

}


//This function is used in the Products Page
productISIPopUp = function(event,productName)
	{
		if ( !isiPopupOpen )
		{
		requestPage(productName );
		$('share-hover').setStyles({
		display: 'block'
		}).fade('in');
		
		}
	}
	
//This is used for other than search and products page like specialities page	
function appendISILinks (c)
{
  var k = [];
    new Request({
	url: '/irj/servlet/prt/portal/prtroot/com.wyeth.products.ui.ProductData',
	method: 'get',
	async: 'false',
	data: 'command=isi_keywords',
	onComplete: function(response) 
	{  		    
	    k = response.toLowerCase().split(',');  	    
	    appendISI(k, c);
	}
    }).send();
  	
}


//Used by content other than search
function appendISI( keywords, cl )
{
  var keypattern = ''; 
  $$('.display_isi').each(function(item,index) {
	   var keywordArray = new Array();
		keywords.each(function(kitem,kindex) {		        
		        keypattern = eval('/\\b'+ kitem +'\\b/gi');
			if( keypattern.test ( item.get('text').replace(unescape('%AE'),'').toLowerCase() ) ) {
				keywordArray.include(kitem);
			}
			if ( cl )
			{
				if( keypattern.test ( item.get(cl).toLowerCase() ) ) {
					keywordArray.include(kitem);
				}			  
			}			
		});
				
		addISITextWithProduct ( keywordArray, item );				
  
  });
  
}

handleISI = function( a,kitem  )
{							
	var _winHeight = window.getSize().y;
	var _winWidth = window.getSize().x;
	var _isiHeight = 300;
	var _isiWidth = 450;
	if ( !isiPopupOpen )
	{
	 var _t = a.client.y;
	 if ( (_t + _isiHeight) >  _winHeight )
	 {
	   _t = _t - _isiHeight;
	 }

	 var _l = a.client.x;
	 if ( (_l + _isiWidth) >  _winWidth )
	 {
	   _l = _l - _isiWidth;
	 }	 


	 $('share-storylist').setStyles({
	     //top:a.client.y+document.body.parentNode.scrollTop+5,
	     top:_t+document.body.parentNode.scrollTop,
	     left:_l+document.body.parentNode.scrollLeft
	 });	

	requestPage(kitem );						
	 $('share-hover').setStyles({
	     display: 'block'
	     }).fade('in');
	}
	
} 

function getISIDetails( isikeyword )
{
    
    new Request({
	url: '/irj/servlet/prt/portal/prtroot/com.wyeth.products.ui.ProductData',
	method: 'get',
	async: 'false',
	data: 'command=isi_banner&keyword='+isikeyword,
	onComplete: function(response) 
	{  	    
	    isidetails = response;	    
	}
    }).send();

}



//This is to add a Pop up on the Genotropin 
window.addEvent('domready',function(){
	if($$('a[href=/resources/products/prescription/genotropin/genotropin_pdf.html]').length > 0) {
		$$('a[href=/resources/products/prescription/genotropin/genotropin_pdf.html]')[0].addEvent('click',function(e) {
			//console.log('clicked');
			e.stop();
			window.open('/resources/products/prescription/genotropin/genotropin_pdf.html','_blank','resizable=no,status=no,menubar=no,scrollbars=no,toolbar=no,width=350,height=150,left=500,top=100');
		});
		$$('a[href=/resources/products/prescription/genotropin/genotropin_pdf.html]')[0].set('href','#');		
		
	}
});

