PageSourceSearch

https://www.confimpresa.org/modules/mod_sj_k2_extraslider/assets/js/jsmart_extraslider.js

js confimpresa.org collected 2026-10-08 01:14:07 UTC 15,108 bytes, 398 lines download raw bytes

1//// JQUERY PLUGIN - EASING
2($jsmart||jQuery).easing={easein:function(x,t,b,c,d){return c*(t/=d)*t+b},easeinout:function(x,t,b,c,d){if(t<d/2)return 2*c*t*t/(d*d)+b;var a=t-d/2;return-2*c*a*a/(d*d)+2*c*a/d+c/2+b},easeout:function(x,t,b,c,d){return-c*t*t/(d*d)+2*c*t/d+b},expoin:function(x,t,b,c,d){var a=1;if(c<0){a*=-1;c*=-1}return a*(Math.exp(Math.log(c)/d*t))+b},expoout:function(x,t,b,c,d){var a=1;if(c<0){a*=-1;c*=-1}return a*(-Math.exp(-Math.log(c)/d*(t-d))+c+1)+b},expoinout:function(x,t,b,c,d){var a=1;if(c<0){a*=-1;c*=-1}if(t<d/2)return a*(Math.exp(Math.log(c/2)/(d/2)*t))+b;return a*(-Math.exp(-2*Math.log(c/2)/d*(t-d))+c+1)+b},bouncein:function(x,t,b,c,d){return c-$.easing['bounceout'](x,d-t,0,c,d)+b},bounceout:function(x,t,b,c,d){if((t/=d)<(1/2.75)){return c*(7.5625*t*t)+b}else if(t<(2/2.75)){return c*(7.5625*(t-=(1.5/2.75))*t+.75)+b}else if(t<(2.5/2.75)){return c*(7.5625*(t-=(2.25/2.75))*t+.9375)+b}else{return c*(7.5625*(t-=(2.625/2.75))*t+.984375)+b}},bounceinout:function(x,t,b,c,d){if(t<d/2)return $.easing['bouncein'](x,t*2,0,c,d)*.5+b;return $.easing['bounceout'](x,t*2-d,0,c,d)*.5+c*.5+b},elasin:function(x,t,b,c,d){var s=1.70158;var p=0;var a=c;if(t==0)return b;if((t/=d)==1)return b+c;if(!p)p=d*.3;if(a<Math.abs(c)){a=c;var s=p/4}else var s=p/(2*Math.PI)*Math.asin(c/a);return-(a*Math.pow(2,10*(t-=1))*Math.sin((t*d-s)*(2*Math.PI)/p))+b},elasout:function(x,t,b,c,d){var s=1.70158;var p=0;var a=c;if(t==0)return b;if((t/=d)==1)return b+c;if(!p)p=d*.3;if(a<Math.abs(c)){a=c;var s=p/4}else var s=p/(2*Math.PI)*Math.asin(c/a);return a*Math.pow(2,-10*t)*Math.sin((t*d-s)*(2*Math.PI)/p)+c+b},elasinout:function(x,t,b,c,d){var s=1.70158;var p=0;var a=c;if(t==0)return b;if((t/=d/2)==2)return b+c;if(!p)p=d*(.3*1.5);if(a<Math.abs(c)){a=c;var s=p/4}else var s=p/(2*Math.PI)*Math.asin(c/a);if(t<1)return-.5*(a*Math.pow(2,10*(t-=1))*Math.sin((t*d-s)*(2*Math.PI)/p))+b;return a*Math.pow(2,-10*(t-=1))*Math.sin((t*d-s)*(2*Math.PI)/p)*.5+c+b},backin:function(x,t,b,c,d){var s=1.70158;return c*(t/=d)*t*((s+1)*t-s)+b},backout:function(x,t,b,c,d){var s=1.70158;return c*((t=t/d-1)*t*((s+1)*t+s)+1)+b},backinout:function(x,t,b,c,d){var s=1.70158;if((t/=d/2)<1)return c/2*(t*t*(((s*=(1.525))+1)*t-s))+b;return c/2*((t-=2)*t*(((s*=(1.525))+1)*t+s)+2)+b},linear:function(x,t,b,c,d){return c*t/d+b}};
3
4//// GANESH PLUGIN - yt_extra_slider
5(function($) {                                          // Compliant with jquery.noConflict()
6$.fn.yt_extra_slider = function(o) {
7    o = $.extend({
8        btnPrev: null,
9        btnNext: null,
10        btnGo: null,
11        mouseWheel: false,
12        auto: 1,
13        speed: 500,
14        easing: null,
15        vertical: false,
16        circular: true,
17        visible: 3,
18        start: 0,
19        scroll: 1,
20        beforeStart: null,
21        afterEnd: null,
22        thumbHeight: 0,
23        moduleId: 0
24    }, o || {});
25    
26    return this.each(function() {                           // Returns the element collection. Chainable.
27
28        var running = false, animCss=o.vertical?"top":"left", sizeCss=o.vertical?"height":"width";
29        var div = $(this), ul = $(".extracontent", div), tLi = $(".extracontent-item", ul), tl = tLi.size(), v = o.visible;
30        if(o.circular) {
31            ul.prepend(tLi.slice(tl-v-1+1).clone())
32              .append(tLi.slice(0,v).clone());
33            o.start += v;
34        }
35        
36        var buttons = $("#image_button"+o.moduleId).children('li');
37        
38        $.each(buttons, function(key, val){
39            var keyVal = ++key;
40            $(val).click(function() {return go(keyVal);});
41        })
42        
43        var parentUl = ul.parent('div');
44         var arrItemHeight = $('div.yt-item-content-multi'+o.moduleId);
45            var maxItemHeight = 0;
46            $.each(arrItemHeight,function(key, val){
47                if(maxItemHeight<$(val).height()){
48                    maxItemHeight = $(val).height(); 
49                }
50              
51            });
52           // alert(maxItemHeight)
53            $.each(arrItemHeight,function(key,val){
54                 $(val).css('height',maxItemHeight);       
55            });
56           // $('div.lite_multi_ie6'+o.catId+'_'+o.moduleId).css('height',((maxHeightIe6 * numberRow + 10)+'px'));
57            $('#yt-main-item-multi'+o.moduleId).css('height',(maxItemHeight + o.thumbHe
57ight) +'px');
58            
59        var li = $(".extracontent-item", ul), itemLength = li.size(), curr = o.start;
60        div.css("visibility", "visible");
61        var lis = ul.children('.extracontent-item');
62        
63        li.css({overflow: "hidden", 'float': o.vertical ? "none" : "none"});
64        ul.css({margin: "0", padding: "0", position: "relative", "list-style-type": "none", "z-index": "1"});
65        div.css({overflow: "hidden", position: "relative", "z-index": "2", left: "0px"});
66		
67		//update extra slider in ie7
68		 BrowserDetect.init();
69		if((BrowserDetect.browser=="Explorer") && (BrowserDetect.version==7))
70		{        
71			height_li = height(li) +9;
72        }else{		
73			height_li = height(li);
74		}
75		
76        var heightDiv = parseInt(height_li);
77        parentUl.css({height: heightDiv});
78		//alert(heightDiv);
79        if(BrowserDetect.browser=="Chrome")
80        {
81            div.css({overflow: "hidden", position: "relative", "z-index": "2", left: "0px", height: heightDiv+"px"});
82        }
83        
84        li.css({overflow: "hidden", 'float': o.vertical ? "none" : "left"});  
85            
86        //set height for each li
87        
88        /*
89         for(var i=0;i<li.length;i++)
90                 {
91                   $(li[i]).css({height:heightDiv});           
92                 }
93         */
94       
95		
96        var liSize = o.vertical ? height_li : width(li);   // Full li size(incl margin)-Used for animation
97		
98       // alert(liSize);
99		
100        var ulSize = liSize * itemLength;                   // size of full ul(total length, not just for the visible items)
101        var divSize = liSize * v;                      // size of entire div(total length for just the visible items)
102       // alert(liSize +"---"+ v)
103		
104        if((BrowserDetect.browser=="Explorer") && (BrowserDetect.version==7))
105        {
106            li.css({ height: parseInt(heightDiv)});
107			
108        }
109        if((BrowserDetect.browser=="Explorer") && (BrowserDetect.version==6))
110        {
111            li.css({width: (li.width()+1), height: parseInt(heightDiv)});
112        }
113        else
114            li.css({width: li.width(), height: parseInt(heightDiv)});
115           
116        //alert(ulSize)       
117        ul.css(sizeCss, ulSize+"px").css(animCss, -(curr*liSize));
118         
119         if((BrowserDetect.browser=="Explorer") && (BrowserDetect.version==9))
120        {
121            setTimeout(function(){div.css(sizeCss, divSize+"px");},100)
122                                 // Width of the DIV. length of visible images
123        }
124        else 
125            div.css(sizeCss, divSize+"px");                     // Width of the DIV. length of visible images     
126        
127        if(o.btnPrev)
128            $(o.btnPrev).click(function() { 
129                return go(curr-o.scroll);
130            });
131
132        if(o.btnNext)
133            $(o.btnNext).click(function() { 
134                return go(curr+o.scroll);
135            });
136
137        /*if(o.btnGo)
138            $.each(o.btnGo, function(i, val) {
139                $(val).click(function() {
140                    return go(o.circular ? o.visible+i : i);
141                });
142            });
143*/
144        if(o.mouseWheel && div.mousewheel)
145            div.mousewheel(function(e, d) {
146                return d>0 ? go(curr-o.scroll) : go(curr+o.scroll);
147            });
148
149        if(o.auto)
150            setInterval(function() {
151                go(curr+o.scroll);
152            }, o.auto+o.speed);
153        
154        function setCssDiv(){
155                   
156        };
157        
158        function vis() {
159            return li.slice(curr).slice(0,v);
160        };
161
162        function go(to) {
163            var countslide
164            var buttons = $('#image_button'+o.moduleId).children();
165            var lengthButtons = buttons.length;
166           
167            $.each(buttons , function(key, val){++key;
168                if(($(val).attr('class')=='button_img_selected'))
169                {
170                    $(val).removeClass("button_img_selected");$(val).addClass("button_img");
171                }
172                if(to==key)
173                {
174                    $(val).removeClass("button_img");$(val).addClass("button_img_selected");
175                }
176                if(to==0)
177                {
178                    if(key == lengthButtons)
179                        $(val).removeClass("button_img");$(val).addClass("button_img_selected");
180                }
181                if(to==-1)
182                {
183                    if(key == (lengthButtons-1))
184                        $(val).removeClass("button_img");$(val).addClass("button_img_selected");
185                }
186                
187                if(to == (lengthButtons+1))
188                {
189                    if(key == 1)
190                        $(val).removeClass("button_img");$(val).addClass("button_img_selected");
191                }
192                
193                if(to == (lengthButtons+2))
194                {
195                    if(key == 2)
196                        $(val).removeClass("button_img");$(val).addClass("button_img_selected");
197                }
198            
199            });
200            if(!running) { 
201
202                if(o.beforeStart)
203                    o.beforeStart.call(this, vis());
204
205                if(o.circular) {            // If circular we are in first or last, then goto the other end
206                    if(to<=o.start-v-1) {           // If first, then goto last
207                        ul.css(animCss, -((itemLength-(v*2))*liSize)+"px");
208                        // If "scroll" > 1, then the "to" might not be equal to the condition; it can be lesser depending on the number of elements.
209                        curr = to==o.start-v-1 ? itemLength-(v*2)-1 : itemLength-(v*2)-o.scroll;
210                    } else if(to>=itemLength-v+1) { // If last, then goto first
211                        ul.css(animCss, -( (v) * liSize ) + "px" );
212                        // If "scroll" > 1, then the "to" might not be equal to the condition; it can be greater depending on the number of elements.
213                        curr = to==itemLength-v+1 ? v+1 : v+o.scroll;
214                    } else curr = to;
215                } else {                    // If non-circular and to points to first or last, we just return.
216                    if(to<0 || to>itemLength-v) return;
217                    else curr = to;
218                }                           // If neither overrides it, the curr will still be "to" and we can proceed.
219
220                running = true;
221
222                ul.animate(
223                    animCss == "left" ? { left: -(curr*liSize) } : { top: -(curr*liSize) } , o.speed, o.easing,
224                    function() {
225                        if(o.afterEnd)
226                            o.afterEnd.call(this, vis());
227                        running = false;
228                    }
229                );
230                // Disable buttons when the carousel reaches the last/first, and enable when not
231                if(!o.circular) {
232                    $(o.btnPrev + "," + o.btnNext).removeClass("disabled");
233                    $( (curr-o.scroll<0 && o.btnPrev)
234                        ||
235                       (curr+o.scroll > itemLength-v && o.btnNext)
236                        ||
237                       []
238                     ).addClass("disabled");
239                }
240
241            }
242            return false;
243        };
244    });
245};
246
247function css(el, prop) {
248    return parseInt($.css(el[0], prop)) || 0;
249};
250function width(el) {
251    return  el[0].offsetWidth + css(el, 'marginLeft') + css(el, 'marginRight');
252};
253
254function height(el) {
255    BrowserDetect.init();
256    var maxLength = 0;
257    var liLength = 0;
258    var arrValue = [];
259    var subValue = 0;
260    if((BrowserDetect.browser=="Explorer") && (BrowserDetect.version==6)){
261      for(var i=0;i<el.length;i++){
262        arrValue[i] = el[i].offsetTop;
263      }
264      for(var j=0; j<arrValue.length; j++){
265        subValue = (arrValue[j +1 ]) - arrValue[j];
266        if(maxLength<subValue) maxLength = subValue;
267      }
268    }
269    else{
270        for(var i=0;i<el.length;i++)
271        {  
272          liLength = el[i].offsetHeight + css(el, 'marginTop') + css(el, 'marginBottom');
273          if(maxLength<liLength) maxLength = liLength;
274            
275        }
276    }
277    //alert(maxLength)
278    return maxLength;
279};
280var BrowserDetect = {
281	init: function () {
282		this.browser = this.searchString(this.dataBrowser) || "An unknown browser";
283		this.version = this.searchVersion(navigator.userAgent)
284			|| this.searchVersion(navigator.appVersion)
285			|| "an unknown version";
286		this.OS = this.searchString(this.dataOS) || "an unknown OS";
287	},
288	searchString: function (data) {
289		for (var i=0;i<data.length;i++)	{
290			var dataString = data[i].string;
291			var dataProp = data[i].prop;
292			this.versionSearchString = data[i].versionSearch || data[i].identity;
293			if (dataString) {
294				if (dataString.indexOf(data[i].subString) != -1)
295					return data[i].identity;
296			}
297			else if (dataProp)
298				return data[i].identity;
299		}
300	},
301	searchVersion: function (dataString) {
302		var index = dataString.indexOf(this.versionSearchString);
303		if (index == -1) return;
304		return parseFloat(dataString.substring(index+this.versionSearchString.length+1));
305	},
306	dataBrowser: [
307		{
308			string: navigator.userAgent,
309			subString: "Chrome",
310			identity: "Chrome"
311		},
312		{ 	string: navigator.userAgent,
313			subString: "OmniWeb",
314			versionSearch: "OmniWeb/",
315			identity: "OmniWeb"
316		},
317		{
318			string: navigator.vendor,
319			subString: "Apple",
320			identity: "Safari",
321			versionSearch: "Version"
322		},
323		{
324			prop: window.opera,
325			identity: "Opera"
326		},
327		{
328			string: navigator.vendor,
329			subString: "iCab",
330			identity: "iCab"
331		},
332		{
333			string: navigator.vendor,
334			subString: "KDE",
335			identity: "Konqueror"
336		},
337		{
338			string: navigator.userAgent,
339			subString: "Firefox",
340			identity: "Firefox"
341		},
342		{
343			string: navigator.vendor,
344			subString: "Camino",
345			identity: "Camino"
346		},
347		{		// for newer Netscapes (6+)
348			string: navigator.userAgent,
349			subString: "Netscape",
350			identity: "Netscape"
351		},
352		{
353			string: navigator.userAgent,
354			subString: "MSIE",
355			identity: "Explorer",
356			versionSearch: "MSIE"
357		},
358		{
359			string: navigator.userAgent,
360			subString: "Gecko",
361			identity: "Mozilla",
362			versionSearch: "rv"
363		},
364		{ 		// for older Netscapes (4-)
365			string: navigator.userAgent,
366			subString: "Mozilla",
367			identity: "Netscape",
368			versionSearch: "Mozilla"
369		}
370	],
371	dataOS : [
372		{
373			string: navigator.platform,
374			subString: "Win",
375			identity: "Windows"
376		},
377		{
378			string: navigator.platform,
379			subString: "Mac",
380			identity: "Mac"
381		},
382		{
383			   string: navigator.userAgent,
384			   subString: "iPhone",
385			   identity: "iPhone/iPod"
386	    },
387		{
388			string: navigator.platform,
389			subString: "Linux",
390			identity: "Linux"
391		}
392	]
393
394};
395
396
397})($jsmart||jQuery);
398

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.