1617. Araxis Merge File Comparison Report

Produced by Araxis Merge on 2/1/2017 2:57:59 PM Eastern Standard Time. See www.araxis.com for information about Merge. This report uses XHTML and CSS2, and is best viewed with a modern standards-compliant browser. For optimum results when printing this report, use landscape orientation and enable printing of background images and colours in your browser.

1617.1 Files compared

# Location File Last Modified
1 C:\Araxis_Merge_Comprasion\Pub_un\BTSSS_CIF_122016.zip\BTSSS_CIF_12_20_16\clean\CRM Portal\trunk\BTSSSPortal\js jquery-migrate-1.2.1.js Tue Dec 20 19:50:52 2016 UTC
2 Wed Feb 1 19:57:59 2017 UTC

1617.2 Comparison summary

Description Between
Files 1 and 2
Text Blocks Lines
Unchanged 0 0
Changed 0 0
Inserted 0 0
Removed 1 521

1617.3 Comparison options

Whitespace
Character case Differences in character case are significant
Line endings Differences in line endings (CR and LF characters) are ignored
CR/LF characters Not shown in the comparison detail

1617.4 Active regular expressions

No regular expressions were active.

1617.5 Comparison detail

1   /*!        
2    * jQuery  Migrate -  v1.2.1 - 2 013-05-08        
3    * https:/ /github.co m/jquery/j query-migr ate        
4    * Copyrig ht 2005, 2 013 jQuery  Foundatio n, Inc. an d other co ntributors ; Licensed  MIT        
5    */        
6   (function(  jQuery, w indow, und efined ) {        
7   // See htt p://bugs.j query.com/ ticket/133 35        
8   // "use st rict";        
9          
10          
11   var warned About = {} ;        
12          
13   // List of  warnings  already gi ven; publi c read onl y        
14   jQuery.mig rateWarnin gs = [];        
15          
16   // Set to  true to pr event cons ole output ; migrateW arnings st ill mainta ined        
17   // jQuery. migrateMut e = false;        
18          
19   // Show a  message on  the conso le so devs  know we'r e active        
20   if ( !jQue ry.migrate Mute && wi ndow.conso le && wind ow.console .log ) {        
21           wi ndow.conso le.log("JQ MIGRATE: L ogging is  active");        
22   }        
23          
24   // Set to  false to d isable tra ces that a ppear with  warnings        
25   if ( jQuer y.migrateT race === u ndefined )  {        
26           jQ uery.migra teTrace =  true;        
27   }        
28          
29   // Forget  any warnin gs we've a lready giv en; public        
30   jQuery.mig rateReset  = function () {        
31           wa rnedAbout  = {};        
32           jQ uery.migra teWarnings .length =  0;        
33   };        
34          
35   function m igrateWarn ( msg) {        
36           va r console  = window.c onsole;        
37           if  ( !warned About[ msg  ] ) {        
38                    warn edAbout[ m sg ] = tru e;        
39                    jQue ry.migrate Warnings.p ush( msg ) ;        
40                    if (  console & & console. warn && !j Query.migr ateMute )  {        
41                             consol e.warn( "J QMIGRATE:  " + msg );        
42                             if ( j Query.migr ateTrace & & console. trace ) {        
43                                      console. trace();        
44                             }        
45                    }        
46           }        
47   }        
48          
49   function m igrateWarn Prop( obj,  prop, val ue, msg )  {        
50           if  ( Object. defineProp erty ) {        
51                    // O n ES5 brow sers (non- oldIE), wa rn if the  code tries  to get pr op;        
52                    // a llow prope rty to be  overwritte n in case  some other  plugin wa nts it        
53                    try  {        
54                             Object .definePro perty( obj , prop, {        
55                                      configur able: true ,        
56                                      enumerab le: true,        
57                                      get: fun ction() {        
58                                               migrateWar n( msg );        
59                                               return val ue;        
60                                      },        
61                                      set: fun ction( new Value ) {        
62                                               migrateWar n( msg );        
63                                               value = ne wValue;        
64                                      }        
65                             });        
66                             return ;        
67                    } ca tch( err )  {        
68                             // IE8  is a dope  about Obj ect.define Property,  can't warn  there        
69                    }        
70           }        
71          
72           //  Non-ES5 ( or broken)  browser;  just set t he propert y        
73           jQ uery._defi neProperty Broken = t rue;        
74           ob j[ prop ]  = value;        
75   }        
76          
77   if ( docum ent.compat Mode === " BackCompat " ) {        
78           //  jQuery ha s never su pported or  tested Qu irks Mode        
79           mi grateWarn(  "jQuery i s not comp atible wit h Quirks M ode" );        
80   }        
81          
82          
83   var attrFn  = jQuery(  "<input/> ", { size:  1 } ).att r("size")  && jQuery. attrFn,        
84           ol dAttr = jQ uery.attr,        
85           va lueAttrGet  = jQuery. attrHooks. value && j Query.attr Hooks.valu e.get ||        
86                    func tion() { r eturn null ; },        
87           va lueAttrSet  = jQuery. attrHooks. value && j Query.attr Hooks.valu e.set ||        
88                    func tion() { r eturn unde fined; },        
89           rn oType = /^ (?:input|b utton)$/i,        
90           rn oAttrNodeT ype = /^[2 38]$/,        
91           rb oolean = / ^(?:autofo cus|autopl ay|async|c hecked|con trols|defe r|disabled |hidden|lo op|multipl e|open|rea donly|requ ired|scope d|selected )$/i,        
92           ru seDefault  = /^(?:che cked|selec ted)$/i;        
93          
94   // jQuery. attrFn        
95   migrateWar nProp( jQu ery, "attr Fn", attrF n || {}, " jQuery.att rFn is dep recated" ) ;        
96          
97   jQuery.att r = functi on( elem,  name, valu e, pass )  {        
98           va r lowerNam e = name.t oLowerCase (),        
99                    nTyp e = elem & & elem.nod eType;        
100          
101           if  ( pass )  {        
102                    // S ince pass  is used in ternally,  we only wa rn for new  jQuery        
103                    // v ersions wh ere there  isn't a pa ss arg in  the formal  params        
104                    if (  oldAttr.l ength < 4  ) {        
105                             migrat eWarn("jQu ery.fn.att r( props,  pass ) is  deprecated ");        
106                    }        
107                    if (  elem && ! rnoAttrNod eType.test ( nType )  &&        
108                             (attrF n ? name i n attrFn :  jQuery.is Function(j Query.fn[n ame])) ) {        
109                             return  jQuery( e lem )[ nam e ]( value  );        
110                    }        
111           }        
112          
113           //  Warn if u ser tries  to set `ty pe`, since  it breaks  on IE 6/7 /8; by che cking        
114           //  for disco nnected el ements we  don't warn  on $( "<b utton>", {  type: "bu tton" } ).        
115           if  ( name == = "type" & & value != = undefine d && rnoTy pe.test( e lem.nodeNa me ) && el em.parentN ode ) {        
116                    migr ateWarn("C an't chang e the 'typ e' of an i nput or bu tton in IE  6/7/8");        
117           }        
118          
119           //  Restore b oolHook fo r boolean  property/a ttribute s ynchroniza tion        
120           if  ( !jQuery .attrHooks [ lowerNam e ] && rbo olean.test ( lowerNam e ) ) {        
121                    jQue ry.attrHoo ks[ lowerN ame ] = {        
122                             get: f unction( e lem, name  ) {        
123                                      // Align  boolean a ttributes  with corre sponding p roperties        
124                                      // Fall  back to at tribute pr esence whe re some bo oleans are  not suppo rted        
125                                      var attr Node,        
126                                               property =  jQuery.pr op( elem,  name );        
127                                      return p roperty == = true ||  typeof pro perty !==  "boolean"  &&        
128                                               ( attrNode  = elem.ge tAttribute Node(name)  ) && attr Node.nodeV alue !== f alse ?        
129          
130                                               name.toLow erCase() :        
131                                               undefined;        
132                             },        
133                             set: f unction( e lem, value , name ) {        
134                                      var prop Name;        
135                                      if ( val ue === fal se ) {        
136                                               // Remove  boolean at tributes w hen set to  false        
137                                               jQuery.rem oveAttr( e lem, name  );        
138                                      } else {        
139                                               // value i s true sin ce we know  at this p oint it's  type boole an and not  false        
140                                               // Set boo lean attri butes to t he same na me and set  the DOM p roperty        
141                                               propName =  jQuery.pr opFix[ nam e ] || nam e;        
142                                               if ( propN ame in ele m ) {        
143                                                       //  Only set  the IDL sp ecifically  if it alr eady exist s on the e lement        
144                                                       el em[ propNa me ] = tru e;        
145                                               }        
146          
147                                               elem.setAt tribute( n ame, name. toLowerCas e() );        
148                                      }        
149                                      return n ame;        
150                             }        
151                    };        
152          
153                    // W arn only f or attribu tes that c an remain  distinct f rom their  properties  post-1.9        
154                    if (  ruseDefau lt.test( l owerName )  ) {        
155                             migrat eWarn( "jQ uery.fn.at tr('" + lo werName +  "') may us e property  instead o f attribut e" );        
156                    }        
157           }        
158          
159           re turn oldAt tr.call( j Query, ele m, name, v alue );        
160   };        
161          
162   // attrHoo ks: value        
163   jQuery.att rHooks.val ue = {        
164           ge t: functio n( elem, n ame ) {        
165                    var  nodeName =  ( elem.no deName ||  "" ).toLow erCase();        
166                    if (  nodeName  === "butto n" ) {        
167                             return  valueAttr Get.apply(  this, arg uments );        
168                    }        
169                    if (  nodeName  !== "input " && nodeN ame !== "o ption" ) {        
170                             migrat eWarn("jQu ery.fn.att r('value')  no longer  gets prop erties");        
171                    }        
172                    retu rn name in  elem ?        
173                             elem.v alue :        
174                             null;        
175           },        
176           se t: functio n( elem, v alue ) {        
177                    var  nodeName =  ( elem.no deName ||  "" ).toLow erCase();        
178                    if (  nodeName  === "butto n" ) {        
179                             return  valueAttr Set.apply(  this, arg uments );        
180                    }        
181                    if (  nodeName  !== "input " && nodeN ame !== "o ption" ) {        
182                             migrat eWarn("jQu ery.fn.att r('value',  val) no l onger sets  propertie s");        
183                    }        
184                    // D oes not re turn so th at setAttr ibute is a lso used        
185                    elem .value = v alue;        
186           }        
187   };        
188          
189          
190   var matche d, browser ,        
191           ol dInit = jQ uery.fn.in it,        
192           ol dParseJSON  = jQuery. parseJSON,        
193           //  Note: XSS  check is  done below  after str ing is tri mmed        
194           rq uickExpr =  /^([^<]*) (<[\w\W]+> )([^>]*)$/ ;        
195          
196   // $(html)  "looks li ke html" r ule change        
197   jQuery.fn. init = fun ction( sel ector, con text, root jQuery ) {        
198           va r match;        
199          
200           if  ( selecto r && typeo f selector  === "stri ng" && !jQ uery.isPla inObject(  context )  &&        
201                             (match  = rquickE xpr.exec(  jQuery.tri m( selecto r ) )) &&  match[ 0 ]  ) {        
202                    // T his is an  HTML strin g accordin g to the " old" rules ; is it st ill?        
203                    if (  selector. charAt( 0  ) !== "<"  ) {        
204                             migrat eWarn("$(h tml) HTML  strings mu st start w ith '<' ch aracter");        
205                    }        
206                    if (  match[ 3  ] ) {        
207                             migrat eWarn("$(h tml) HTML  text after  last tag  is ignored ");        
208                    }        
209                    // C onsistentl y reject a ny HTML-li ke string  starting w ith a hash  (#9521)        
210                    // N ote that t his may br eak jQuery  1.6.x cod e that oth erwise wou ld work.        
211                    if (  match[ 0  ].charAt(  0 ) === "# " ) {        
212                             migrat eWarn("HTM L string c annot star t with a ' #' charact er");        
213                             jQuery .error("JQ MIGRATE: I nvalid sel ector stri ng (XSS)") ;        
214                    }        
215                    // N ow process  using loo se rules;  let pre-1. 8 play too        
216                    if (  context & & context. context )  {        
217                             // jQu ery object  as contex t; parseHT ML expects  a DOM obj ect        
218                             contex t = contex t.context;        
219                    }        
220                    if (  jQuery.pa rseHTML )  {        
221                             return  oldInit.c all( this,  jQuery.pa rseHTML( m atch[ 2 ],  context,  true ),        
222                                               context, r ootjQuery  );        
223                    }        
224           }        
225           re turn oldIn it.apply(  this, argu ments );        
226   };        
227   jQuery.fn. init.proto type = jQu ery.fn;        
228          
229   // Let $.p arseJSON(f alsy_value ) return n ull        
230   jQuery.par seJSON = f unction( j son ) {        
231           if  ( !json & & json !==  null ) {        
232                    migr ateWarn("j Query.pars eJSON requ ires a val id JSON st ring");        
233                    retu rn null;        
234           }        
235           re turn oldPa rseJSON.ap ply( this,  arguments  );        
236   };        
237          
238   jQuery.uaM atch = fun ction( ua  ) {        
239           ua  = ua.toLo werCase();        
240          
241           va r match =  /(chrome)[  \/]([\w.] +)/.exec(  ua ) ||        
242                    /(we bkit)[ \/] ([\w.]+)/. exec( ua )  ||        
243                    /(op era)(?:.*v ersion|)[  \/]([\w.]+ )/.exec( u a ) ||        
244                    /(ms ie) ([\w.] +)/.exec(  ua ) ||        
245                    ua.i ndexOf("co mpatible")  < 0 && /( mozilla)(? :.*? rv:([ \w.]+)|)/. exec( ua )  ||        
246                    [];        
247          
248           re turn {        
249                    brow ser: match [ 1 ] || " ",        
250                    vers ion: match [ 2 ] || " 0"        
251           };        
252   };        
253          
254   // Don't c lobber any  existing  jQuery.bro wser in ca se it's di fferent        
255   if ( !jQue ry.browser  ) {        
256           ma tched = jQ uery.uaMat ch( naviga tor.userAg ent );        
257           br owser = {} ;        
258          
259           if  ( matched .browser )  {        
260                    brow ser[ match ed.browser  ] = true;        
261                    brow ser.versio n = matche d.version;        
262           }        
263          
264           //  Chrome is  Webkit, b ut Webkit  is also Sa fari.        
265           if  ( browser .chrome )  {        
266                    brow ser.webkit  = true;        
267           }  else if (  browser.we bkit ) {        
268                    brow ser.safari  = true;        
269           }        
270          
271           jQ uery.brows er = brows er;        
272   }        
273          
274   // Warn if  the code  tries to g et jQuery. browser        
275   migrateWar nProp( jQu ery, "brow ser", jQue ry.browser , "jQuery. browser is  deprecate d" );        
276          
277   jQuery.sub  = functio n() {        
278           fu nction jQu erySub( se lector, co ntext ) {        
279                    retu rn new jQu erySub.fn. init( sele ctor, cont ext );        
280           }        
281           jQ uery.exten d( true, j QuerySub,  this );        
282           jQ uerySub.su perclass =  this;        
283           jQ uerySub.fn  = jQueryS ub.prototy pe = this( );        
284           jQ uerySub.fn .construct or = jQuer ySub;        
285           jQ uerySub.su b = this.s ub;        
286           jQ uerySub.fn .init = fu nction ini t( selecto r, context  ) {        
287                    if (  context & & context  instanceof  jQuery &&  !(context  instanceo f jQuerySu b) ) {        
288                             contex t = jQuery Sub( conte xt );        
289                    }        
290          
291                    retu rn jQuery. fn.init.ca ll( this,  selector,  context, r ootjQueryS ub );        
292           };        
293           jQ uerySub.fn .init.prot otype = jQ uerySub.fn ;        
294           va r rootjQue rySub = jQ uerySub(do cument);        
295           mi grateWarn(  "jQuery.s ub() is de precated"  );        
296           re turn jQuer ySub;        
297   };        
298          
299          
300   // Ensure  that $.aja x gets the  new parse JSON defin ed in core .js        
301   jQuery.aja xSetup({        
302           co nverters:  {        
303                    "tex t json": j Query.pars eJSON        
304           }        
305   });        
306          
307          
308   var oldFnD ata = jQue ry.fn.data ;        
309          
310   jQuery.fn. data = fun ction( nam e ) {        
311           va r ret, evt ,        
312                    elem  = this[0] ;        
313          
314           //  Handles 1 .7 which h as this be havior and  1.8 which  doesn't        
315           if  ( elem &&  name ===  "events" & & argument s.length = == 1 ) {        
316                    ret  = jQuery.d ata( elem,  name );        
317                    evt  = jQuery._ data( elem , name );        
318                    if (  ( ret ===  undefined  || ret == = evt ) &&  evt !== u ndefined )  {        
319                             migrat eWarn("Use  of jQuery .fn.data(' events') i s deprecat ed");        
320                             return  evt;        
321                    }        
322           }        
323           re turn oldFn Data.apply ( this, ar guments );        
324   };        
325          
326          
327   var rscrip tType = /\ /(java|ecm a)script/i ,        
328           ol dSelf = jQ uery.fn.an dSelf || j Query.fn.a ddBack;        
329          
330   jQuery.fn. andSelf =  function()  {        
331           mi grateWarn( "jQuery.fn .andSelf()  replaced  by jQuery. fn.addBack ()");        
332           re turn oldSe lf.apply(  this, argu ments );        
333   };        
334          
335   // Since j Query.clea n is used  internally  on older  versions,  we only sh im if it's  missing        
336   if ( !jQue ry.clean )  {        
337           jQ uery.clean  = functio n( elems,  context, f ragment, s cripts ) {        
338                    // S et context  per 1.8 l ogic        
339                    cont ext = cont ext || doc ument;        
340                    cont ext = !con text.nodeT ype && con text[0] ||  context;        
341                    cont ext = cont ext.ownerD ocument ||  context;        
342          
343                    migr ateWarn("j Query.clea n() is dep recated");        
344          
345                    var  i, elem, h andleScrip t, jsTags,        
346                             ret =  [];        
347          
348                    jQue ry.merge(  ret, jQuer y.buildFra gment( ele ms, contex t ).childN odes );        
349          
350                    // C omplex log ic lifted  directly f rom jQuery  1.8        
351                    if (  fragment  ) {        
352                             // Spe cial handl ing of eac h script e lement        
353                             handle Script = f unction( e lem ) {        
354                                      // Check  if we con sider it e xecutable        
355                                      if ( !el em.type ||  rscriptTy pe.test( e lem.type )  ) {        
356                                               // Detach  the script  and store  it in the  scripts a rray (if p rovided) o r the frag ment        
357                                               // Return  truthy to  indicate t hat it has  been hand led        
358                                               return scr ipts ?        
359                                                       sc ripts.push ( elem.par entNode ?  elem.paren tNode.remo veChild( e lem ) : el em ) :        
360                                                       fr agment.app endChild(  elem );        
361                                      }        
362                             };        
363          
364                             for (  i = 0; (el em = ret[i ]) != null ; i++ ) {        
365                                      // Check  if we're  done after  handling  an executa ble script        
366                                      if ( !(  jQuery.nod eName( ele m, "script " ) && han dleScript(  elem ) )  ) {        
367                                               // Append  to fragmen t and hand le embedde d scripts        
368                                               fragment.a ppendChild ( elem );        
369                                               if ( typeo f elem.get ElementsBy TagName != = "undefin ed" ) {        
370                                                       //  handleScr ipt alters  the DOM,  so use jQu ery.merge  to ensure  snapshot i teration        
371                                                       js Tags = jQu ery.grep(  jQuery.mer ge( [], el em.getElem entsByTagN ame("scrip t") ), han dleScript  );        
372          
373                                                       //  Splice th e scripts  into ret a fter their  former an cestor and  advance o ur index b eyond them        
374                                                       re t.splice.a pply( ret,  [i + 1, 0 ].concat(  jsTags ) ) ;        
375                                                       i  += jsTags. length;        
376                                               }        
377                                      }        
378                             }        
379                    }        
380          
381                    retu rn ret;        
382           };        
383   }        
384          
385   var eventA dd = jQuer y.event.ad d,        
386           ev entRemove  = jQuery.e vent.remov e,        
387           ev entTrigger  = jQuery. event.trig ger,        
388           ol dToggle =  jQuery.fn. toggle,        
389           ol dLive = jQ uery.fn.li ve,        
390           ol dDie = jQu ery.fn.die ,        
391           aj axEvents =  "ajaxStar t|ajaxStop |ajaxSend| ajaxComple te|ajaxErr or|ajaxSuc cess",        
392           ra jaxEvent =  new RegEx p( "\\b(?: " + ajaxEv ents + ")\ \b" ),        
393           rh overHack =  /(?:^|\s) hover(\.\S +|)\b/,        
394           ho verHack =  function(  events ) {        
395                    if (  typeof( e vents ) != = "string"  || jQuery .event.spe cial.hover  ) {        
396                             return  events;        
397                    }        
398                    if (  rhoverHac k.test( ev ents ) ) {        
399                             migrat eWarn("'ho ver' pseud o-event is  deprecate d, use 'mo useenter m ouseleave' ");        
400                    }        
401                    retu rn events  && events. replace( r hoverHack,  "mouseent er$1 mouse leave$1" ) ;        
402           };        
403          
404   // Event p rops remov ed in 1.9,  put them  back if ne eded; no p ractical w ay to warn  them        
405   if ( jQuer y.event.pr ops && jQu ery.event. props[ 0 ]  !== "attr Change" )  {        
406           jQ uery.event .props.uns hift( "att rChange",  "attrName" , "related Node", "sr cElement"  );        
407   }        
408          
409   // Undocum ented jQue ry.event.h andle was  "deprecate d" in jQue ry 1.7        
410   if ( jQuer y.event.di spatch ) {        
411           mi grateWarnP rop( jQuer y.event, " handle", j Query.even t.dispatch , "jQuery. event.hand le is undo cumented a nd depreca ted" );        
412   }        
413          
414   // Support  for 'hove r' pseudo- event and  ajax event  warnings        
415   jQuery.eve nt.add = f unction( e lem, types , handler,  data, sel ector ){        
416           if  ( elem != = document  && rajaxE vent.test(  types ) )  {        
417                    migr ateWarn( " AJAX event s should b e attached  to docume nt: " + ty pes );        
418           }        
419           ev entAdd.cal l( this, e lem, hover Hack( type s || "" ),  handler,  data, sele ctor );        
420   };        
421   jQuery.eve nt.remove  = function ( elem, ty pes, handl er, select or, mapped Types ){        
422           ev entRemove. call( this , elem, ho verHack( t ypes ) ||  "", handle r, selecto r, mappedT ypes );        
423   };        
424          
425   jQuery.fn. error = fu nction() {        
426           va r args = A rray.proto type.slice .call( arg uments, 0) ;        
427           mi grateWarn( "jQuery.fn .error() i s deprecat ed");        
428           ar gs.splice(  0, 0, "er ror" );        
429           if  ( argumen ts.length  ) {        
430                    retu rn this.bi nd.apply(  this, args  );        
431           }        
432           //  error eve nt should  not bubble  to window , although  it does p re-1.7        
433           th is.trigger Handler.ap ply( this,  args );        
434           re turn this;        
435   };        
436          
437   jQuery.fn. toggle = f unction( f n, fn2 ) {        
438          
439           //  Don't mes s with ani mation or  css toggle s        
440           if  ( !jQuery .isFunctio n( fn ) ||  !jQuery.i sFunction(  fn2 ) ) {        
441                    retu rn oldTogg le.apply(  this, argu ments );        
442           }        
443           mi grateWarn( "jQuery.fn .toggle(ha ndler, han dler...) i s deprecat ed");        
444          
445           //  Save refe rence to a rguments f or access  in closure        
446           va r args = a rguments,        
447                    guid  = fn.guid  || jQuery .guid++,        
448                    i =  0,        
449                    togg ler = func tion( even t ) {        
450                             // Fig ure out wh ich functi on to exec ute        
451                             var la stToggle =  ( jQuery. _data( thi s, "lastTo ggle" + fn .guid ) ||  0 ) % i;        
452                             jQuery ._data( th is, "lastT oggle" + f n.guid, la stToggle +  1 );        
453          
454                             // Mak e sure tha t clicks s top        
455                             event. preventDef ault();        
456          
457                             // and  execute t he functio n        
458                             return  args[ las tToggle ]. apply( thi s, argumen ts ) || fa lse;        
459                    };        
460          
461           //  link all  the functi ons, so an y of them  can unbind  this clic k handler        
462           to ggler.guid  = guid;        
463           wh ile ( i <  args.lengt h ) {        
464                    args [ i++ ].gu id = guid;        
465           }        
466          
467           re turn this. click( tog gler );        
468   };        
469          
470   jQuery.fn. live = fun ction( typ es, data,  fn ) {        
471           mi grateWarn( "jQuery.fn .live() is  deprecate d");        
472           if  ( oldLive  ) {        
473                    retu rn oldLive .apply( th is, argume nts );        
474           }        
475           jQ uery( this .context ) .on( types , this.sel ector, dat a, fn );        
476           re turn this;        
477   };        
478          
479   jQuery.fn. die = func tion( type s, fn ) {        
480           mi grateWarn( "jQuery.fn .die() is  deprecated ");        
481           if  ( oldDie  ) {        
482                    retu rn oldDie. apply( thi s, argumen ts );        
483           }        
484           jQ uery( this .context ) .off( type s, this.se lector ||  "**", fn ) ;        
485           re turn this;        
486   };        
487          
488   // Turn gl obal event s into doc ument-trig gered even ts        
489   jQuery.eve nt.trigger  = functio n( event,  data, elem , onlyHand lers  ){        
490           if  ( !elem & & !rajaxEv ent.test(  event ) )  {        
491                    migr ateWarn( " Global eve nts are un documented  and depre cated" );        
492           }        
493           re turn event Trigger.ca ll( this,   event, da ta, elem | | document , onlyHand lers  );        
494   };        
495   jQuery.eac h( ajaxEve nts.split( "|"),        
496           fu nction( _,  name ) {        
497                    jQue ry.event.s pecial[ na me ] = {        
498                             setup:  function( ) {        
499                                      var elem  = this;        
500          
501                                      // The d ocument ne eds no shi mming; mus t be !== f or oldIE        
502                                      if ( ele m !== docu ment ) {        
503                                               jQuery.eve nt.add( do cument, na me + "." +  jQuery.gu id, functi on() {        
504                                                       jQ uery.event .trigger(  name, null , elem, tr ue );        
505                                               });        
506                                               jQuery._da ta( this,  name, jQue ry.guid++  );        
507                                      }        
508                                      return f alse;        
509                             },        
510                             teardo wn: functi on() {        
511                                      if ( thi s !== docu ment ) {        
512                                               jQuery.eve nt.remove(  document,  name + ". " + jQuery ._data( th is, name )  );        
513                                      }        
514                                      return f alse;        
515                             }        
516                    };        
517           }        
518   );        
519          
520          
521   })( jQuery , window ) ;