diff --git a/setup.py b/setup.py index 0d7f8b7..d918f76 100644 --- a/setup.py +++ b/setup.py @@ -13,14 +13,17 @@ requirements_path = 'requirements.txt' +description = 'A python api for the website MyAnimeList (or MAL).' + setup( name='pymal', packages=find_packages(exclude=['tests*']), version=version, - description='A python api for the website MyAnimeList (or MAL).', + description=description, + long_description=description, author=authors, license=license, - url='https://bitbucket.org/pymal-developers/pymal/', + url='https://github.com/tomerghelber/pymal', keywords=[ "MyAnimeList", "myanimelist", "MAL", "mal", diff --git "a/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/10132v.jpg" "b/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/10132v.jpg" deleted file mode 100644 index b069a2b..0000000 Binary files "a/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/10132v.jpg" and /dev/null differ diff --git "a/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/11044v.jpg" "b/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/11044v.jpg" deleted file mode 100644 index eba36b0..0000000 Binary files "a/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/11044v.jpg" and /dev/null differ diff --git "a/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/11182v.jpg" "b/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/11182v.jpg" deleted file mode 100644 index ff4f169..0000000 Binary files "a/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/11182v.jpg" and /dev/null differ diff --git "a/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/12175v.jpg" "b/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/12175v.jpg" deleted file mode 100644 index 2ef3eac..0000000 Binary files "a/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/12175v.jpg" and /dev/null differ diff --git "a/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/12394v.jpg" "b/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/12394v.jpg" deleted file mode 100644 index cd1052f..0000000 Binary files "a/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/12394v.jpg" and /dev/null differ diff --git "a/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/12504v.jpg" "b/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/12504v.jpg" deleted file mode 100644 index 4224262..0000000 Binary files "a/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/12504v.jpg" and /dev/null differ diff --git "a/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/12722v.jpg" "b/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/12722v.jpg" deleted file mode 100644 index 5f06248..0000000 Binary files "a/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/12722v.jpg" and /dev/null differ diff --git "a/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/14799v.jpg" "b/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/14799v.jpg" deleted file mode 100644 index d963e5c..0000000 Binary files "a/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/14799v.jpg" and /dev/null differ diff --git "a/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/15010.jpg" "b/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/15010.jpg" deleted file mode 100644 index ee83868..0000000 Binary files "a/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/15010.jpg" and /dev/null differ diff --git "a/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/15717v.jpg" "b/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/15717v.jpg" deleted file mode 100644 index 57b3a00..0000000 Binary files "a/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/15717v.jpg" and /dev/null differ diff --git "a/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/2212089_thumb.jpg" "b/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/2212089_thumb.jpg" deleted file mode 100644 index 01c9b4a..0000000 Binary files "a/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/2212089_thumb.jpg" and /dev/null differ diff --git "a/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/2220_thumb.jpg" "b/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/2220_thumb.jpg" deleted file mode 100644 index 3f8b47c..0000000 Binary files "a/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/2220_thumb.jpg" and /dev/null differ diff --git "a/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/270407_thumb.jpg" "b/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/270407_thumb.jpg" deleted file mode 100644 index 181f9a4..0000000 Binary files "a/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/270407_thumb.jpg" and /dev/null differ diff --git "a/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/2875887_thumb.jpg" "b/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/2875887_thumb.jpg" deleted file mode 100644 index 3e66eb7..0000000 Binary files "a/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/2875887_thumb.jpg" and /dev/null differ diff --git "a/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/3271v.jpg" "b/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/3271v.jpg" deleted file mode 100644 index 5129cef..0000000 Binary files "a/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/3271v.jpg" and /dev/null differ diff --git "a/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/39208t.jpg" "b/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/39208t.jpg" deleted file mode 100644 index d433233..0000000 Binary files "a/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/39208t.jpg" and /dev/null differ diff --git "a/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/3954777_thumb.jpg" "b/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/3954777_thumb.jpg" deleted file mode 100644 index 3df3480..0000000 Binary files "a/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/3954777_thumb.jpg" and /dev/null differ diff --git "a/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/455466_thumb.jpg" "b/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/455466_thumb.jpg" deleted file mode 100644 index 16ea356..0000000 Binary files "a/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/455466_thumb.jpg" and /dev/null differ diff --git "a/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/47693t.jpg" "b/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/47693t.jpg" deleted file mode 100644 index c94f93a..0000000 Binary files "a/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/47693t.jpg" and /dev/null differ diff --git "a/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/66t.jpg" "b/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/66t.jpg" deleted file mode 100644 index 1aac7ba..0000000 Binary files "a/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/66t.jpg" and /dev/null differ diff --git "a/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/6803v.jpg" "b/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/6803v.jpg" deleted file mode 100644 index 6518194..0000000 Binary files "a/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/6803v.jpg" and /dev/null differ diff --git "a/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/80556t.jpg" "b/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/80556t.jpg" deleted file mode 100644 index cb588c7..0000000 Binary files "a/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/80556t.jpg" and /dev/null differ diff --git "a/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/82579t.jpg" "b/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/82579t.jpg" deleted file mode 100644 index 38a6974..0000000 Binary files "a/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/82579t.jpg" and /dev/null differ diff --git "a/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/94286t.jpg" "b/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/94286t.jpg" deleted file mode 100644 index 73b7d2f..0000000 Binary files "a/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/94286t.jpg" and /dev/null differ diff --git "a/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/animeinfo.js" "b/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/animeinfo.js" deleted file mode 100644 index 465130e..0000000 --- "a/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/animeinfo.js" +++ /dev/null @@ -1,108 +0,0 @@ -$(document).ready(function(){ - $('.Anime_Gallery').fancybox({ - 'titlePosition' : 'over' - }); - - $('a.viewOpEdMore').click(function(){ - var _this = $(this); - - $('#'+_this.data('use')).toggle(); - - if (_this.html() == 'more') - { - _this.html('less'); - } - else - { - _this.html('more'); - } - }); -}); - - -function buyAnime(element) { - var $element = jQuery(element), - formElement = $element.data('form-id'); - - jQuery('#' + formElement).submit(); -} - -function myinfo_updateInfo(entry_id) -{ - var nscore = document.getElementById("myinfo_score").value; - var nstatus = document.getElementById("myinfo_status").value; - var nepsseen = document.getElementById("myinfo_watchedeps").value; - var naid = document.getElementById("myinfo_anime_id").value; - var curstats = document.getElementById("myinfo_curstatus").value; - - //var url = "/includes/ajax.inc.php?t=62&aid="+aid+"&alistid="+entry_id+"&score="+score+"&status="+status+"&epsseen="+epsseen; - document.getElementById("myinfoDisplay").innerHTML = ''; - $.post("/includes/ajax.inc.php?t=62", {aid:naid,alistid:entry_id,score:nscore,status:nstatus,epsseen:nepsseen,astatus:curstats}, function(data) - { - document.getElementById("myinfoDisplay").innerHTML = data; - } - ); -} - -function checkEps() -{ - var totalEps = document.getElementById("curEps").innerHTML; - if (document.getElementById("myinfo_status").value == 2) - document.getElementById("myinfo_watchedeps").value = totalEps; -} - -function myinfo_toggleAdd() -{ - var myobj = document.getElementById("addtolist"); - $("#addtolist").toggle("slow"); - $("#addclicker").toggle(); -} - -function showHideSimilarImages(totalImages) -{ - for(i=1;i<=totalImages;i++) - { - $("#simimg"+i).toggle(); - } -} - -function getRecommendation(arid,arsid) -{ - var simObj = document.getElementById("simaid"+arsid); - $(simObj).toggle(); - //simObj.style.display = 'block'; - /* - simObj.innerHTML = ' Loading recommendations...'; - $.get("../includes/ajax.inc.php?t=27&arid="+arid+"&arsid="+arsid, function(data) - { - simObj.innerHTML = data; - } - ); - */ -} - -function myinfo_addtolist(anime_id) -{ - var nscore = document.getElementById("myinfo_score").value; - var nstatus = document.getElementById("myinfo_status").value; - var nepsseen = document.getElementById("myinfo_watchedeps").value; - - //var url = "&aid="+anime_id+"&score="+score+"&status="+status+"&epsseen="+epsseen; - document.getElementById("myinfoDisplay").innerHTML = ''; - $.post("/includes/ajax.inc.php?t=61", {aid:anime_id,score:nscore,status:nstatus,epsseen:nepsseen}, function(data) - { - document.getElementById("myinfoDisplay").innerHTML = ''; - document.getElementById("addtolist").innerHTML = data; - } - ); -} - -function showFSGComment(fsg_id) -{ - $("#fsgComments"+fsg_id).toggle("slow"); -} - -function doedit() -{ - $("#editdiv").toggle("slow"); -} diff --git "a/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/apingage.js" "b/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/apingage.js" deleted file mode 100644 index 19b5efd..0000000 --- "a/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/apingage.js" +++ /dev/null @@ -1 +0,0 @@ -function traceit(e){}function initIngage(e){__setupParams(e);if(__checkIDevices())return;var t=navigator.userAgent.toLowerCase();if(t.indexOf("safari")!=-1){if(t.indexOf("chrome")>-1){isSafari=false}else{isSafari=true}}if(__checkFrequency()){if(!isSafari)__addIframe();else{window.onload=function(){__setupSafariVersion()}}__initListeners()}}function __checkIDevices(){return navigator.userAgent.match(/iPhone/i)||navigator.userAgent.match(/iPod/i)||navigator.userAgent.match(/iPad/i)}function __checkFrequency(){var e=getCookie();var t;try{t=JSON.parse(e)}catch(n){setCookie(1);return true}if(t){var r=Number(t["inview_loaded"]);if(r%freq==0){setCookie(1);return true}setCookie(r+1);return false}return false}function setCookie(e){document.cookie=COOKIE_NAME+elementId+'={"inview_loaded":"'+e+'"}; expires=10000; path=/'}function getCookie(){var e=new RegExp("[; ]"+COOKIE_NAME+elementId+"=([^\\\\s;]*)");var t=(" "+document.cookie).match(e);if(COOKIE_NAME+elementId&&t)return unescape(t[1]);return""}function __setupParams(e){elementId=e.elementId;adTag=e.adTag;flashHeight=e.height;flashWidth=e.width;delimiter=e.p_delimiter;freq=e.freq!=0?e.freq:1;playControl=e.useViewabilityForAd;soundControl=e.useVolumeForAd;secondsToPlay=e.secondsToPlay;scrLoc=e.scrLoc;if(e.ga){gaId=e.ga.id;gaShouldTrack=gaId&&gaId!="";gaLabel=e.ga.label}}function __addIframe(){divForAppend=document.getElementById(elementId);traceit("DIV append: "+divForAppend.offsetHeight);divWithIframe=document.createElement("div");divWithIframe.id="adplayer_iframeDiv";divWithIframe.style.position="relative";divWithIframe.style.height="0px";divWithIframe.style.width=flashWidth+"px";divWithIframe.style.overflow="hidden";iframe=document.createElement("iframe");iframe.src="http://"+scrLoc+".springboardplatform.com/storage/js/ingage/main.html"+"?width="+flashWidth+"&height="+flashHeight+"&soundControl="+soundControl+"&host="+document.referrer+"&playControl="+playControl+"&secondsToPlay="+secondsToPlay+"&gaId="+gaId+"&gaLabel="+gaLabel+"&srcLoc="+scrLoc+"&adTag="+adTag+"ing_sb_adtag";iframe.id="adPlayer_ingage";iframe.width=flashWidth;iframe.height=flashHeight;iframe.scrolling="no";iframe.style.border="0px";iframe.style.width=flashWidth+"px";iframe.style.height=flashHeight+"px";iframe.style.frameBorder=0;iframe.style.overflow="hidden";iframe.style.align="left";iframe.style.position="relative";iframe.style.display="block";iframe.style.top="-5000px";divWithIframe.appendChild(iframe);__appendDivWithIFrame();readyInterval=window.setInterval(function(){sendToPostMessage("AdsPlayer|readyState")},100)}function __appendDivWithIFrame(){var e=divForAppend.getElementsByTagName("p");var t=e.length;var n;var r=divForAppend;for(var i=0;iflashHeight){e=flashHeight;clearInterval(slideDownInterval);if(!isSafari)iframe.style.top="0px";else __embedFlash()}else{e=e+20}divWithIframe.style.height=e+"px"}function collapseDiv(){var e=parseInt(divWithIframe.style.height);traceit("collapseDiv "+e);if(e-20<0){e=0;clearInterval(slideUpInterval);window.clearTimeout(checkCollapseInterval);__removeIframe()}else{e=e-20}if(divWithIframe){divWithIframe.style.height=e+"px";traceit("divWithIframe height: "+divWithIframe.style.height+" "+divWithIframe.offsetHeight+" "+divForAppend.offsetHeight);traceit("divWithIframe width: "+divWithIframe.style.width+" "+divWithIframe.offsetWidth+" "+divForAppend.offsetWidth);__checkIfCollapsed()}}function __checkIfCollapsed(){if(divWithIframe.style.height==prevDivHeight&&divWithIframe.style.height!="0px"){clearInterval(slideUpInterval);__removeIframe();divWithIframe.style.height="0px"}else{prevDivHeight=divWithIframe.style.height}}function scrollCheck(){traceit("scrollCheck: isEverythingReady "+isEverythingReady);if(!isEverythingReady)return;var e=checkIfVisible();if(e!=elementVisible){elementVisible=e;if(elementVisible){if(secondsToPlay>0)playInterval=setTimeout(function(){playAd()},secondsToPlay);else playAd()}else{clearTimeout(playInterval);if(!isSafari)sendToPostMessage("AdsPlayer|visible|"+elementVisible);else contactFlash("visible",elementVisible)}}}function playAd(){if(!expanded){expanded=true;slideDownInterval=setInterval(function(){expandDiv()},20)}if(!isSafari)sendToPostMessage("AdsPlayer|visible|"+elementVisible);else contactFlash("visible",elementVisible)}function checkIfVisible(){var e=getViewportHeight();var t=getViewportWidth();var n=scrollYValue();var r=scrollXValue();var i=getFixed();var s=posY();var o=posX();var u=downLimit=s+flashHeight*.5;var a=leftLimit=o+flashWidth*.5;var f=ui;return f&&l}function getViewportHeight(){var e=document.documentElement;if(!!window.innerHeight)return window.innerHeight;else if(e&&!isNaN(e.clientHeight))return e.clientHeight;return 0}function getViewportWidth(){var e=document.documentElement;if(!!window.innerWidth)return window.innerWidth;else if(e&&!isNaN(e.clientWidth))return e.clientWidth;return 0}function scrollYValue(){if(window.pageYOffset){return window.pageYOffset}return Math.max(document.documentElement.scrollTop,document.body.scrollTop)}function scrollXValue(){if(window.pageXOffset){return window.pageXOffset}return Math.max(document.documentElement.scrollLeft,document.body.scrollLeft)}function getFixed(){var e=0;if(/IE/i.test(navigator.userAgent))return 0;var t=Array.prototype.slice.call(document.getElementsByTagName("div"));var n=Array.prototype.slice.call(document.getElementsByTagName("header"));if(n){for(var r=0;r0&&e.offsetTop==0&&e.offsetHeight!=0&&getStyle(e,"display")!="none"&&getStyle(e,"position")=="fixed"&&checkWidth(e)&&getStyle(e,"visibility")!="hidden"}function getStyle(e,t){var n;if(e.currentStyle)n=e.currentStyle[t];else if(window.getComputedStyle)n=document.defaultView.getComputedStyle(e,t).getPropertyValue(t);return n}function checkWidth(e){return document.body.offsetWidth==e.offsetWidth}function posY(){var e=divWithIframe;var t=0;while(!!e&&e.tagName.toLowerCase()!=="body"){t+=e.offsetTop;e=e.offsetParent}return t}function posX(){var e=divWithIframe;var t=0;while(!!e&&e.tagName.toLowerCase()!=="body"){t+=e.offsetLeft;e=e.offsetParent}return t}function __setupSafariVersion(){var e=document.createElement("script");e.type="text/javascript";e.onload=function(){traceit("setup safari version");if(gaShouldTrack)__setupSafariGA();__setupSafariFlash()};e.src="http://"+scrLoc+".springboardplatform.com/storage/js/ingage/swfobject.js";document.body.appendChild(e)}function __setupSafariGA(){(function(e,t,n,r,i,s,o){e["GoogleAnalyticsObject"]=i;e[i]=e[i]||function(){(e[i].q=e[i].q||[]).push(arguments)},e[i].l=1*new Date;s=t.createElement(n),o=t.getElementsByTagName(n)[0];s.async=1;s.src=r;o.parentNode.insertBefore(s,o)})(window,document,"script","//www.google-analytics.com/analytics.js","gooan");gooan("create",gaId,"auto");gooan("send","pageview")}function gaTrackSafari(e){if(!gaShouldTrack)return;if(gooan){gooan("send","event",gaLabel,e)}}function __setupSafariFlash(){divForAppend=document.getElementById(elementId);divToMove=document.createElement("div");divToMove.style.position="relative";divToMove.style.width=flashWidth+"px";divToMove.style.height=flashHeight+"px";divToMove.id="div_move";divToMove.style.display="block";divWithFlash=document.createElement("div");divWithFlash.style.position="relative";divWithFlash.id="div_flash";divWithFlash.style.overflow="hidden";divWithFlash.style.width=flashWidth+"px";divWithFlash.style.height=flashHeight+"px";divWithFlash.style.display="block";divWithIframe=document.createElement("div");divWithIframe.id="adplayer_iframeDiv";divWithIframe.style.height="0px";divWithIframe.style.width=flashWidth+"px";divWithIframe.style.overflow="hidden";divWithIframe.style.display="block";divToMove.appendChild(divWithFlash);divWithIframe.appendChild(divToMove);__appendDivWithIFrame();isEverythingReady=true;traceit("READY");scrollCheck()}function contactFlash(e,t){var n=document.getElementById("div_flash");if(e=="visible"){try{if(t)n.playAd();else n.pauseAd()}catch(r){}}}function __embedFlash(){var e={};e.width=flashWidth;e.height=flashHeight;e.adTag=escape(adTag);e.ingage=true;e.soundControl=soundControl;e.playControl=playControl;e.host=document.referrer;e.isSafari=isSafari;var t="http://"+scrLoc+".springboardplatform.com/storage/js/ingage/AdsPlayer.swf";traceit("SAAAFARI "+t);var n={};n.wmode="transparent";n.movie=t;n.allowscriptaccess="always";n.allowFullScreen="true";var r={};r.classid="D27CDB6E-AE6D-11cf-96B8-444553540000";r.width=flashWidth;r.height=flashHeight;r.movie=t;r.id="attFlashIdName";r.name="attFlashIdName";r.allowscriptaccess="always";swfobject.embedSWF(t,"div_flash",flashWidth,flashHeight,"10.0.0","expressInstall.swf",e,n)}function setAdStatusSafari(e){gaTrackSafari(e);if(e=="allAdsCompleted"||e.indexOf("error")!=-1){if(!completed){__killAd()}}else if(e.indexOf("loaded")!=-1){isEverythingReady=true;if(isSafari){if(elementVisible){var t=document.getElementById("div_flash");t.playAd()}}else scrollCheck()}}if(SbInGageWidget==undefined){var SbInGageWidget={options:{cmsPath:"http://dev.publishers.springboardplatform.com"},init:function(e){var t=SbInGageWidget.clone(SbInGageWidget.options);t=SbInGageWidget.extend(t,e);SbInGageWidget.options=t;this.makeCall()},clone:function(e){if(!e||typeof e!="object"){return e}var t=new e.constructor;for(var n in e){if(e.hasOwnProperty(n)){t[n]=SbInGageWidget.clone(e[n])}}return t},extend:function(e,t){for(var n in t){if(typeof e[n]=="object"){e[n]=SbInGageWidget.extend(e[n],t[n])}else{e[n]=t[n]}}return e},makeCall:function(){var e=this.options.cmsPath+"/ingage/getJson/"+this.options.partnerId+"/"+this.options.widgetId;var t=document.getElementsByTagName("head").item(0);var n=document.createElement("script");n.setAttribute("type","text/javascript");n.setAttribute("src",e);n.async=true;t.appendChild(n)}}}var COOKIE_NAME="ads_player_ingage_";var elementId;var adTag="";var freq=1;var delimiter;var flashWidth=100;var flashHeight=100;var playControl;var soundControl;var secondsToPlay=0;var scrLoc="dev";var gaId="";var gaLabel="";var iframe;var divArray=[];var divWithIframe;var divForAppend;var elementVisible=false;var isEverythingReady=false;var readyInterval;var completed=false;var expanded=false;var slideDownInterval;var slideUpInterval;var checkCollapseInterval;var playInterval;var lastPlayAction=0;var prevDivHeight=0;var isSafari=false;var __initialScroll=false;var __initialLoad=false;var alreadyrunflag=0;if(window["addEventListener"]){window.addEventListener("message",postMessageResponse,false)}else{window.attachEvent("onmessage",postMessageResponse)} \ No newline at end of file diff --git "a/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/cookie_notice.js" "b/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/cookie_notice.js" deleted file mode 100644 index 9a08d8c..0000000 --- "a/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/cookie_notice.js" +++ /dev/null @@ -1 +0,0 @@ -window.addEventListener("load",function(){cookieNotice.init()});var cookieNotice={showTime:15e3,fadingInTime:100,fadingOutTime:2200,cookieDays:null,countryData:{gb:{text:'About Cookies on This Site:Our site uses cookies and other technologies so that we, and our partners, can remember you and understand how you and other visitors use our site. By continuing to browse the site, you are agreeing to our use of cookies. To see a complete list of the companies that use these cookies and technologies and to tell us whether or not they can be used on your device, click on the Ad Choices button available at the bottom of every page.'},ca:{text:'About Cookies on This Site:Our site uses cookies and other technologies so that we, and our partners, can remember you and understand how you and other visitors use our site. By continuing to browse the site, you are agreeing to our use of cookies. To see a complete list of the companies that use these cookies and technologies and to tell us whether or not they can be used on your device, click on the Ad Choices button available at the bottom of every page.'},eu:{text:'About Cookies on This Site:Our site uses cookies and other technologies so that we, and our partners, can remember you and understand how you and other visitors use our site. By continuing to browse the site, you are agreeing to our use of cookies. To see a complete list of the companies that use these cookies and technologies and to tell us whether or not they can be used on your device, click on the Ad Choices button available at the bottom of every page.'}},europeanCountries:"de,yu,hr,nl,it,fr",country:null,timesChecked:0,maxTimesToCheck:6,retryTimeout:1e3,opacity:0,opincrement:null,opdecrement:null,show:function(){cookieNotice.opincrement=20/(cookieNotice.fadingInTime>0?cookieNotice.fadingInTime:1);cookieNotice.opdecrement=20/(cookieNotice.fadingOutTime>0?cookieNotice.fadingOutTime:1);var e=document.createElement("div");e.innerHTML=cookieNotice.countryData[cookieNotice.country].text;e.id="cookieNotice";document.body.appendChild(e);var t=document.createElement("a");t.id="cookieNoticeClose";t.setAttribute("class","cnclose");t.onclick=function(){cookieNotice.close()};e.appendChild(t);cookieNotice.fadeIn()},fadeOut:function(){var e=document.getElementById("cookieNotice");cookieNotice.opacity-=cookieNotice.opdecrement;e.style.opacity=cookieNotice.opacity;if(cookieNotice.opacity<=0){e.style.display="none"}else{setTimeout("cookieNotice.fadeOut()",20)}},fadeIn:function(){var e=document.getElementById("cookieNotice");cookieNotice.opacity+=cookieNotice.opincrement;e.style.opacity=cookieNotice.opacity;if(cookieNotice.opacity<1){setTimeout("cookieNotice.fadeIn()",20)}else{cookieNotice.opacity=1;setTimeout("cookieNotice.fadeOut()",cookieNotice.showTime)}},close:function(){document.getElementById("cookieNotice").style.display="none"},setCookie:function(e,t){var n="";if(cookieNotice.cookieDays!=null){var r=new Date;r.setDate(r.getDate()+cookieNotice.cookieDays);n="; expires="+r.toUTCString()}console.log("COOKIE: "+e+"="+escape(t)+n);document.cookie=e+"="+escape(t)+n},isMobile:function(){var e=navigator.userAgent||navigator.vendor||window.opera;if(/(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino/i.test(e)||/1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\-|your|zeto|zte\-/i.test(e.substr(0,4))){return true}else{return false}},getCookie:function(e){var t=document.cookie;var n=t.indexOf(" "+e+"=");if(n==-1){n=t.indexOf(e+"=")}if(n==-1){t=null}else{n=t.indexOf("=",n)+1;var r=t.indexOf(";",n);if(r==-1){r=t.length}t=unescape(t.substring(n,r))}if(t=="false"){t=false}if(t=="true"){t=true}return t},init:function(){if(cookieNotice.getCookie("noticeShown")==true||cookieNotice.isMobile()){return false}if(cookieNotice.getCookie("visitor_country")==null){if(cookieNotice.timesChecked++
  
'; - - $.fancybox({ - 'content' : fsgHtml, - 'autoScale' : true, - 'autoDimensions' : true - }); - - if (voteType == 1) // good - { - document.getElementById("good"+goodbadVar).src = '/images/good-on.gif'; - document.getElementById("bad"+goodbadVar).src = '/images/bad-off.gif'; - } - else if (voteType == 2) // bad - { - document.getElementById("bad"+goodbadVar).src = '/images/bad-on.gif'; - document.getElementById("good"+goodbadVar).src = '/images/good-off.gif'; - } - } - -} - -function fsg_cancelVote(voteType,fsg_id,anime_id,type) -{ - var conf = confirm("Are you sure?"); - - if (conf) { - var goodbadVar; - if (type == 1) // anime page - goodbadVar = fsg_id; - else // fansubber page - goodbadVar = anime_id; - - fsg_setVote(voteType,fsg_id,anime_id,type); - $.fancybox.close(); - } -} - -function fsg_makeComment(fsg_id,anime_id,type,votetype) -{ - var goodbadVar; - if (type == 1) // anime page - goodbadVar = fsg_id; - else // fansubber page - goodbadVar = anime_id; - - document.getElementById("explain").innerHTML = "Please wait..."; - - //var fsg_url = "&fsgid="+fsg_id+"&value="+votetype+"&aid="+anime_id+"&comment="+$("#fsgcomm").val(); - $.post("/includes/ajax.inc.php?t=19", {fsgid:fsg_id,value:votetype,aid:anime_id,comment:$("#fsgcomm").val()}, function(data) - { - $.fancybox.close(); - } - ); - - -} \ No newline at end of file diff --git "a/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/fav.js" "b/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/fav.js" deleted file mode 100644 index ae733d2..0000000 --- "a/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/fav.js" +++ /dev/null @@ -1,3 +0,0 @@ -function addRemoveFavorite(obj,fav_id,type_id) -{var parentObj=$(obj).parent();parentObj.html('Saving...');$.post("/includes/ajax.inc.php?t=80",{id:fav_id,type:type_id},function(data) -{parentObj.html(data);});} \ No newline at end of file diff --git "a/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/forum.js" "b/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/forum.js" deleted file mode 100644 index a17a213..0000000 --- "a/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/forum.js" +++ /dev/null @@ -1,34 +0,0 @@ -var timeStamp=Date();var xmlLoaderImage='http://cdn.myanimelist.net/images/xmlhttp-loader.gif';$(function(){$('div.postActions a.deletePost').live('click',function(){var thisObj=$(this);thisObj.hide();var confirmObj=thisObj.parent().find('span.confirmDelete');confirmObj.show();});$('div.postActions a.yes').live('click',function(){var thisObj=$(this);var confirmDiv=thisObj.parent();var msgId=thisObj.data('msgid');$.ajax({type:'POST',url:'/includes/ajax.inc.php?t=84',data:'msgId='+msgId,dataType:'json',success:function(data){if(data.error==null) -{confirmDiv.html('Deleted');$('#forumMsg'+msgId).hide('slow');} -else -{alert('Error: '+data.error);}}});});$('div.postActions a.no').live('click',function(){var thisObj=$(this);thisObj.parent().hide();thisObj.parent().parent().find('a.deletePost').show();});$('#postReply').click(function(){$('#postIndicator').show();var topicId=$('#topicId').val();$.ajax({type:'POST',url:'/includes/ajax.inc.php?t=82',data:'topicId='+topicId+'&messageText='+encodeURIComponent($('#messageText').val())+'&totalReplies='+$('#totalReplies').val(),success:function(data){if(data.html==null){if(data.error!=null){alert(data.error);} -else{alert('There was an error posting, please try again.');}} -else{var extra='';if(data.moreposts){var plural='';if(data.moreposts>1) -plural='s have';else -plural=' has';extra='
'+data.moreposts+' post'+plural+' been added since your last page refresh. Go to new post.
';} -$('.forum_boardrowspacer').last().after(extra+data.html);$('#messageText').val('');$('#quickReply').hide();load_img_tags();} -$('#postIndicator').hide();},dataType:'json'});});$('#showQuickReply').click(function(){$('#quickReply').toggle();$('#messageText').focus();});});function quoteEm(msgId) -{$('#quickReply').show();var username=$('#messageuser'+msgId).children().children().html();$.ajax({type:'POST',url:'/includes/quotetext.php',data:'msgid='+msgId,success:function(data){$('#messageText').val($('#messageText').val()+"[quote="+username+"]"+data+"[/quote]");}});$('#messageText').focus();} -function ignoreBoard(boardid,inVal) -{document.getElementById("iBoardId").innerHTML='';$.get("/includes/ajax.inc.php?t=16&val="+inVal+"&ibid="+boardid+"×tamp="+timeStamp,function(data) -{if(inVal==2) -document.getElementById("iBoardId").innerHTML="Ignore Board";else -document.getElementById("iBoardId").innerHTML="Un-ignore Board";});} -function ignoreTopic(topicid,idName,cVal) -{$.get("/includes/ajax.inc.php?t=1&val="+cVal+"&id="+topicid+"×tamp="+timeStampeStamp,function(data) -{$('#'+idName).toggle();});} -function ignoreTopicinThread(topicid) -{document.getElementById("ignoreThreadText").innerHTML='';$.get("/includes/ajax.inc.php?t=1&id="+topicid+"×tamp="+timeStamp,function(data) -{if(data==1) -$('#ignoreThreadText').html("Hid Topic");else if(data==2) -$('#ignoreThreadText').html("Removed Hide");else -$('#ignoreThreadText').html('Too Many');});} -function watchTopic(topicid) -{document.getElementById("watchText").innerHTML='';$.get("/includes/ajax.inc.php?t=69&topic_id="+topicid+"×tamp="+timeStamp,function(data) -{document.getElementById("watchText").innerHTML=data;});} -function topicview_watchTopic(topicid) -{var topicObj=document.getElementById("wt"+topicid);$.get("/includes/ajax.inc.php?t=69&topic_id="+topicid+"×tamp="+timeStamp,function(data) -{var myRegExp=/Watching/;var matchPos=data.search(myRegExp);if(matchPos!=-1) -{topicObj.innerHTML='';} -else -{topicObj.innerHTML='';}});} \ No newline at end of file diff --git "a/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/forums.css" "b/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/forums.css" deleted file mode 100644 index 805d869..0000000 --- "a/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/forums.css" +++ /dev/null @@ -1,121 +0,0 @@ -.vote_container -{ - background-color: #e1e7f5; -} - -.message_separator -{ - background-color: #4f74c8; - font-size: 1px; - height: 2px; -} - -.forum_category -{ - background-color: #4f74c8; - color: #ffffff; - font-weight: bold; - padding: 3px; -} - -.forum_category a, .forum_category a:link, .forum_category a:hover, .forum_category a:visited -{ - color: #fff; -} - -.to-left { - float: left; -} - -.to-left > a { - float: left; - padding: 0 10px 0 0; -} - -.forum_boardrow2 -{ - background-color: #f6f6f6; - padding: 6px 3px; - border-style: solid; - border-color: #ebebeb; - border-width: 0px; -} - -.forum_boardrow1 -{ - background-color: #ffffff; - padding: 6px 4px; - border-style: solid; - border-color: #ebebeb; - border-width: 0px; - vertical-align: top; -} - -.sig -{ - margin-top: 5px; - padding-top: 10px; - border-width: 1px 0px 0px 0px; - border-style: solid; - border-color: #ebebeb; - max-height: 160px; - overflow: hidden; -} - -.forum_boardrowheader -{ - background-color: #ebebeb; - padding: 3px; -} - -.forum_boardrowspacer -{ - background-color: #ffffff; - font-size: 1px; - height: 8px; -} - -.forum_postusername a -{ - color: #444444; - text-decoration: none; -} - -.forum_postusername a:visited -{ - color: #444444; - text-decoration: none; -} - -.forum_postusername a:hover -{ - color: #444444; - text-decoration: underline; -} - -.forum_locheader -{ - color: #444444; - font-size: 14px; - font-weight: bold; -} - -#forum_options_container ul -{ - margin: 0; - padding: 0; - list-style-type: none; -} - -#forum_options_container ul li -{ - border-style: solid; - border-color: #82a0e5; - padding: 3px; - border-width: 1px; - display: inline; -} - -.postActions { - margin: 12px 0 0 0; -} \ No newline at end of file diff --git "a/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/hover.js" "b/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/hover.js" deleted file mode 100644 index eb4c72d..0000000 --- "a/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/hover.js" +++ /dev/null @@ -1,903 +0,0 @@ -// Hoverscript for bubbles popping up when you hover over their images -// Copyright - Garrett Gyssler - -var hoverinfo_viewX; -var hoverinfo_viewY; -var hoverinfo_t; -var msie6; -var hoverinfo_stack; - -$(document).ready(function() { - - //msie6 = $.browser.msie && ($.browser.version && $.browser.version < 7 || (/5\.5|6.0/).test(navigator.userAgent)); - - $().mousemove(function(e){ - hoverinfo_viewX = e.pageX; - hoverinfo_viewY = e.pageY; - }); - - $('a.hoverinfo_trigger').hoverIntent({ - sensitivity: 1, // number = sensitivity threshold (must be 1 or higher) - interval: 200, // number = milliseconds for onMouseOver polling interval - over: showInfo, // function = onMouseOver callback (required) - timeout: 300, // number = milliseconds delay before onMouseOut - out: hideInfo // function = onMouseOut callback (required) - }); - -}); - -function showInfo() -{ - // if there is already a bubble up, remove it - if (hoverinfo_stack) - $(hoverinfo_stack).css('display','none'); - - var pos = {}; - - var area = $(this).attr("id"); - var info = $(this).attr("rel"); - var sInfo = $(info).attr("rel"); - - var sType = sInfo.substring(0,1); - var sID = sInfo.substring(1); - - $(area).position(pos); - - var curleft = pos.left; - var curtop = pos.top; - - var newleft = (curleft-25); - var newtop = (curtop+15); - - $(info).html('
'); - $(info).css('background-image',''); - $(info).attr("class","hoverinfo"); - - var totalHeight = $(window).height(); - var totalWidth = $(window).width(); - var scrollOffset = $(window).scrollTop(); - var padding_left = 35; - var padding_top = 14; - - if ((newtop+280) > (totalHeight+scrollOffset)) - { - newtop = (newtop - 270); - newleft = (newleft + 100); - padding_left = 35; - - if ( (newleft+280) > totalWidth ) - { - newleft = (newleft - 450); - padding_left = 14; - - $(info).css('background-image','url(http://cdn.myanimelist.net/images/getinfo_botright.png)'); - } - else - { - $(info).css('background-image','url(http://cdn.myanimelist.net/images/getinfo_botleft.png)'); - } - } - else if ((newleft+297) > totalWidth) - { - newleft = (newleft - 397); - padding_left = 15; - - $(info).css('background-image','url(http://cdn.myanimelist.net/images/getinfo_topright.png)'); - } - - $(info).css('left',newleft+'px'); - $(info).css('top',newtop+'px'); - $(info).css('padding-left',padding_left+'px'); - $(info).css('padding-top',padding_top+'px'); - - var url; - if (sType == 'a') - url = "/includes/ajax.inc.php?t=64&id="+sID; - else - url = "/includes/ajax.inc.php?t=65&id="+sID; - - $.get(url, function(data) { - var obj = $(info+' div'); - obj.html(""+data); - obj.css('width',345); - obj.css('height',250); - $(info).css('display','block'); - hoverinfo_stack = info; - }); -} - -function hideInfo(divid) -{ - var pos = {}; - var divid; - var area = $(this).attr("id"); - var info = $(this).attr("rel"); - var container = $(this).parents(area); - var mydiv = $(info); - var left = (mydiv[0].offsetLeft); - var top = (mydiv[0].offsetTop); - - hoverinfo_t = setInterval(function() { - if ((hoverinfo_viewX > left) && (hoverinfo_viewX < (left + 410))) { - if ((hoverinfo_viewY > top) && (hoverinfo_viewY < (top + 295))) { - return; - } - } - - mydiv.css('display','none'); - clearInterval(hoverinfo_t); - },200); -} - -// end Garrett Gyssler copyright - - -/** -* hoverIntent is similar to jQuery's built-in "hover" function except that -* instead of firing the onMouseOver event immediately, hoverIntent checks -* to see if the user's mouse has slowed down (beneath the sensitivity -* threshold) before firing the onMouseOver event. -* -* hoverIntent r5 // 2007.03.27 // jQuery 1.1.2 -* -* -* hoverIntent is currently available for use in all personal or commercial -* projects under both MIT and GPL licenses. This means that you can choose -* the license that best suits your project, and use it accordingly. -* -* // basic usage (just like .hover) receives onMouseOver and onMouseOut functions -* $("ul li").hoverIntent( showNav , hideNav ); -* -* // advanced usage receives configuration object only -* $("ul li").hoverIntent({ -* sensitivity: 2, // number = sensitivity threshold (must be 1 or higher) -* interval: 50, // number = milliseconds of polling interval -* over: showNav, // function = onMouseOver callback (required) -* timeout: 100, // number = milliseconds delay before onMouseOut function call -* out: hideNav // function = onMouseOut callback (required) -* }); -* -* @param f onMouseOver function || An object with configuration options -* @param g onMouseOut function || Nothing (use configuration options object) -* @return The object (aka "this") that called hoverIntent, and the event object -* @author Brian Cherne -*/ -(function($) { - $.fn.hoverIntent = function(f,g) { - // default configuration options - var cfg = { - sensitivity: 7, - interval: 100, - timeout: 0 - }; - // override configuration options with user supplied object - cfg = $.extend(cfg, g ? { over: f, out: g } : f ); - - // instantiate variables - // cX, cY = current X and Y position of mouse, updated by mousemove event - // pX, pY = previous X and Y position of mouse, set by mouseover and polling interval - var cX, cY, pX, pY; - - // A private function for getting mouse position - var track = function(ev) { - cX = ev.pageX; - cY = ev.pageY; - }; - - // A private function for comparing current and previous mouse position - var compare = function(ev,ob) { - ob.hoverIntent_t = clearTimeout(ob.hoverIntent_t); - // compare mouse positions to see if they've crossed the threshold - if ( ( Math.abs(pX-cX) + Math.abs(pY-cY) ) < cfg.sensitivity ) { - $(ob).unbind("mousemove",track); - // set hoverIntent state to true (so mouseOut can be called) - ob.hoverIntent_s = 1; - return cfg.over.apply(ob,[ev]); - } else { - // set previous coordinates for next time - pX = cX; pY = cY; - // use self-calling timeout, guarantees intervals are spaced out properly (avoids JavaScript timer bugs) - ob.hoverIntent_t = setTimeout( function(){compare(ev, ob);} , cfg.interval ); - } - }; - - // A private function for delaying the mouseOut function - var delay = function(ev,ob) { - ob.hoverIntent_t = clearTimeout(ob.hoverIntent_t); - ob.hoverIntent_s = 0; - return cfg.out.apply(ob,[ev]); - }; - - // A private function for handling mouse 'hovering' - var handleHover = function(e) { - // next three lines copied from jQuery.hover, ignore children onMouseOver/onMouseOut - var p = (e.type == "mouseover" ? e.fromElement : e.toElement) || e.relatedTarget; - while ( p && p != this ) { try { p = p.parentNode; } catch(e) { p = this; } } - if ( p == this ) { return false; } - - // copy objects to be passed into t (required for event object to be passed in IE) - var ev = jQuery.extend({},e); - var ob = this; - - // cancel hoverIntent timer if it exists - if (ob.hoverIntent_t) { ob.hoverIntent_t = clearTimeout(ob.hoverIntent_t); } - - // else e.type == "onmouseover" - if (e.type == "mouseover") { - // set "previous" X and Y position based on initial entry point - pX = ev.pageX; pY = ev.pageY; - // update "current" X and Y position based on mousemove - $(ob).bind("mousemove",track); - // start polling interval (self-calling timeout) to compare mouse coordinates over time - if (ob.hoverIntent_s != 1) { ob.hoverIntent_t = setTimeout( function(){compare(ev,ob);} , cfg.interval );} - - // else e.type == "onmouseout" - } else { - // unbind expensive mousemove event - $(ob).unbind("mousemove",track); - // if hoverIntent state is true, then call the mouseOut function after the specified delay - if (ob.hoverIntent_s == 1) { ob.hoverIntent_t = setTimeout( function(){delay(ev,ob);} , cfg.timeout );} - } - }; - - // bind the function to the two event listeners - return this.mouseover(handleHover).mouseout(handleHover); - }; -})(jQuery); - - -/* Copyright (c) 2007 Paul Bakaus (paul.bakaus@googlemail.com) and Brandon Aaron (brandon.aaron@gmail.com || http://brandonaaron.net) - * Dual licensed under the MIT (http://www.opensource.org/licenses/mit-license.php) - * and GPL (http://www.opensource.org/licenses/gpl-license.php) licenses. - * - * $LastChangedDate: 2007-08-17 14:14:11 -0400 (Fri, 17 Aug 2007) $ - * $Rev: 2759 $ - * - * Version: 1.1.2 - * - * Requires: jQuery 1.1.3+ - */ - -(function($){ - -// store a copy of the core height and width methods -var height = $.fn.height, - width = $.fn.width; - -$.fn.extend({ - /** - * If used on document, returns the document's height (innerHeight). - * If used on window, returns the viewport's (window) height. - * See core docs on height() to see what happens when used on an element. - * - * @example $("#testdiv").height() - * @result 200 - * - * @example $(document).height() - * @result 800 - * - * @example $(window).height() - * @result 400 - * - * @name height - * @type Number - * @cat Plugins/Dimensions - */ - height: function() { - if ( !this[0] ) error(); - if ( this[0] == window ) - if ( $.browser.opera || ($.browser.safari && parseInt($.browser.version) > 520) ) - return self.innerHeight - (($(document).height() > self.innerHeight) ? getScrollbarWidth() : 0); - else if ( $.browser.safari ) - return self.innerHeight; - else - return $.boxModel && document.documentElement.clientHeight || document.body.clientHeight; - - if ( this[0] == document ) - return Math.max( ($.boxModel && document.documentElement.scrollHeight || document.body.scrollHeight), document.body.offsetHeight ); - - return height.apply(this, arguments); - }, - - /** - * If used on document, returns the document's width (innerWidth). - * If used on window, returns the viewport's (window) width. - * See core docs on width() to see what happens when used on an element. - * - * @example $("#testdiv").width() - * @result 200 - * - * @example $(document).width() - * @result 800 - * - * @example $(window).width() - * @result 400 - * - * @name width - * @type Number - * @cat Plugins/Dimensions - */ - width: function() { - if (!this[0]) error(); - if ( this[0] == window ) - if ( $.browser.opera || ($.browser.safari && parseInt($.browser.version) > 520) ) - return self.innerWidth - (($(document).width() > self.innerWidth) ? getScrollbarWidth() : 0); - else if ( $.browser.safari ) - return self.innerWidth; - else - return $.boxModel && document.documentElement.clientWidth || document.body.clientWidth; - - if ( this[0] == document ) - if ($.browser.mozilla) { - // mozilla reports scrollWidth and offsetWidth as the same - var scrollLeft = self.pageXOffset; - self.scrollTo(99999999, self.pageYOffset); - var scrollWidth = self.pageXOffset; - self.scrollTo(scrollLeft, self.pageYOffset); - return document.body.offsetWidth + scrollWidth; - } - else - return Math.max( (($.boxModel && !$.browser.safari) && document.documentElement.scrollWidth || document.body.scrollWidth), document.body.offsetWidth ); - - return width.apply(this, arguments); - }, - - /** - * Gets the inner height (excludes the border and includes the padding) for the first matched element. - * If used on document, returns the document's height (innerHeight). - * If used on window, returns the viewport's (window) height. - * - * @example $("#testdiv").innerHeight() - * @result 210 - * - * @name innerHeight - * @type Number - * @cat Plugins/Dimensions - */ - innerHeight: function() { - if (!this[0]) error(); - return this[0] == window || this[0] == document ? - this.height() : - this.is(':visible') ? - this[0].offsetHeight - num(this, 'borderTopWidth') - num(this, 'borderBottomWidth') : - this.height() + num(this, 'paddingTop') + num(this, 'paddingBottom'); - }, - - /** - * Gets the inner width (excludes the border and includes the padding) for the first matched element. - * If used on document, returns the document's width (innerWidth). - * If used on window, returns the viewport's (window) width. - * - * @example $("#testdiv").innerWidth() - * @result 210 - * - * @name innerWidth - * @type Number - * @cat Plugins/Dimensions - */ - innerWidth: function() { - if (!this[0]) error(); - return this[0] == window || this[0] == document ? - this.width() : - this.is(':visible') ? - this[0].offsetWidth - num(this, 'borderLeftWidth') - num(this, 'borderRightWidth') : - this.width() + num(this, 'paddingLeft') + num(this, 'paddingRight'); - }, - - /** - * Gets the outer height (includes the border and padding) for the first matched element. - * If used on document, returns the document's height (innerHeight). - * If used on window, returns the viewport's (window) height. - * - * The margin can be included in the calculation by passing an options map with margin - * set to true. - * - * @example $("#testdiv").outerHeight() - * @result 220 - * - * @example $("#testdiv").outerHeight({ margin: true }) - * @result 240 - * - * @name outerHeight - * @type Number - * @param Map options Optional settings to configure the way the outer height is calculated. - * @cat Plugins/Dimensions - */ - outerHeight: function(options) { - if (!this[0]) error(); - options = $.extend({ margin: false }, options || {}); - return this[0] == window || this[0] == document ? - this.height() : - this.is(':visible') ? - this[0].offsetHeight + (options.margin ? (num(this, 'marginTop') + num(this, 'marginBottom')) : 0) : - this.height() - + num(this,'borderTopWidth') + num(this, 'borderBottomWidth') - + num(this, 'paddingTop') + num(this, 'paddingBottom') - + (options.margin ? (num(this, 'marginTop') + num(this, 'marginBottom')) : 0); - }, - - /** - * Gets the outer width (including the border and padding) for the first matched element. - * If used on document, returns the document's width (innerWidth). - * If used on window, returns the viewport's (window) width. - * - * The margin can be included in the calculation by passing an options map with margin - * set to true. - * - * @example $("#testdiv").outerWidth() - * @result 1000 - * - * @example $("#testdiv").outerWidth({ margin: true }) - * @result 1020 - * - * @name outerHeight - * @type Number - * @param Map options Optional settings to configure the way the outer width is calculated. - * @cat Plugins/Dimensions - */ - outerWidth: function(options) { - if (!this[0]) error(); - options = $.extend({ margin: false }, options || {}); - return this[0] == window || this[0] == document ? - this.width() : - this.is(':visible') ? - this[0].offsetWidth + (options.margin ? (num(this, 'marginLeft') + num(this, 'marginRight')) : 0) : - this.width() - + num(this, 'borderLeftWidth') + num(this, 'borderRightWidth') - + num(this, 'paddingLeft') + num(this, 'paddingRight') - + (options.margin ? (num(this, 'marginLeft') + num(this, 'marginRight')) : 0); - }, - - /** - * Gets how many pixels the user has scrolled to the right (scrollLeft). - * Works on containers with overflow: auto and window/document. - * - * @example $(window).scrollLeft() - * @result 100 - * - * @example $(document).scrollLeft() - * @result 100 - * - * @example $("#testdiv").scrollLeft() - * @result 100 - * - * @name scrollLeft - * @type Number - * @cat Plugins/Dimensions - */ - /** - * Sets the scrollLeft property for each element and continues the chain. - * Works on containers with overflow: auto and window/document. - * - * @example $(window).scrollLeft(100).scrollLeft() - * @result 100 - * - * @example $(document).scrollLeft(100).scrollLeft() - * @result 100 - * - * @example $("#testdiv").scrollLeft(100).scrollLeft() - * @result 100 - * - * @name scrollLeft - * @param Number value A positive number representing the desired scrollLeft. - * @type jQuery - * @cat Plugins/Dimensions - */ - scrollLeft: function(val) { - if (!this[0]) error(); - if ( val != undefined ) - // set the scroll left - return this.each(function() { - if (this == window || this == document) - window.scrollTo( val, $(window).scrollTop() ); - else - this.scrollLeft = val; - }); - - // return the scroll left offest in pixels - if ( this[0] == window || this[0] == document ) - return self.pageXOffset || - $.boxModel && document.documentElement.scrollLeft || - document.body.scrollLeft; - - return this[0].scrollLeft; - }, - - /** - * Gets how many pixels the user has scrolled to the bottom (scrollTop). - * Works on containers with overflow: auto and window/document. - * - * @example $(window).scrollTop() - * @result 100 - * - * @example $(document).scrollTop() - * @result 100 - * - * @example $("#testdiv").scrollTop() - * @result 100 - * - * @name scrollTop - * @type Number - * @cat Plugins/Dimensions - */ - /** - * Sets the scrollTop property for each element and continues the chain. - * Works on containers with overflow: auto and window/document. - * - * @example $(window).scrollTop(100).scrollTop() - * @result 100 - * - * @example $(document).scrollTop(100).scrollTop() - * @result 100 - * - * @example $("#testdiv").scrollTop(100).scrollTop() - * @result 100 - * - * @name scrollTop - * @param Number value A positive number representing the desired scrollTop. - * @type jQuery - * @cat Plugins/Dimensions - */ - scrollTop: function(val) { - if (!this[0]) error(); - if ( val != undefined ) - // set the scroll top - return this.each(function() { - if (this == window || this == document) - window.scrollTo( $(window).scrollLeft(), val ); - else - this.scrollTop = val; - }); - - // return the scroll top offset in pixels - if ( this[0] == window || this[0] == document ) - return self.pageYOffset || - $.boxModel && document.documentElement.scrollTop || - document.body.scrollTop; - - return this[0].scrollTop; - }, - - /** - * Gets the top and left positioned offset in pixels. - * The positioned offset is the offset between a positioned - * parent and the element itself. - * - * For accurate calculations make sure to use pixel values for margins, borders and padding. - * - * @example $("#testdiv").position() - * @result { top: 100, left: 100 } - * - * @example var position = {}; - * $("#testdiv").position(position) - * @result position = { top: 100, left: 100 } - * - * @name position - * @param Object returnObject Optional An object to store the return value in, so as not to break the chain. If passed in the - * chain will not be broken and the result will be assigned to this object. - * @type Object - * @cat Plugins/Dimensions - */ - position: function(returnObject) { - return this.offset({ margin: false, scroll: false, relativeTo: this.offsetParent() }, returnObject); - }, - - /** - * Gets the location of the element in pixels from the top left corner of the viewport. - * The offset method takes an optional map of key value pairs to configure the way - * the offset is calculated. Here are the different options. - * - * (Boolean) margin - Should the margin of the element be included in the calculations? True by default. - * (Boolean) border - Should the border of the element be included in the calculations? False by default. - * (Boolean) padding - Should the padding of the element be included in the calculations? False by default. - * (Boolean) scroll - Should the scroll offsets of the parent elements be included in the calculations? True by default. - * When true it adds the total scroll offsets of all parents to the total offset and also adds two - * properties to the returned object, scrollTop and scrollLeft. - * (Boolean) lite - When true it will use the offsetLite method instead of the full-blown, slower offset method. False by default. - * Only use this when margins, borders and padding calculations don't matter. - * (HTML Element) relativeTo - This should be a parent of the element and should have position (like absolute or relative). - * It will retreive the offset relative to this parent element. By default it is the body element. - * - * Also an object can be passed as the second paramater to - * catch the value of the return and continue the chain. - * - * For accurate calculations make sure to use pixel values for margins, borders and padding. - * - * Known issues: - * - Issue: A div positioned relative or static without any content before it and its parent will report an offsetTop of 0 in Safari - * Workaround: Place content before the relative div ... and set height and width to 0 and overflow to hidden - * - * @example $("#testdiv").offset() - * @result { top: 100, left: 100, scrollTop: 10, scrollLeft: 10 } - * - * @example $("#testdiv").offset({ scroll: false }) - * @result { top: 90, left: 90 } - * - * @example var offset = {} - * $("#testdiv").offset({ scroll: false }, offset) - * @result offset = { top: 90, left: 90 } - * - * @name offset - * @param Map options Optional settings to configure the way the offset is calculated. - * @param Object returnObject An object to store the return value in, so as not to break the chain. If passed in the - * chain will not be broken and the result will be assigned to this object. - * @type Object - * @cat Plugins/Dimensions - */ - offset: function(options, returnObject) { - if (!this[0]) error(); - var x = 0, y = 0, sl = 0, st = 0, - elem = this[0], parent = this[0], op, parPos, elemPos = $.css(elem, 'position'), - mo = $.browser.mozilla, ie = $.browser.msie, oa = $.browser.opera, - sf = $.browser.safari, sf3 = $.browser.safari && parseInt($.browser.version) > 520, - absparent = false, relparent = false, - options = $.extend({ margin: true, border: false, padding: false, scroll: true, lite: false, relativeTo: document.body }, options || {}); - - // Use offsetLite if lite option is true - if (options.lite) return this.offsetLite(options, returnObject); - // Get the HTMLElement if relativeTo is a jquery collection - if (options.relativeTo.jquery) options.relativeTo = options.relativeTo[0]; - - if (elem.tagName == 'BODY') { - // Safari 2 is the only one to get offsetLeft and offsetTop properties of the body "correct" - // Except they all mess up when the body is positioned absolute or relative - x = elem.offsetLeft; - y = elem.offsetTop; - // Mozilla ignores margin and subtracts border from body element - if (mo) { - x += num(elem, 'marginLeft') + (num(elem, 'borderLeftWidth')*2); - y += num(elem, 'marginTop') + (num(elem, 'borderTopWidth') *2); - } else - // Opera ignores margin - if (oa) { - x += num(elem, 'marginLeft'); - y += num(elem, 'marginTop'); - } else - // IE does not add the border in Standards Mode - if ((ie && jQuery.boxModel)) { - x += num(elem, 'borderLeftWidth'); - y += num(elem, 'borderTopWidth'); - } else - // Safari 3 doesn't not include border or margin - if (sf3) { - x += num(elem, 'marginLeft') + num(elem, 'borderLeftWidth'); - y += num(elem, 'marginTop') + num(elem, 'borderTopWidth'); - } - } else { - do { - parPos = $.css(parent, 'position'); - - x += parent.offsetLeft; - y += parent.offsetTop; - - // Mozilla and IE do not add the border - // Mozilla adds the border for table cells - if ((mo && !parent.tagName.match(/^t[d|h]$/i)) || ie || sf3) { - // add borders to offset - x += num(parent, 'borderLeftWidth'); - y += num(parent, 'borderTopWidth'); - - // Mozilla does not include the border on body if an element isn't positioned absolute and is without an absolute parent - if (mo && parPos == 'absolute') absparent = true; - // IE does not include the border on the body if an element is position static and without an absolute or relative parent - if (ie && parPos == 'relative') relparent = true; - } - - op = parent.offsetParent || document.body; - if (options.scroll || mo) { - do { - if (options.scroll) { - // get scroll offsets - sl += parent.scrollLeft; - st += parent.scrollTop; - } - - // Opera sometimes incorrectly reports scroll offset for elements with display set to table-row or inline - if (oa && ($.css(parent, 'display') || '').match(/table-row|inline/)) { - sl = sl - ((parent.scrollLeft == parent.offsetLeft) ? parent.scrollLeft : 0); - st = st - ((parent.scrollTop == parent.offsetTop) ? parent.scrollTop : 0); - } - - // Mozilla does not add the border for a parent that has overflow set to anything but visible - if (mo && parent != elem && $.css(parent, 'overflow') != 'visible') { - x += num(parent, 'borderLeftWidth'); - y += num(parent, 'borderTopWidth'); - } - - parent = parent.parentNode; - } while (parent != op); - } - parent = op; - - // exit the loop if we are at the relativeTo option but not if it is the body or html tag - if (parent == options.relativeTo && !(parent.tagName == 'BODY' || parent.tagName == 'HTML')) { - // Mozilla does not add the border for a parent that has overflow set to anything but visible - if (mo && parent != elem && $.css(parent, 'overflow') != 'visible') { - x += num(parent, 'borderLeftWidth'); - y += num(parent, 'borderTopWidth'); - } - // Safari 2 and opera includes border on positioned parents - if ( ((sf && !sf3) || oa) && parPos != 'static' ) { - x -= num(op, 'borderLeftWidth'); - y -= num(op, 'borderTopWidth'); - } - break; - } - if (parent.tagName == 'BODY' || parent.tagName == 'HTML') { - // Safari 2 and IE Standards Mode doesn't add the body margin for elments positioned with static or relative - if (((sf && !sf3) || (ie && $.boxModel)) && elemPos != 'absolute' && elemPos != 'fixed') { - x += num(parent, 'marginLeft'); - y += num(parent, 'marginTop'); - } - // Safari 3 does not include the border on body - // Mozilla does not include the border on body if an element isn't positioned absolute and is without an absolute parent - // IE does not include the border on the body if an element is positioned static and without an absolute or relative parent - if ( sf3 || (mo && !absparent && elemPos != 'fixed') || - (ie && elemPos == 'static' && !relparent) ) { - x += num(parent, 'borderLeftWidth'); - y += num(parent, 'borderTopWidth'); - } - break; // Exit the loop - } - } while (parent); - } - - var returnValue = handleOffsetReturn(elem, options, x, y, sl, st); - - if (returnObject) { $.extend(returnObject, returnValue); return this; } - else { return returnValue; } - }, - - /** - * Gets the location of the element in pixels from the top left corner of the viewport. - * This method is much faster than offset but not as accurate when borders and margins are - * on the element and/or its parents. This method can be invoked - * by setting the lite option to true in the offset method. - * The offsetLite method takes an optional map of key value pairs to configure the way - * the offset is calculated. Here are the different options. - * - * (Boolean) margin - Should the margin of the element be included in the calculations? True by default. - * (Boolean) border - Should the border of the element be included in the calculations? False by default. - * (Boolean) padding - Should the padding of the element be included in the calcuations? False by default. - * (Boolean) scroll - Sould the scroll offsets of the parent elements be included int he calculations? True by default. - * When true it adds the total scroll offsets of all parents to the total offset and also adds two - * properties to the returned object, scrollTop and scrollLeft. - * (HTML Element) relativeTo - This should be a parent of the element and should have position (like absolute or relative). - * It will retreive the offset relative to this parent element. By default it is the body element. - * - * @name offsetLite - * @param Map options Optional settings to configure the way the offset is calculated. - * @param Object returnObject An object to store the return value in, so as not to break the chain. If passed in the - * chain will not be broken and the result will be assigned to this object. - * @type Object - * @cat Plugins/Dimensions - */ - offsetLite: function(options, returnObject) { - if (!this[0]) error(); - var x = 0, y = 0, sl = 0, st = 0, parent = this[0], offsetParent, - options = $.extend({ margin: true, border: false, padding: false, scroll: true, relativeTo: document.body }, options || {}); - - // Get the HTMLElement if relativeTo is a jquery collection - if (options.relativeTo.jquery) options.relativeTo = options.relativeTo[0]; - - do { - x += parent.offsetLeft; - y += parent.offsetTop; - - offsetParent = parent.offsetParent || document.body; - if (options.scroll) { - // get scroll offsets - do { - sl += parent.scrollLeft; - st += parent.scrollTop; - parent = parent.parentNode; - } while(parent != offsetParent); - } - parent = offsetParent; - } while (parent && parent.tagName != 'BODY' && parent.tagName != 'HTML' && parent != options.relativeTo); - - var returnValue = handleOffsetReturn(this[0], options, x, y, sl, st); - - if (returnObject) { $.extend(returnObject, returnValue); return this; } - else { return returnValue; } - }, - - /** - * Returns a jQuery collection with the positioned parent of - * the first matched element. This is the first parent of - * the element that has position (as in relative or absolute). - * - * @name offsetParent - * @type jQuery - * @cat Plugins/Dimensions - */ - offsetParent: function() { - if (!this[0]) error(); - var offsetParent = this[0].offsetParent; - while ( offsetParent && (offsetParent.tagName != 'BODY' && $.css(offsetParent, 'position') == 'static') ) - offsetParent = offsetParent.offsetParent; - return $(offsetParent); - } -}); - -/** - * Throws an error message when no elements are in the jQuery collection - * @private - */ -var error = function() { - throw "Dimensions: jQuery collection is empty"; -}; - -/** - * Handles converting a CSS Style into an Integer. - * @private - */ -var num = function(el, prop) { - return parseInt($.css(el.jquery?el[0]:el,prop))||0; -}; - -/** - * Handles the return value of the offset and offsetLite methods. - * @private - */ -var handleOffsetReturn = function(elem, options, x, y, sl, st) { - if ( !options.margin ) { - x -= num(elem, 'marginLeft'); - y -= num(elem, 'marginTop'); - } - - // Safari and Opera do not add the border for the element - if ( options.border && (($.browser.safari && parseInt($.browser.version) < 520) || $.browser.opera) ) { - x += num(elem, 'borderLeftWidth'); - y += num(elem, 'borderTopWidth'); - } else if ( !options.border && !(($.browser.safari && parseInt($.browser.version) < 520) || $.browser.opera) ) { - x -= num(elem, 'borderLeftWidth'); - y -= num(elem, 'borderTopWidth'); - } - - if ( options.padding ) { - x += num(elem, 'paddingLeft'); - y += num(elem, 'paddingTop'); - } - - // do not include scroll offset on the element ... opera sometimes reports scroll offset as actual offset - if ( options.scroll && (!$.browser.opera || elem.offsetLeft != elem.scrollLeft && elem.offsetTop != elem.scrollLeft) ) { - sl -= elem.scrollLeft; - st -= elem.scrollTop; - } - - return options.scroll ? { top: y - st, left: x - sl, scrollTop: st, scrollLeft: sl } - : { top: y, left: x }; -}; - -/** - * Gets the width of the OS scrollbar - * @private - */ -var scrollbarWidth = 0; -var getScrollbarWidth = function() { - if (!scrollbarWidth) { - var testEl = $('
') - .css({ - width: 100, - height: 100, - overflow: 'auto', - position: 'absolute', - top: -1000, - left: -1000 - }) - .appendTo('body'); - scrollbarWidth = 100 - testEl - .append('
') - .find('div') - .css({ - width: '100%', - height: 200 - }) - .width(); - testEl.remove(); - } - return scrollbarWidth; -}; - -})(jQuery); \ No newline at end of file diff --git "a/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/infopages.css" "b/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/infopages.css" deleted file mode 100644 index cc8820a..0000000 --- "a/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/infopages.css" +++ /dev/null @@ -1,9 +0,0 @@ -.redButton { - color: #990000 !important; - border-color: #990000 !important; -} - -.redButton:hover { - background: #990000 !important; - color: #ffffff !important; -} \ No newline at end of file diff --git "a/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/jquery-1.js" "b/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/jquery-1.js" deleted file mode 100644 index ee68f35..0000000 --- "a/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/jquery-1.js" +++ /dev/null @@ -1,2 +0,0 @@ -/*! jQuery v@1.8.1 jquery.com | jquery.org/license */ -(function(a,b){function G(a){var b=F[a]={};return p.each(a.split(s),function(a,c){b[c]=!0}),b}function J(a,c,d){if(d===b&&a.nodeType===1){var e="data-"+c.replace(I,"-$1").toLowerCase();d=a.getAttribute(e);if(typeof d=="string"){try{d=d==="true"?!0:d==="false"?!1:d==="null"?null:+d+""===d?+d:H.test(d)?p.parseJSON(d):d}catch(f){}p.data(a,c,d)}else d=b}return d}function K(a){var b;for(b in a){if(b==="data"&&p.isEmptyObject(a[b]))continue;if(b!=="toJSON")return!1}return!0}function ba(){return!1}function bb(){return!0}function bh(a){return!a||!a.parentNode||a.parentNode.nodeType===11}function bi(a,b){do a=a[b];while(a&&a.nodeType!==1);return a}function bj(a,b,c){b=b||0;if(p.isFunction(b))return p.grep(a,function(a,d){var e=!!b.call(a,d,a);return e===c});if(b.nodeType)return p.grep(a,function(a,d){return a===b===c});if(typeof b=="string"){var d=p.grep(a,function(a){return a.nodeType===1});if(be.test(b))return p.filter(b,d,!c);b=p.filter(b,d)}return p.grep(a,function(a,d){return p.inArray(a,b)>=0===c})}function bk(a){var b=bl.split("|"),c=a.createDocumentFragment();if(c.createElement)while(b.length)c.createElement(b.pop());return c}function bC(a,b){return a.getElementsByTagName(b)[0]||a.appendChild(a.ownerDocument.createElement(b))}function bD(a,b){if(b.nodeType!==1||!p.hasData(a))return;var c,d,e,f=p._data(a),g=p._data(b,f),h=f.events;if(h){delete g.handle,g.events={};for(c in h)for(d=0,e=h[c].length;d").appendTo(e.body),c=b.css("display");b.remove();if(c==="none"||c===""){bI=e.body.appendChild(bI||p.extend(e.createElement("iframe"),{frameBorder:0,width:0,height:0}));if(!bJ||!bI.createElement)bJ=(bI.contentWindow||bI.contentDocument).document,bJ.write(""),bJ.close();b=bJ.body.appendChild(bJ.createElement(a)),c=bH(b,"display"),e.body.removeChild(bI)}return bS[a]=c,c}function ci(a,b,c,d){var e;if(p.isArray(b))p.each(b,function(b,e){c||ce.test(a)?d(a,e):ci(a+"["+(typeof e=="object"?b:"")+"]",e,c,d)});else if(!c&&p.type(b)==="object")for(e in b)ci(a+"["+e+"]",b[e],c,d);else d(a,b)}function cz(a){return function(b,c){typeof b!="string"&&(c=b,b="*");var d,e,f,g=b.toLowerCase().split(s),h=0,i=g.length;if(p.isFunction(c))for(;h)[^>]*$|#([\w\-]*)$)/,v=/^<(\w+)\s*\/?>(?:<\/\1>|)$/,w=/^[\],:{}\s]*$/,x=/(?:^|:|,)(?:\s*\[)+/g,y=/\\(?:["\\\/bfnrt]|u[\da-fA-F]{4})/g,z=/"[^"\\\r\n]*"|true|false|null|-?(?:\d\d*\.|)\d+(?:[eE][\-+]?\d+|)/g,A=/^-ms-/,B=/-([\da-z])/gi,C=function(a,b){return(b+"").toUpperCase()},D=function(){e.addEventListener?(e.removeEventListener("DOMContentLoaded",D,!1),p.ready()):e.readyState==="complete"&&(e.detachEvent("onreadystatechange",D),p.ready())},E={};p.fn=p.prototype={constructor:p,init:function(a,c,d){var f,g,h,i;if(!a)return this;if(a.nodeType)return this.context=this[0]=a,this.length=1,this;if(typeof a=="string"){a.charAt(0)==="<"&&a.charAt(a.length-1)===">"&&a.length>=3?f=[null,a,null]:f=u.exec(a);if(f&&(f[1]||!c)){if(f[1])return c=c instanceof p?c[0]:c,i=c&&c.nodeType?c.ownerDocument||c:e,a=p.parseHTML(f[1],i,!0),v.test(f[1])&&p.isPlainObject(c)&&this.attr.call(a,c,!0),p.merge(this,a);g=e.getElementById(f[2]);if(g&&g.parentNode){if(g.id!==f[2])return d.find(a);this.length=1,this[0]=g}return this.context=e,this.selector=a,this}return!c||c.jquery?(c||d).find(a):this.constructor(c).find(a)}return p.isFunction(a)?d.ready(a):(a.selector!==b&&(this.selector=a.selector,this.context=a.context),p.makeArray(a,this))},selector:"",jquery:"1.8.1",length:0,size:function(){return this.length},toArray:function(){return k.call(this)},get:function(a){return a==null?this.toArray():a<0?this[this.length+a]:this[a]},pushStack:function(a,b,c){var d=p.merge(this.constructor(),a);return d.prevObject=this,d.context=this.context,b==="find"?d.selector=this.selector+(this.selector?" ":"")+c:b&&(d.selector=this.selector+"."+b+"("+c+")"),d},each:function(a,b){return p.each(this,a,b)},ready:function(a){return p.ready.promise().done(a),this},eq:function(a){return a=+a,a===-1?this.slice(a):this.slice(a,a+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(k.apply(this,arguments),"slice",k.call(arguments).join(","))},map:function(a){return this.pushStack(p.map(this,function(b,c){return a.call(b,c,b)}))},end:function(){return this.prevObject||this.constructor(null)},push:j,sort:[].sort,splice:[].splice},p.fn.init.prototype=p.fn,p.extend=p.fn.extend=function(){var a,c,d,e,f,g,h=arguments[0]||{},i=1,j=arguments.length,k=!1;typeof h=="boolean"&&(k=h,h=arguments[1]||{},i=2),typeof h!="object"&&!p.isFunction(h)&&(h={}),j===i&&(h=this,--i);for(;i0)return;d.resolveWith(e,[p]),p.fn.trigger&&p(e).trigger("ready").off("ready")},isFunction:function(a){return p.type(a)==="function"},isArray:Array.isArray||function(a){return p.type(a)==="array"},isWindow:function(a){return a!=null&&a==a.window},isNumeric:function(a){return!isNaN(parseFloat(a))&&isFinite(a)},type:function(a){return a==null?String(a):E[m.call(a)]||"object"},isPlainObject:function(a){if(!a||p.type(a)!=="object"||a.nodeType||p.isWindow(a))return!1;try{if(a.constructor&&!n.call(a,"constructor")&&!n.call(a.constructor.prototype,"isPrototypeOf"))return!1}catch(c){return!1}var d;for(d in a);return d===b||n.call(a,d)},isEmptyObject:function(a){var b;for(b in a)return!1;return!0},error:function(a){throw new Error(a)},parseHTML:function(a,b,c){var d;return!a||typeof a!="string"?null:(typeof b=="boolean"&&(c=b,b=0),b=b||e,(d=v.exec(a))?[b.createElement(d[1])]:(d=p.buildFragment([a],b,c?null:[]),p.merge([],(d.cacheable?p.clone(d.fragment):d.fragment).childNodes)))},parseJSON:function(b){if(!b||typeof b!="string")return null;b=p.trim(b);if(a.JSON&&a.JSON.parse)return a.JSON.parse(b);if(w.test(b.replace(y,"@").replace(z,"]").replace(x,"")))return(new Function("return "+b))();p.error("Invalid JSON: "+b)},parseXML:function(c){var d,e;if(!c||typeof c!="string")return null;try{a.DOMParser?(e=new DOMParser,d=e.parseFromString(c,"text/xml")):(d=new ActiveXObject("Microsoft.XMLDOM"),d.async="false",d.loadXML(c))}catch(f){d=b}return(!d||!d.documentElement||d.getElementsByTagName("parsererror").length)&&p.error("Invalid XML: "+c),d},noop:function(){},globalEval:function(b){b&&r.test(b)&&(a.execScript||function(b){a.eval.call(a,b)})(b)},camelCase:function(a){return a.replace(A,"ms-").replace(B,C)},nodeName:function(a,b){return a.nodeName&&a.nodeName.toUpperCase()===b.toUpperCase()},each:function(a,c,d){var e,f=0,g=a.length,h=g===b||p.isFunction(a);if(d){if(h){for(e in a)if(c.apply(a[e],d)===!1)break}else for(;f0&&a[0]&&a[i-1]||i===0||p.isArray(a));if(j)for(;h-1)i.splice(c,1),e&&(c<=g&&g--,c<=h&&h--)}),this},has:function(a){return p.inArray(a,i)>-1},empty:function(){return i=[],this},disable:function(){return i=j=c=b,this},disabled:function(){return!i},lock:function(){return j=b,c||l.disable(),this},locked:function(){return!j},fireWith:function(a,b){return b=b||[],b=[a,b.slice?b.slice():b],i&&(!d||j)&&(e?j.push(b):k(b)),this},fire:function(){return l.fireWith(this,arguments),this},fired:function(){return!!d}};return l},p.extend({Deferred:function(a){var b=[["resolve","done",p.Callbacks("once memory"),"resolved"],["reject","fail",p.Callbacks("once memory"),"rejected"],["notify","progress",p.Callbacks("memory")]],c="pending",d={state:function(){return c},always:function(){return e.done(arguments).fail(arguments),this},then:function(){var a=arguments;return p.Deferred(function(c){p.each(b,function(b,d){var f=d[0],g=a[b];e[d[1]](p.isFunction(g)?function(){var a=g.apply(this,arguments);a&&p.isFunction(a.promise)?a.promise().done(c.resolve).fail(c.reject).progress(c.notify):c[f+"With"](this===e?c:this,[a])}:c[f])}),a=null}).promise()},promise:function(a){return typeof a=="object"?p.extend(a,d):d}},e={};return d.pipe=d.then,p.each(b,function(a,f){var g=f[2],h=f[3];d[f[1]]=g.add,h&&g.add(function(){c=h},b[a^1][2].disable,b[2][2].lock),e[f[0]]=g.fire,e[f[0]+"With"]=g.fireWith}),d.promise(e),a&&a.call(e,e),e},when:function(a){var b=0,c=k.call(arguments),d=c.length,e=d!==1||a&&p.isFunction(a.promise)?d:0,f=e===1?a:p.Deferred(),g=function(a,b,c){return function(d){b[a]=this,c[a]=arguments.length>1?k.call(arguments):d,c===h?f.notifyWith(b,c):--e||f.resolveWith(b,c)}},h,i,j;if(d>1){h=new Array(d),i=new Array(d),j=new Array(d);for(;b
a",c=n.getElementsByTagName("*"),d=n.getElementsByTagName("a")[0],d.style.cssText="top:1px;float:left;opacity:.5";if(!c||!c.length||!d)return{};f=e.createElement("select"),g=f.appendChild(e.createElement("option")),h=n.getElementsByTagName("input")[0],b={leadingWhitespace:n.firstChild.nodeType===3,tbody:!n.getElementsByTagName("tbody").length,htmlSerialize:!!n.getElementsByTagName("link").length,style:/top/.test(d.getAttribute("style")),hrefNormalized:d.getAttribute("href")==="/a",opacity:/^0.5/.test(d.style.opacity),cssFloat:!!d.style.cssFloat,checkOn:h.value==="on",optSelected:g.selected,getSetAttribute:n.className!=="t",enctype:!!e.createElement("form").enctype,html5Clone:e.createElement("nav").cloneNode(!0).outerHTML!=="<:nav>",boxModel:e.compatMode==="CSS1Compat",submitBubbles:!0,changeBubbles:!0,focusinBubbles:!1,deleteExpando:!0,noCloneEvent:!0,inlineBlockNeedsLayout:!1,shrinkWrapBlocks:!1,reliableMarginRight:!0,boxSizingReliable:!0,pixelPosition:!1},h.checked=!0,b.noCloneChecked=h.cloneNode(!0).checked,f.disabled=!0,b.optDisabled=!g.disabled;try{delete n.test}catch(o){b.deleteExpando=!1}!n.addEventListener&&n.attachEvent&&n.fireEvent&&(n.attachEvent("onclick",m=function(){b.noCloneEvent=!1}),n.cloneNode(!0).fireEvent("onclick"),n.detachEvent("onclick",m)),h=e.createElement("input"),h.value="t",h.setAttribute("type","radio"),b.radioValue=h.value==="t",h.setAttribute("checked","checked"),h.setAttribute("name","t"),n.appendChild(h),i=e.createDocumentFragment(),i.appendChild(n.lastChild),b.checkClone=i.cloneNode(!0).cloneNode(!0).lastChild.checked,b.appendChecked=h.checked,i.removeChild(h),i.appendChild(n);if(n.attachEvent)for(k in{submit:!0,change:!0,focusin:!0})j="on"+k,l=j in n,l||(n.setAttribute(j,"return;"),l=typeof n[j]=="function"),b[k+"Bubbles"]=l;return p(function(){var c,d,f,g,h="padding:0;margin:0;border:0;display:block;overflow:hidden;",i=e.getElementsByTagName("body")[0];if(!i)return;c=e.createElement("div"),c.style.cssText="visibility:hidden;border:0;width:0;height:0;position:static;top:0;margin-top:1px",i.insertBefore(c,i.firstChild),d=e.createElement("div"),c.appendChild(d),d.innerHTML="
t
",f=d.getElementsByTagName("td"),f[0].style.cssText="padding:0;margin:0;border:0;display:none",l=f[0].offsetHeight===0,f[0].style.display="",f[1].style.display="none",b.reliableHiddenOffsets=l&&f[0].offsetHeight===0,d.innerHTML="",d.style.cssText="box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;padding:1px;border:1px;display:block;width:4px;margin-top:1%;position:absolute;top:1%;",b.boxSizing=d.offsetWidth===4,b.doesNotIncludeMarginInBodyOffset=i.offsetTop!==1,a.getComputedStyle&&(b.pixelPosition=(a.getComputedStyle(d,null)||{}).top!=="1%",b.boxSizingReliable=(a.getComputedStyle(d,null)||{width:"4px"}).width==="4px",g=e.createElement("div"),g.style.cssText=d.style.cssText=h,g.style.marginRight=g.style.width="0",d.style.width="1px",d.appendChild(g),b.reliableMarginRight=!parseFloat((a.getComputedStyle(g,null)||{}).marginRight)),typeof d.style.zoom!="undefined"&&(d.innerHTML="",d.style.cssText=h+"width:1px;padding:1px;display:inline;zoom:1",b.inlineBlockNeedsLayout=d.offsetWidth===3,d.style.display="block",d.style.overflow="visible",d.innerHTML="
",d.firstChild.style.width="5px",b.shrinkWrapBlocks=d.offsetWidth!==3,c.style.zoom=1),i.removeChild(c),c=d=f=g=null}),i.removeChild(n),c=d=f=g=h=i=n=null,b}();var H=/(?:\{[\s\S]*\}|\[[\s\S]*\])$/,I=/([A-Z])/g;p.extend({cache:{},deletedIds:[],uuid:0,expando:"jQuery"+(p.fn.jquery+Math.random()).replace(/\D/g,""),noData:{embed:!0,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",applet:!0},hasData:function(a){return a=a.nodeType?p.cache[a[p.expando]]:a[p.expando],!!a&&!K(a)},data:function(a,c,d,e){if(!p.acceptData(a))return;var f,g,h=p.expando,i=typeof c=="string",j=a.nodeType,k=j?p.cache:a,l=j?a[h]:a[h]&&h;if((!l||!k[l]||!e&&!k[l].data)&&i&&d===b)return;l||(j?a[h]=l=p.deletedIds.pop()||++p.uuid:l=h),k[l]||(k[l]={},j||(k[l].toJSON=p.noop));if(typeof c=="object"||typeof c=="function")e?k[l]=p.extend(k[l],c):k[l].data=p.extend(k[l].data,c);return f=k[l],e||(f.data||(f.data={}),f=f.data),d!==b&&(f[p.camelCase(c)]=d),i?(g=f[c],g==null&&(g=f[p.camelCase(c)])):g=f,g},removeData:function(a,b,c){if(!p.acceptData(a))return;var d,e,f,g=a.nodeType,h=g?p.cache:a,i=g?a[p.expando]:p.expando;if(!h[i])return;if(b){d=c?h[i]:h[i].data;if(d){p.isArray(b)||(b in d?b=[b]:(b=p.camelCase(b),b in d?b=[b]:b=b.split(" ")));for(e=0,f=b.length;e1,null,!1))},removeData:function(a){return this.each(function(){p.removeData(this,a)})}}),p.extend({queue:function(a,b,c){var d;if(a)return b=(b||"fx")+"queue",d=p._data(a,b),c&&(!d||p.isArray(c)?d=p._data(a,b,p.makeArray(c)):d.push(c)),d||[]},dequeue:function(a,b){b=b||"fx";var c=p.queue(a,b),d=c.length,e=c.shift(),f=p._queueHooks(a,b),g=function(){p.dequeue(a,b)};e==="inprogress"&&(e=c.shift(),d--),e&&(b==="fx"&&c.unshift("inprogress"),delete f.stop,e.call(a,g,f)),!d&&f&&f.empty.fire()},_queueHooks:function(a,b){var c=b+"queueHooks";return p._data(a,c)||p._data(a,c,{empty:p.Callbacks("once memory").add(function(){p.removeData(a,b+"queue",!0),p.removeData(a,c,!0)})})}}),p.fn.extend({queue:function(a,c){var d=2;return typeof a!="string"&&(c=a,a="fx",d--),arguments.length1)},removeAttr:function(a){return this.each(function(){p.removeAttr(this,a)})},prop:function(a,b){return p.access(this,p.prop,a,b,arguments.length>1)},removeProp:function(a){return a=p.propFix[a]||a,this.each(function(){try{this[a]=b,delete this[a]}catch(c){}})},addClass:function(a){var b,c,d,e,f,g,h;if(p.isFunction(a))return this.each(function(b){p(this).addClass(a.call(this,b,this.className))});if(a&&typeof a=="string"){b=a.split(s);for(c=0,d=this.length;c-1)d=d.replace(" "+c[f]+" "," ");e.className=a?p.trim(d):""}}}return this},toggleClass:function(a,b){var c=typeof a,d=typeof b=="boolean";return p.isFunction(a)?this.each(function(c){p(this).toggleClass(a.call(this,c,this.className,b),b)}):this.each(function(){if(c==="string"){var e,f=0,g=p(this),h=b,i=a.split(s);while(e=i[f++])h=d?h:!g.hasClass(e),g[h?"addClass":"removeClass"](e)}else if(c==="undefined"||c==="boolean")this.className&&p._data(this,"__className__",this.className),this.className=this.className||a===!1?"":p._data(this,"__className__")||""})},hasClass:function(a){var b=" "+a+" ",c=0,d=this.length;for(;c-1)return!0;return!1},val:function(a){var c,d,e,f=this[0];if(!arguments.length){if(f)return c=p.valHooks[f.type]||p.valHooks[f.nodeName.toLowerCase()],c&&"get"in c&&(d=c.get(f,"value"))!==b?d:(d=f.value,typeof d=="string"?d.replace(P,""):d==null?"":d);return}return e=p.isFunction(a),this.each(function(d){var f,g=p(this);if(this.nodeType!==1)return;e?f=a.call(this,d,g.val()):f=a,f==null?f="":typeof f=="number"?f+="":p.isArray(f)&&(f=p.map(f,function(a){return a==null?"":a+""})),c=p.valHooks[this.type]||p.valHooks[this.nodeName.toLowerCase()];if(!c||!("set"in c)||c.set(this,f,"value")===b)this.value=f})}}),p.extend({valHooks:{option:{get:function(a){var b=a.attributes.value;return!b||b.specified?a.value:a.text}},select:{get:function(a){var b,c,d,e,f=a.selectedIndex,g=[],h=a.options,i=a.type==="select-one";if(f<0)return null;c=i?f:0,d=i?f+1:h.length;for(;c=0}),c.length||(a.selectedIndex=-1),c}}},attrFn:{},attr:function(a,c,d,e){var f,g,h,i=a.nodeType;if(!a||i===3||i===8||i===2)return;if(e&&p.isFunction(p.fn[c]))return p(a)[c](d);if(typeof a.getAttribute=="undefined")return p.prop(a,c,d);h=i!==1||!p.isXMLDoc(a),h&&(c=c.toLowerCase(),g=p.attrHooks[c]||(T.test(c)?M:L));if(d!==b){if(d===null){p.removeAttr(a,c);return}return g&&"set"in g&&h&&(f=g.set(a,d,c))!==b?f:(a.setAttribute(c,""+d),d)}return g&&"get"in g&&h&&(f=g.get(a,c))!==null?f:(f=a.getAttribute(c),f===null?b:f)},removeAttr:function(a,b){var c,d,e,f,g=0;if(b&&a.nodeType===1){d=b.split(s);for(;g=0}})});var V=/^(?:textarea|input|select)$/i,W=/^([^\.]*|)(?:\.(.+)|)$/,X=/(?:^|\s)hover(\.\S+|)\b/,Y=/^key/,Z=/^(?:mouse|contextmenu)|click/,$=/^(?:focusinfocus|focusoutblur)$/,_=function(a){return p.event.special.hover?a:a.replace(X,"mouseenter$1 mouseleave$1")};p.event={add:function(a,c,d,e,f){var g,h,i,j,k,l,m,n,o,q,r;if(a.nodeType===3||a.nodeType===8||!c||!d||!(g=p._data(a)))return;d.handler&&(o=d,d=o.handler,f=o.selector),d.guid||(d.guid=p.guid++),i=g.events,i||(g.events=i={}),h=g.handle,h||(g.handle=h=function(a){return typeof p!="undefined"&&(!a||p.event.triggered!==a.type)?p.event.dispatch.apply(h.elem,arguments):b},h.elem=a),c=p.trim(_(c)).split(" ");for(j=0;j=0&&(s=s.slice(0,-1),i=!0),s.indexOf(".")>=0&&(t=s.split("."),s=t.shift(),t.sort());if((!f||p.event.customEvent[s])&&!p.event.global[s])return;c=typeof c=="object"?c[p.expando]?c:new p.Event(s,c):new p.Event(s),c.type=s,c.isTrigger=!0,c.exclusive=i,c.namespace=t.join("."),c.namespace_re=c.namespace?new RegExp("(^|\\.)"+t.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,m=s.indexOf(":")<0?"on"+s:"";if(!f){h=p.cache;for(j in h)h[j].events&&h[j].events[s]&&p.event.trigger(c,d,h[j].handle.elem,!0);return}c.result=b,c.target||(c.target=f),d=d!=null?p.makeArray(d):[],d.unshift(c),n=p.event.special[s]||{};if(n.trigger&&n.trigger.apply(f,d)===!1)return;q=[[f,n.bindType||s]];if(!g&&!n.noBubble&&!p.isWindow(f)){r=n.delegateType||s,k=$.test(r+s)?f:f.parentNode;for(l=f;k;k=k.parentNode)q.push([k,r]),l=k;l===(f.ownerDocument||e)&&q.push([l.defaultView||l.parentWindow||a,r])}for(j=0;j=0),h[l]&&j.push(k);j.length&&t.push({elem:f,matches:j})}n.length>o&&t.push({elem:this,matches:n.slice(o)});for(d=0;d0?this.on(b,null,a,c):this.trigger(b)},Y.test(b)&&(p.event.fixHooks[b]=p.event.keyHooks),Z.test(b)&&(p.event.fixHooks[b]=p.event.mouseHooks)}),function(a,b){function $(a,b,c,d){c=c||[],b=b||q;var e,f,g,j,k=b.nodeType;if(k!==1&&k!==9)return[];if(!a||typeof a!="string")return c;g=h(b);if(!g&&!d)if(e=L.exec(a))if(j=e[1]){if(k===9){f=b.getElementById(j);if(!f||!f.parentNode)return c;if(f.id===j)return c.push(f),c}else if(b.ownerDocument&&(f=b.ownerDocument.getElementById(j))&&i(b,f)&&f.id===j)return c.push(f),c}else{if(e[2])return u.apply(c,t.call(b.getElementsByTagName(a),0)),c;if((j=e[3])&&X&&b.getElementsByClassName)return u.apply(c,t.call(b.getElementsByClassName(j),0)),c}return bk(a,b,c,d,g)}function _(a){return function(b){var c=b.nodeName.toLowerCase();return c==="input"&&b.type===a}}function ba(a){return function(b){var c=b.nodeName.toLowerCase();return(c==="input"||c==="button")&&b.type===a}}function bb(a,b,c){if(a===b)return c;var d=a.nextSibling;while(d){if(d===b)return-1;d=d.nextSibling}return 1}function bc(a,b,c,d){var e,g,h,i,j,k,l,m,n,p,r=!c&&b!==q,s=(r?"":"")+a.replace(H,"$1"),u=y[o][s];if(u)return d?0:t.call(u,0);j=a,k=[],m=0,n=f.preFilter,p=f.filter;while(j){if(!e||(g=I.exec(j)))g&&(j=j.slice(g[0].length),h.selector=l),k.push(h=[]),l="",r&&(j=" "+j);e=!1;if(g=J.exec(j))l+=g[0],j=j.slice(g[0].length),e=h.push({part:g.pop().replace(H," "),string:g[0],captures:g});for(i in p)(g=S[i].exec(j))&&(!n[i]||(g=n[i](g,b,c)))&&(l+=g[0],j=j.slice(g[0].length),e=h.push({part:i,string:g.shift(),captures:g}));if(!e)break}return l&&(h.selector=l),d?j.length:j?$.error(a):t.call(y(s,k),0)}function bd(a,b,e,f){var g=b.dir,h=s++;return a||(a=function(a){return a===e}),b.first?function(b){while(b=b[g])if(b.nodeType===1)return a(b)&&b}:f?function(b){while(b=b[g])if(b.nodeType===1&&a(b))return b}:function(b){var e,f=h+"."+c,i=f+"."+d;while(b=b[g])if(b.nodeType===1){if((e=b[o])===i)return b.sizset;if(typeof e=="string"&&e.indexOf(f)===0){if(b.sizset)return b}else{b[o]=i;if(a(b))return b.sizset=!0,b;b.sizset=!1}}}}function be(a,b){return a?function(c){var d=b(c);return d&&a(d===!0?c:d)}:b}function bf(a,b,c){var d,e,g=0;for(;d=a[g];g++)f.relative[d.part]?e=bd(e,f.relative[d.part],b,c):e=be(e,f.filter[d.part].apply(null,d.captures.concat(b,c)));return e}function bg(a){return function(b){var c,d=0;for(;c=a[d];d++)if(c(b))return!0;return!1}}function bh(a,b,c,d){var e=0,f=b.length;for(;e0?i(h,c,g):[]}function bj(a,c,d,e){var f,g,h,i,j,k,l,m,n,o,p,q,r,s=0,t=a.length,v=S.POS,w=new RegExp("^"+v.source+"(?!"+A+")","i"),x=function(){var a=1,c=arguments.length-2;for(;al){g+=k.slice(l,n.index),l=p,q=[c],J.test(g)&&(m&&(q=m),m=e);if(r=O.test(g))g=g.slice(0,-5).replace(J,"$&*"),l++;n.length>1&&n[0].replace(w,x),m=bi(g,n[1],n[2],q,m,r)}g=""}}o||(g+=k),o=!1}g?J.test(g)?bh(g,m||[c],d,e):$(g,c,d,e?e.concat(m):m):u.apply(d,m)}return t===1?d:$.uniqueSort(d)}function bk(a,b,e,g,h){a=a.replace(H,"$1");var i,k,l,m,n,o,p,q,r,s,v=bc(a,b,h),w=b.nodeType;if(S.POS.test(a))return bj(v,b,e,g);if(g)i=t.call(g,0);else if(v.length===1){if((o=t.call(v[0],0)).length>2&&(p=o[0]).part==="ID"&&w===9&&!h&&f.relative[o[1].part]){b=f.find.ID(p.captures[0].replace(R,""),b,h)[0];if(!b)return e;a=a.slice(o.shift().string.length)}r=(v=N.exec(o[0].string))&&!v.index&&b.parentNode||b,q="";for(n=o.length-1;n>=0;n--){p=o[n],s=p.part,q=p.string+q;if(f.relative[s])break;if(f.order.test(s)){i=f.find[s](p.captures[0].replace(R,""),r,h);if(i==null)continue;a=a.slice(0,a.length-q.length)+q.replace(S[s],""),a||u.apply(e,t.call(i,0));break}}}if(a){k=j(a,b,h),c=k.dirruns++,i==null&&(i=f.find.TAG("*",N.test(a)&&b.parentNode||b));for(n=0;m=i[n];n++)d=k.runs++,k(m)&&e.push(m)}return e}var c,d,e,f,g,h,i,j,k,l,m=!0,n="undefined",o=("sizcache"+Math.random()).replace(".",""),q=a.document,r=q.documentElement,s=0,t=[].slice,u=[].push,v=function(a,b){return a[o]=b||!0,a},w=function(){var a={},b=[];return v(function(c,d){return b.push(c)>f.cacheLength&&delete a[b.shift()],a[c]=d},a)},x=w(),y=w(),z=w(),A="[\\x20\\t\\r\\n\\f]",B="(?:\\\\.|[-\\w]|[^\\x00-\\xa0])+",C=B.replace("w","w#"),D="([*^$|!~]?=)",E="\\["+A+"*("+B+")"+A+"*(?:"+D+A+"*(?:(['\"])((?:\\\\.|[^\\\\])*?)\\3|("+C+")|)|)"+A+"*\\]",F=":("+B+")(?:\\((?:(['\"])((?:\\\\.|[^\\\\])*?)\\2|([^()[\\]]*|(?:(?:"+E+")|[^:]|\\\\.)*|.*))\\)|)",G=":(nth|eq|gt|lt|first|last|even|odd)(?:\\(((?:-\\d)?\\d*)\\)|)(?=[^-]|$)",H=new RegExp("^"+A+"+|((?:^|[^\\\\])(?:\\\\.)*)"+A+"+$","g"),I=new RegExp("^"+A+"*,"+A+"*"),J=new RegExp("^"+A+"*([\\x20\\t\\r\\n\\f>+~])"+A+"*"),K=new RegExp(F),L=/^(?:#([\w\-]+)|(\w+)|\.([\w\-]+))$/,M=/^:not/,N=/[\x20\t\r\n\f]*[+~]/,O=/:not\($/,P=/h\d/i,Q=/input|select|textarea|button/i,R=/\\(?!\\)/g,S={ID:new RegExp("^#("+B+")"),CLASS:new RegExp("^\\.("+B+")"),NAME:new RegExp("^\\[name=['\"]?("+B+")['\"]?\\]"),TAG:new RegExp("^("+B.replace("w","w*")+")"),ATTR:new RegExp("^"+E),PSEUDO:new RegExp("^"+F),CHILD:new RegExp("^:(only|nth|last|first)-child(?:\\("+A+"*(even|odd|(([+-]|)(\\d*)n|)"+A+"*(?:([+-]|)"+A+"*(\\d+)|))"+A+"*\\)|)","i"),POS:new RegExp(G,"ig"),needsContext:new RegExp("^"+A+"*[>+~]|"+G,"i")},T=function(a){var b=q.createElement("div");try{return a(b)}catch(c){return!1}finally{b=null}},U=T(function(a){return a.appendChild(q.createComment("")),!a.getElementsByTagName("*").length}),V=T(function(a){return a.innerHTML="",a.firstChild&&typeof a.firstChild.getAttribute!==n&&a.firstChild.getAttribute("href")==="#"}),W=T(function(a){a.innerHTML="";var b=typeof a.lastChild.getAttribute("multiple");return b!=="boolean"&&b!=="string"}),X=T(function(a){return a.innerHTML="",!a.getElementsByClassName||!a.getElementsByClassName("e").length?!1:(a.lastChild.className="e",a.getElementsByClassName("e").length===2)}),Y=T(function(a){a.id=o+0,a.innerHTML="
",r.insertBefore(a,r.firstChild);var b=q.getElementsByName&&q.getElementsByName(o).length===2+q.getElementsByName(o+0).length;return e=!q.getElementById(o),r.removeChild(a),b});try{t.call(r.childNodes,0)[0].nodeType}catch(Z){t=function(a){var b,c=[];for(;b=this[a];a++)c.push(b);return c}}$.matches=function(a,b){return $(a,null,null,b)},$.matchesSelector=function(a,b){return $(b,null,null,[a]).length>0},g=$.getText=function(a){var b,c="",d=0,e=a.nodeType;if(e){if(e===1||e===9||e===11){if(typeof a.textContent=="string")return a.textContent;for(a=a.firstChild;a;a=a.nextSibling)c+=g(a)}else if(e===3||e===4)return a.nodeValue}else for(;b=a[d];d++)c+=g(b);return c},h=$.isXML=function(a){var b=a&&(a.ownerDocument||a).documentElement;return b?b.nodeName!=="HTML":!1},i=$.contains=r.contains?function(a,b){var c=a.nodeType===9?a.documentElement:a,d=b&&b.parentNode;return a===d||!!(d&&d.nodeType===1&&c.contains&&c.contains(d))}:r.compareDocumentPosition?function(a,b){return b&&!!(a.compareDocumentPosition(b)&16)}:function(a,b){while(b=b.parentNode)if(b===a)return!0;return!1},$.attr=function(a,b){var c,d=h(a);return d||(b=b.toLowerCase()),f.attrHandle[b]?f.attrHandle[b](a):W||d?a.getAttribute(b):(c=a.getAttributeNode(b),c?typeof a[b]=="boolean"?a[b]?b:null:c.specified?c.value:null:null)},f=$.selectors={cacheLength:50,createPseudo:v,match:S,order:new RegExp("ID|TAG"+(Y?"|NAME":"")+(X?"|CLASS":"")),attrHandle:V?{}:{href:function(a){return a.getAttribute("href",2)},type:function(a){return a.getAttribute("type")}},find:{ID:e?function(a,b,c){if(typeof b.getElementById!==n&&!c){var d=b.getElementById(a);return d&&d.parentNode?[d]:[]}}:function(a,c,d){if(typeof c.getElementById!==n&&!d){var e=c.getElementById(a);return e?e.id===a||typeof e.getAttributeNode!==n&&e.getAttributeNode("id").value===a?[e]:b:[]}},TAG:U?function(a,b){if(typeof b.getElementsByTagName!==n)return b.getElementsByTagName(a)}:function(a,b){var c=b.getElementsByTagName(a);if(a==="*"){var d,e=[],f=0;for(;d=c[f];f++)d.nodeType===1&&e.push(d);return e}return c},NAME:function(a,b){if(typeof b.getElementsByName!==n)return b.getElementsByName(name)},CLASS:function(a,b,c){if(typeof b.getElementsByClassName!==n&&!c)return b.getElementsByClassName(a)}},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(a){return a[1]=a[1].replace(R,""),a[3]=(a[4]||a[5]||"").replace(R,""),a[2]==="~="&&(a[3]=" "+a[3]+" "),a.slice(0,4)},CHILD:function(a){return a[1]=a[1].toLowerCase(),a[1]==="nth"?(a[2]||$.error(a[0]),a[3]=+(a[3]?a[4]+(a[5]||1):2*(a[2]==="even"||a[2]==="odd")),a[4]=+(a[6]+a[7]||a[2]==="odd")):a[2]&&$.error(a[0]),a},PSEUDO:function(a,b,c){var d,e;if(S.CHILD.test(a[0]))return null;if(a[3])a[2]=a[3];else if(d=a[4])K.test(d)&&(e=bc(d,b,c,!0))&&(e=d.indexOf(")",d.length-e)-d.length)&&(d=d.slice(0,e),a[0]=a[0].slice(0,e)),a[2]=d;return a.slice(0,3)}},filter:{ID:e?function(a){return a=a.replace(R,""),function(b){return b.getAttribute("id")===a}}:function(a){return a=a.replace(R,""),function(b){var c=typeof b.getAttributeNode!==n&&b.getAttributeNode("id");return c&&c.value===a}},TAG:function(a){return a==="*"?function(){return!0}:(a=a.replace(R,"").toLowerCase(),function(b){return b.nodeName&&b.nodeName.toLowerCase()===a})},CLASS:function(a){var b=x[o][a];return b||(b=x(a,new RegExp("(^|"+A+")"+a+"("+A+"|$)"))),function(a){return b.test(a.className||typeof a.getAttribute!==n&&a.getAttribute("class")||"")}},ATTR:function(a,b,c){return b?function(d){var e=$.attr(d,a),f=e+"";if(e==null)return b==="!=";switch(b){case"=":return f===c;case"!=":return f!==c;case"^=":return c&&f.indexOf(c)===0;case"*=":return c&&f.indexOf(c)>-1;case"$=":return c&&f.substr(f.length-c.length)===c;case"~=":return(" "+f+" ").indexOf(c)>-1;case"|=":return f===c||f.substr(0,c.length+1)===c+"-"}}:function(b){return $.attr(b,a)!=null}},CHILD:function(a,b,c,d){if(a==="nth"){var e=s++;return function(a){var b,f,g=0,h=a;if(c===1&&d===0)return!0;b=a.parentNode;if(b&&(b[o]!==e||!a.sizset)){for(h=b.firstChild;h;h=h.nextSibling)if(h.nodeType===1){h.sizset=++g;if(h===a)break}b[o]=e}return f=a.sizset-d,c===0?f===0:f%c===0&&f/c>=0}}return function(b){var c=b;switch(a){case"only":case"first":while(c=c.previousSibling)if(c.nodeType===1)return!1;if(a==="first")return!0;c=b;case"last":while(c=c.nextSibling)if(c.nodeType===1)return!1;return!0}}},PSEUDO:function(a,b,c,d){var e,g=f.pseudos[a]||f.pseudos[a.toLowerCase()];return g||$.error("unsupported pseudo: "+a),g[o]?g(b,c,d):g.length>1?(e=[a,a,"",b],function(a){return g(a,0,e)}):g}},pseudos:{not:v(function(a,b,c){var d=j(a.replace(H,"$1"),b,c);return function(a){return!d(a)}}),enabled:function(a){return a.disabled===!1},disabled:function(a){return a.disabled===!0},checked:function(a){var b=a.nodeName.toLowerCase();return b==="input"&&!!a.checked||b==="option"&&!!a.selected},selected:function(a){return a.parentNode&&a.parentNode.selectedIndex,a.selected===!0},parent:function(a){return!f.pseudos.empty(a)},empty:function(a){var b;a=a.firstChild;while(a){if(a.nodeName>"@"||(b=a.nodeType)===3||b===4)return!1;a=a.nextSibling}return!0},contains:v(function(a){return function(b){return(b.textContent||b.innerText||g(b)).indexOf(a)>-1}}),has:v(function(a){return function(b){return $(a,b).length>0}}),header:function(a){return P.test(a.nodeName)},text:function(a){var b,c;return a.nodeName.toLowerCase()==="input"&&(b=a.type)==="text"&&((c=a.getAttribute("type"))==null||c.toLowerCase()===b)},radio:_("radio"),checkbox:_("checkbox"),file:_("file"),password:_("password"),image:_("image"),submit:ba("submit"),reset:ba("reset"),button:function(a){var b=a.nodeName.toLowerCase();return b==="input"&&a.type==="button"||b==="button"},input:function(a){return Q.test(a.nodeName)},focus:function(a){var b=a.ownerDocument;return a===b.activeElement&&(!b.hasFocus||b.hasFocus())&&(!!a.type||!!a.href)},active:function(a){return a===a.ownerDocument.activeElement}},setFilters:{first:function(a,b,c){return c?a.slice(1):[a[0]]},last:function(a,b,c){var d=a.pop();return c?a:[d]},even:function(a,b,c){var d=[],e=c?1:0,f=a.length;for(;e",a.querySelectorAll("[selected]").length||e.push("\\["+A+"*(?:checked|disabled|ismap|multiple|readonly|selected|value)"),a.querySelectorAll(":checked").length||e.push(":checked")}),T(function(a){a.innerHTML="

",a.querySelectorAll("[test^='']").length&&e.push("[*^$]="+A+"*(?:\"\"|'')"),a.innerHTML="",a.querySelectorAll(":enabled").length||e.push(":enabled",":disabled")}),e=e.length&&new RegExp(e.join("|")),bk=function(a,d,f,g,h){if(!g&&!h&&(!e||!e.test(a)))if(d.nodeType===9)try{return u.apply(f,t.call(d.querySelectorAll(a),0)),f}catch(i){}else if(d.nodeType===1&&d.nodeName.toLowerCase()!=="object"){var j,k,l,m=d.getAttribute("id"),n=m||o,p=N.test(a)&&d.parentNode||d;m?n=n.replace(c,"\\$&"):d.setAttribute("id",n),j=bc(a,d,h),n="[id='"+n+"']";for(k=0,l=j.length;k0})}(),f.setFilters.nth=f.setFilters.eq,f.filters=f.pseudos,$.attr=p.attr,p.find=$,p.expr=$.selectors,p.expr[":"]=p.expr.pseudos,p.unique=$.uniqueSort,p.text=$.getText,p.isXMLDoc=$.isXML,p.contains=$.contains}(a);var bc=/Until$/,bd=/^(?:parents|prev(?:Until|All))/,be=/^.[^:#\[\.,]*$/,bf=p.expr.match.needsContext,bg={children:!0,contents:!0,next:!0,prev:!0};p.fn.extend({find:function(a){var b,c,d,e,f,g,h=this;if(typeof a!="string")return p(a).filter(function(){for(b=0,c=h.length;b0)for(e=d;e=0:p.filter(a,this).length>0:this.filter(a).length>0)},closest:function(a,b){var c,d=0,e=this.length,f=[],g=bf.test(a)||typeof a!="string"?p(a,b||this.context):0;for(;d-1:p.find.matchesSelector(c,a)){f.push(c);break}c=c.parentNode}}return f=f.length>1?p.unique(f):f,this.pushStack(f,"closest",a)},index:function(a){return a?typeof a=="string"?p.inArray(this[0],p(a)):p.inArray(a.jquery?a[0]:a,this):this[0]&&this[0].parentNode?this.prevAll().length:-1},add:function(a,b){var c=typeof a=="string"?p(a,b):p.makeArray(a&&a.nodeType?[a]:a),d=p.merge(this.get(),c);return this.pushStack(bh(c[0])||bh(d[0])?d:p.unique(d))},addBack:function(a){return this.add(a==null?this.prevObject:this.prevObject.filter(a))}}),p.fn.andSelf=p.fn.addBack,p.each({parent:function(a){var b=a.parentNode;return b&&b.nodeType!==11?b:null},parents:function(a){return p.dir(a,"parentNode")},parentsUntil:function(a,b,c){return p.dir(a,"parentNode",c)},next:function(a){return bi(a,"nextSibling")},prev:function(a){return bi(a,"previousSibling")},nextAll:function(a){return p.dir(a,"nextSibling")},prevAll:function(a){return p.dir(a,"previousSibling")},nextUntil:function(a,b,c){return p.dir(a,"nextSibling",c)},prevUntil:function(a,b,c){return p.dir(a,"previousSibling",c)},siblings:function(a){return p.sibling((a.parentNode||{}).firstChild,a)},children:function(a){return p.sibling(a.firstChild)},contents:function(a){return p.nodeName(a,"iframe")?a.contentDocument||a.contentWindow.document:p.merge([],a.childNodes)}},function(a,b){p.fn[a]=function(c,d){var e=p.map(this,b,c);return bc.test(a)||(d=c),d&&typeof d=="string"&&(e=p.filter(d,e)),e=this.length>1&&!bg[a]?p.unique(e):e,this.length>1&&bd.test(a)&&(e=e.reverse()),this.pushStack(e,a,k.call(arguments).join(","))}}),p.extend({filter:function(a,b,c){return c&&(a=":not("+a+")"),b.length===1?p.find.matchesSelector(b[0],a)?[b[0]]:[]:p.find.matches(a,b)},dir:function(a,c,d){var e=[],f=a[c];while(f&&f.nodeType!==9&&(d===b||f.nodeType!==1||!p(f).is(d)))f.nodeType===1&&e.push(f),f=f[c];return e},sibling:function(a,b){var c=[];for(;a;a=a.nextSibling)a.nodeType===1&&a!==b&&c.push(a);return c}});var bl="abbr|article|aside|audio|bdi|canvas|data|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video",bm=/ jQuery\d+="(?:null|\d+)"/g,bn=/^\s+/,bo=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi,bp=/<([\w:]+)/,bq=/]","i"),bv=/^(?:checkbox|radio)$/,bw=/checked\s*(?:[^=]|=\s*.checked.)/i,bx=/\/(java|ecma)script/i,by=/^\s*\s*$/g,bz={option:[1,""],legend:[1,"
","
"],thead:[1,"","
"],tr:[2,"","
"],td:[3,"","
"],col:[2,"","
"],area:[1,"",""],_default:[0,"",""]},bA=bk(e),bB=bA.appendChild(e.createElement("div"));bz.optgroup=bz.option,bz.tbody=bz.tfoot=bz.colgroup=bz.caption=bz.thead,bz.th=bz.td,p.support.htmlSerialize||(bz._default=[1,"X
","
"]),p.fn.extend({text:function(a){return p.access(this,function(a){return a===b?p.text(this):this.empty().append((this[0]&&this[0].ownerDocument||e).createTextNode(a))},null,a,arguments.length)},wrapAll:function(a){if(p.isFunction(a))return this.each(function(b){p(this).wrapAll(a.call(this,b))});if(this[0]){var b=p(a,this[0].ownerDocument).eq(0).clone(!0);this[0].parentNode&&b.insertBefore(this[0]),b.map(function(){var a=this;while(a.firstChild&&a.firstChild.nodeType===1)a=a.firstChild;return a}).append(this)}return this},wrapInner:function(a){return p.isFunction(a)?this.each(function(b){p(this).wrapInner(a.call(this,b))}):this.each(function(){var b=p(this),c=b.contents();c.length?c.wrapAll(a):b.append(a)})},wrap:function(a){var b=p.isFunction(a);return this.each(function(c){p(this).wrapAll(b?a.call(this,c):a)})},unwrap:function(){return this.parent().each(function(){p.nodeName(this,"body")||p(this).replaceWith(this.childNodes)}).end()},append:function(){return this.domManip(arguments,!0,function(a){(this.nodeType===1||this.nodeType===11)&&this.appendChild(a)})},prepend:function(){return this.domManip(arguments,!0,function(a){(this.nodeType===1||this.nodeType===11)&&this.insertBefore(a,this.firstChild)})},before:function(){if(!bh(this[0]))return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this)});if(arguments.length){var a=p.clean(arguments);return this.pushStack(p.merge(a,this),"before",this.selector)}},after:function(){if(!bh(this[0]))return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this.nextSibling)});if(arguments.length){var a=p.clean(arguments);return this.pushStack(p.merge(this,a),"after",this.selector)}},remove:function(a,b){var c,d=0;for(;(c=this[d])!=null;d++)if(!a||p.filter(a,[c]).length)!b&&c.nodeType===1&&(p.cleanData(c.getElementsByTagName("*")),p.cleanData([c])),c.parentNode&&c.parentNode.removeChild(c);return this},empty:function(){var a,b=0;for(;(a=this[b])!=null;b++){a.nodeType===1&&p.cleanData(a.getElementsByTagName("*"));while(a.firstChild)a.removeChild(a.firstChild)}return this},clone:function(a,b){return a=a==null?!1:a,b=b==null?a:b,this.map(function(){return p.clone(this,a,b)})},html:function(a){return p.access(this,function(a){var c=this[0]||{},d=0,e=this.length;if(a===b)return c.nodeType===1?c.innerHTML.replace(bm,""):b;if(typeof a=="string"&&!bs.test(a)&&(p.support.htmlSerialize||!bu.test(a))&&(p.support.leadingWhitespace||!bn.test(a))&&!bz[(bp.exec(a)||["",""])[1].toLowerCase()]){a=a.replace(bo,"<$1>");try{for(;d1&&typeof j=="string"&&bw.test(j))return this.each(function(){p(this).domManip(a,c,d)});if(p.isFunction(j))return this.each(function(e){var f=p(this);a[0]=j.call(this,e,c?f.html():b),f.domManip(a,c,d)});if(this[0]){e=p.buildFragment(a,this,k),g=e.fragment,f=g.firstChild,g.childNodes.length===1&&(g=f);if(f){c=c&&p.nodeName(f,"tr");for(h=e.cacheable||l-1;i0?this.clone(!0):this).get(),p(g[e])[b](d),f=f.concat(d);return this.pushStack(f,a,g.selector)}}),p.extend({clone:function(a,b,c){var d,e,f,g;p.support.html5Clone||p.isXMLDoc(a)||!bu.test("<"+a.nodeName+">")?g=a.cloneNode(!0):(bB.innerHTML=a.outerHTML,bB.removeChild(g=bB.firstChild));if((!p.support.noCloneEvent||!p.support.noCloneChecked)&&(a.nodeType===1||a.nodeType===11)&&!p.isXMLDoc(a)){bE(a,g),d=bF(a),e=bF(g);for(f=0;d[f];++f)e[f]&&bE(d[f],e[f])}if(b){bD(a,g);if(c){d=bF(a),e=bF(g);for(f=0;d[f];++f)bD(d[f],e[f])}}return d=e=null,g},clean:function(a,b,c,d){var f,g,h,i,j,k,l,m,n,o,q,r,s=b===e&&bA,t=[];if(!b||typeof b.createDocumentFragment=="undefined")b=e;for(f=0;(h=a[f])!=null;f++){typeof h=="number"&&(h+="");if(!h)continue;if(typeof h=="string")if(!br.test(h))h=b.createTextNode(h);else{s=s||bk(b),l=b.createElement("div"),s.appendChild(l),h=h.replace(bo,"<$1>"),i=(bp.exec(h)||["",""])[1].toLowerCase(),j=bz[i]||bz._default,k=j[0],l.innerHTML=j[1]+h+j[2];while(k--)l=l.lastChild;if(!p.support.tbody){m=bq.test(h),n=i==="table"&&!m?l.firstChild&&l.firstChild.childNodes:j[1]===""&&!m?l.childNodes:[];for(g=n.length-1;g>=0;--g)p.nodeName(n[g],"tbody")&&!n[g].childNodes.length&&n[g].parentNode.removeChild(n[g])}!p.support.leadingWhitespace&&bn.test(h)&&l.insertBefore(b.createTextNode(bn.exec(h)[0]),l.firstChild),h=l.childNodes,l.parentNode.removeChild(l)}h.nodeType?t.push(h):p.merge(t,h)}l&&(h=l=s=null);if(!p.support.appendChecked)for(f=0;(h=t[f])!=null;f++)p.nodeName(h,"input")?bG(h):typeof h.getElementsByTagName!="undefined"&&p.grep(h.getElementsByTagName("input"),bG);if(c){q=function(a){if(!a.type||bx.test(a.type))return d?d.push(a.parentNode?a.parentNode.removeChild(a):a):c.appendChild(a)};for(f=0;(h=t[f])!=null;f++)if(!p.nodeName(h,"script")||!q(h))c.appendChild(h),typeof h.getElementsByTagName!="undefined"&&(r=p.grep(p.merge([],h.getElementsByTagName("script")),q),t.splice.apply(t,[f+1,0].concat(r)),f+=r.length)}return t},cleanData:function(a,b){var c,d,e,f,g=0,h=p.expando,i=p.cache,j=p.support.deleteExpando,k=p.event.special;for(;(e=a[g])!=null;g++)if(b||p.acceptData(e)){d=e[h],c=d&&i[d];if(c){if(c.events)for(f in c.events)k[f]?p.event.remove(e,f):p.removeEvent(e,f,c.handle);i[d]&&(delete i[d],j?delete e[h]:e.removeAttribute?e.removeAttribute(h):e[h]=null,p.deletedIds.push(d))}}}}),function(){var a,b;p.uaMatch=function(a){a=a.toLowerCase();var b=/(chrome)[ \/]([\w.]+)/.exec(a)||/(webkit)[ \/]([\w.]+)/.exec(a)||/(opera)(?:.*version|)[ \/]([\w.]+)/.exec(a)||/(msie) ([\w.]+)/.exec(a)||a.indexOf("compatible")<0&&/(mozilla)(?:.*? rv:([\w.]+)|)/.exec(a)||[];return{browser:b[1]||"",version:b[2]||"0"}},a=p.uaMatch(g.userAgent),b={},a.browser&&(b[a.browser]=!0,b.version=a.version),b.chrome?b.webkit=!0:b.webkit&&(b.safari=!0),p.browser=b,p.sub=function(){function a(b,c){return new a.fn.init(b,c)}p.extend(!0,a,this),a.superclass=this,a.fn=a.prototype=this(),a.fn.constructor=a,a.sub=this.sub,a.fn.init=function c(c,d){return d&&d instanceof p&&!(d instanceof a)&&(d=a(d)),p.fn.init.call(this,c,d,b)},a.fn.init.prototype=a.fn;var b=a(e);return a}}();var bH,bI,bJ,bK=/alpha\([^)]*\)/i,bL=/opacity=([^)]*)/,bM=/^(top|right|bottom|left)$/,bN=/^(none|table(?!-c[ea]).+)/,bO=/^margin/,bP=new RegExp("^("+q+")(.*)$","i"),bQ=new RegExp("^("+q+")(?!px)[a-z%]+$","i"),bR=new RegExp("^([-+])=("+q+")","i"),bS={},bT={position:"absolute",visibility:"hidden",display:"block"},bU={letterSpacing:0,fontWeight:400},bV=["Top","Right","Bottom","Left"],bW=["Webkit","O","Moz","ms"],bX=p.fn.toggle;p.fn.extend({css:function(a,c){return p.access(this,function(a,c,d){return d!==b?p.style(a,c,d):p.css(a,c)},a,c,arguments.length>1)},show:function(){return b$(this,!0)},hide:function(){return b$(this)},toggle:function(a,b){var c=typeof a=="boolean";return p.isFunction(a)&&p.isFunction(b)?bX.apply(this,arguments):this.each(function(){(c?a:bZ(this))?p(this).show():p(this).hide()})}}),p.extend({cssHooks:{opacity:{get:function(a,b){if(b){var c=bH(a,"opacity");return c===""?"1":c}}}},cssNumber:{fillOpacity:!0,fontWeight:!0,lineHeight:!0,opacity:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{"float":p.support.cssFloat?"cssFloat":"styleFloat"},style:function(a,c,d,e){if(!a||a.nodeType===3||a.nodeType===8||!a.style)return;var f,g,h,i=p.camelCase(c),j=a.style;c=p.cssProps[i]||(p.cssProps[i]=bY(j,i)),h=p.cssHooks[c]||p.cssHooks[i];if(d===b)return h&&"get"in h&&(f=h.get(a,!1,e))!==b?f:j[c];g=typeof d,g==="string"&&(f=bR.exec(d))&&(d=(f[1]+1)*f[2]+parseFloat(p.css(a,c)),g="number");if(d==null||g==="number"&&isNaN(d))return;g==="number"&&!p.cssNumber[i]&&(d+="px");if(!h||!("set"in h)||(d=h.set(a,d,e))!==b)try{j[c]=d}catch(k){}},css:function(a,c,d,e){var f,g,h,i=p.camelCase(c);return c=p.cssProps[i]||(p.cssProps[i]=bY(a.style,i)),h=p.cssHooks[c]||p.cssHooks[i],h&&"get"in h&&(f=h.get(a,!0,e)),f===b&&(f=bH(a,c)),f==="normal"&&c in bU&&(f=bU[c]),d||e!==b?(g=parseFloat(f),d||p.isNumeric(g)?g||0:f):f},swap:function(a,b,c){var d,e,f={};for(e in b)f[e]=a.style[e],a.style[e]=b[e];d=c.call(a);for(e in b)a.style[e]=f[e];return d}}),a.getComputedStyle?bH=function(b,c){var d,e,f,g,h=a.getComputedStyle(b,null),i=b.style;return h&&(d=h[c],d===""&&!p.contains(b.ownerDocument,b)&&(d=p.style(b,c)),bQ.test(d)&&bO.test(c)&&(e=i.width,f=i.minWidth,g=i.maxWidth,i.minWidth=i.maxWidth=i.width=d,d=h.width,i.width=e,i.minWidth=f,i.maxWidth=g)),d}:e.documentElement.currentStyle&&(bH=function(a,b){var c,d,e=a.currentStyle&&a.currentStyle[b],f=a.style;return e==null&&f&&f[b]&&(e=f[b]),bQ.test(e)&&!bM.test(b)&&(c=f.left,d=a.runtimeStyle&&a.runtimeStyle.left,d&&(a.runtimeStyle.left=a.currentStyle.left),f.left=b==="fontSize"?"1em":e,e=f.pixelLeft+"px",f.left=c,d&&(a.runtimeStyle.left=d)),e===""?"auto":e}),p.each(["height","width"],function(a,b){p.cssHooks[b]={get:function(a,c,d){if(c)return a.offsetWidth===0&&bN.test(bH(a,"display"))?p.swap(a,bT,function(){return cb(a,b,d)}):cb(a,b,d)},set:function(a,c,d){return b_(a,c,d?ca(a,b,d,p.support.boxSizing&&p.css(a,"boxSizing")==="border-box"):0)}}}),p.support.opacity||(p.cssHooks.opacity={get:function(a,b){return bL.test((b&&a.currentStyle?a.currentStyle.filter:a.style.filter)||"")?.01*parseFloat(RegExp.$1)+"":b?"1":""},set:function(a,b){var c=a.style,d=a.currentStyle,e=p.isNumeric(b)?"alpha(opacity="+b*100+")":"",f=d&&d.filter||c.filter||"";c.zoom=1;if(b>=1&&p.trim(f.replace(bK,""))===""&&c.removeAttribute){c.removeAttribute("filter");if(d&&!d.filter)return}c.filter=bK.test(f)?f.replace(bK,e):f+" "+e}}),p(function(){p.support.reliableMarginRight||(p.cssHooks.marginRight={get:function(a,b){return p.swap(a,{display:"inline-block"},function(){if(b)return bH(a,"marginRight")})}}),!p.support.pixelPosition&&p.fn.position&&p.each(["top","left"],function(a,b){p.cssHooks[b]={get:function(a,c){if(c){var d=bH(a,b);return bQ.test(d)?p(a).position()[b]+"px":d}}}})}),p.expr&&p.expr.filters&&(p.expr.filters.hidden=function(a){return a.offsetWidth===0&&a.offsetHeight===0||!p.support.reliableHiddenOffsets&&(a.style&&a.style.display||bH(a,"display"))==="none"},p.expr.filters.visible=function(a){return!p.expr.filters.hidden(a)}),p.each({margin:"",padding:"",border:"Width"},function(a,b){p.cssHooks[a+b]={expand:function(c){var d,e=typeof c=="string"?c.split(" "):[c],f={};for(d=0;d<4;d++)f[a+bV[d]+b]=e[d]||e[d-2]||e[0];return f}},bO.test(a)||(p.cssHooks[a+b].set=b_)});var cd=/%20/g,ce=/\[\]$/,cf=/\r?\n/g,cg=/^(?:color|date|datetime|datetime-local|email|hidden|month|number|password|range|search|tel|text|time|url|week)$/i,ch=/^(?:select|textarea)/i;p.fn.extend({serialize:function(){return p.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?p.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||ch.test(this.nodeName)||cg.test(this.type))}).map(function(a,b){var c=p(this).val();return c==null?null:p.isArray(c)?p.map(c,function(a,c){return{name:b.name,value:a.replace(cf,"\r\n")}}):{name:b.name,value:c.replace(cf,"\r\n")}}).get()}}),p.param=function(a,c){var d,e=[],f=function(a,b){b=p.isFunction(b)?b():b==null?"":b,e[e.length]=encodeURIComponent(a)+"="+encodeURIComponent(b)};c===b&&(c=p.ajaxSettings&&p.ajaxSettings.traditional);if(p.isArray(a)||a.jquery&&!p.isPlainObject(a))p.each(a,function(){f(this.name,this.value)});else for(d in a)ci(d,a[d],c,f);return e.join("&").replace(cd,"+")};var cj,ck,cl=/#.*$/,cm=/^(.*?):[ \t]*([^\r\n]*)\r?$/mg,cn=/^(?:about|app|app\-storage|.+\-extension|file|res|widget):$/,co=/^(?:GET|HEAD)$/,cp=/^\/\//,cq=/\?/,cr=/)<[^<]*)*<\/script>/gi,cs=/([?&])_=[^&]*/,ct=/^([\w\+\.\-]+:)(?:\/\/([^\/?#:]*)(?::(\d+)|)|)/,cu=p.fn.load,cv={},cw={},cx=["*/"]+["*"];try{cj=f.href}catch(cy){cj=e.createElement("a"),cj.href="",cj=cj.href}ck=ct.exec(cj.toLowerCase())||[],p.fn.load=function(a,c,d){if(typeof a!="string"&&cu)return cu.apply(this,arguments);if(!this.length)return this;var e,f,g,h=this,i=a.indexOf(" ");return i>=0&&(e=a.slice(i,a.length),a=a.slice(0,i)),p.isFunction(c)?(d=c,c=b):c&&typeof c=="object"&&(f="POST"),p.ajax({url:a,type:f,dataType:"html",data:c,complete:function(a,b){d&&h.each(d,g||[a.responseText,b,a])}}).done(function(a){g=arguments,h.html(e?p("
").append(a.replace(cr,"")).find(e):a)}),this},p.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),function(a,b){p.fn[b]=function(a){return this.on(b,a)}}),p.each(["get","post"],function(a,c){p[c]=function(a,d,e,f){return p.isFunction(d)&&(f=f||e,e=d,d=b),p.ajax({type:c,url:a,data:d,success:e,dataType:f})}}),p.extend({getScript:function(a,c){return p.get(a,b,c,"script")},getJSON:function(a,b,c){return p.get(a,b,c,"json")},ajaxSetup:function(a,b){return b?cB(a,p.ajaxSettings):(b=a,a=p.ajaxSettings),cB(a,b),a},ajaxSettings:{url:cj,isLocal:cn.test(ck[1]),global:!0,type:"GET",contentType:"application/x-www-form-urlencoded; charset=UTF-8",processData:!0,async:!0,accepts:{xml:"application/xml, text/xml",html:"text/html",text:"text/plain",json:"application/json, text/javascript","*":cx},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText"},converters:{"* text":a.String,"text html":!0,"text json":p.parseJSON,"text xml":p.parseXML},flatOptions:{context:!0,url:!0}},ajaxPrefilter:cz(cv),ajaxTransport:cz(cw),ajax:function(a,c){function y(a,c,f,i){var k,s,t,u,w,y=c;if(v===2)return;v=2,h&&clearTimeout(h),g=b,e=i||"",x.readyState=a>0?4:0,f&&(u=cC(l,x,f));if(a>=200&&a<300||a===304)l.ifModified&&(w=x.getResponseHeader("Last-Modified"),w&&(p.lastModified[d]=w),w=x.getResponseHeader("Etag"),w&&(p.etag[d]=w)),a===304?(y="notmodified",k=!0):(k=cD(l,u),y=k.state,s=k.data,t=k.error,k=!t);else{t=y;if(!y||a)y="error",a<0&&(a=0)}x.status=a,x.statusText=""+(c||y),k?o.resolveWith(m,[s,y,x]):o.rejectWith(m,[x,y,t]),x.statusCode(r),r=b,j&&n.trigger("ajax"+(k?"Success":"Error"),[x,l,k?s:t]),q.fireWith(m,[x,y]),j&&(n.trigger("ajaxComplete",[x,l]),--p.active||p.event.trigger("ajaxStop"))}typeof a=="object"&&(c=a,a=b),c=c||{};var d,e,f,g,h,i,j,k,l=p.ajaxSetup({},c),m=l.context||l,n=m!==l&&(m.nodeType||m instanceof p)?p(m):p.event,o=p.Deferred(),q=p.Callbacks("once memory"),r=l.statusCode||{},t={},u={},v=0,w="canceled",x={readyState:0,setRequestHeader:function(a,b){if(!v){var c=a.toLowerCase();a=u[c]=u[c]||a,t[a]=b}return this},getAllResponseHeaders:function(){return v===2?e:null},getResponseHeader:function(a){var c;if(v===2){if(!f){f={};while(c=cm.exec(e))f[c[1].toLowerCase()]=c[2]}c=f[a.toLowerCase()]}return c===b?null:c},overrideMimeType:function(a){return v||(l.mimeType=a),this},abort:function(a){return a=a||w,g&&g.abort(a),y(0,a),this}};o.promise(x),x.success=x.done,x.error=x.fail,x.complete=q.add,x.statusCode=function(a){if(a){var b;if(v<2)for(b in a)r[b]=[r[b],a[b]];else b=a[x.status],x.always(b)}return this},l.url=((a||l.url)+"").replace(cl,"").replace(cp,ck[1]+"//"),l.dataTypes=p.trim(l.dataType||"*").toLowerCase().split(s),l.crossDomain==null&&(i=ct.exec(l.url.toLowerCase()),l.crossDomain=!(!i||i[1]==ck[1]&&i[2]==ck[2]&&(i[3]||(i[1]==="http:"?80:443))==(ck[3]||(ck[1]==="http:"?80:443)))),l.data&&l.processData&&typeof l.data!="string"&&(l.data=p.param(l.data,l.traditional)),cA(cv,l,c,x);if(v===2)return x;j=l.global,l.type=l.type.toUpperCase(),l.hasContent=!co.test(l.type),j&&p.active++===0&&p.event.trigger("ajaxStart");if(!l.hasContent){l.data&&(l.url+=(cq.test(l.url)?"&":"?")+l.data,delete l.data),d=l.url;if(l.cache===!1){var z=p.now(),A=l.url.replace(cs,"$1_="+z);l.url=A+(A===l.url?(cq.test(l.url)?"&":"?")+"_="+z:"")}}(l.data&&l.hasContent&&l.contentType!==!1||c.contentType)&&x.setRequestHeader("Content-Type",l.contentType),l.ifModified&&(d=d||l.url,p.lastModified[d]&&x.setRequestHeader("If-Modified-Since",p.lastModified[d]),p.etag[d]&&x.setRequestHeader("If-None-Match",p.etag[d])),x.setRequestHeader("Accept",l.dataTypes[0]&&l.accepts[l.dataTypes[0]]?l.accepts[l.dataTypes[0]]+(l.dataTypes[0]!=="*"?", "+cx+"; q=0.01":""):l.accepts["*"]);for(k in l.headers)x.setRequestHeader(k,l.headers[k]);if(!l.beforeSend||l.beforeSend.call(m,x,l)!==!1&&v!==2){w="abort";for(k in{success:1,error:1,complete:1})x[k](l[k]);g=cA(cw,l,c,x);if(!g)y(-1,"No Transport");else{x.readyState=1,j&&n.trigger("ajaxSend",[x,l]),l.async&&l.timeout>0&&(h=setTimeout(function(){x.abort("timeout")},l.timeout));try{v=1,g.send(t,y)}catch(B){if(v<2)y(-1,B);else throw B}}return x}return x.abort()},active:0,lastModified:{},etag:{}});var cE=[],cF=/\?/,cG=/(=)\?(?=&|$)|\?\?/,cH=p.now();p.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var a=cE.pop()||p.expando+"_"+cH++;return this[a]=!0,a}}),p.ajaxPrefilter("json jsonp",function(c,d,e){var f,g,h,i=c.data,j=c.url,k=c.jsonp!==!1,l=k&&cG.test(j),m=k&&!l&&typeof i=="string"&&!(c.contentType||"").indexOf("application/x-www-form-urlencoded")&&cG.test(i);if(c.dataTypes[0]==="jsonp"||l||m)return f=c.jsonpCallback=p.isFunction(c.jsonpCallback)?c.jsonpCallback():c.jsonpCallback,g=a[f],l?c.url=j.replace(cG,"$1"+f):m?c.data=i.replace(cG,"$1"+f):k&&(c.url+=(cF.test(j)?"&":"?")+c.jsonp+"="+f),c.converters["script json"]=function(){return h||p.error(f+" was not called"),h[0]},c.dataTypes[0]="json",a[f]=function(){h=arguments},e.always(function(){a[f]=g,c[f]&&(c.jsonpCallback=d.jsonpCallback,cE.push(f)),h&&p.isFunction(g)&&g(h[0]),h=g=b}),"script"}),p.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/javascript|ecmascript/},converters:{"text script":function(a){return p.globalEval(a),a}}}),p.ajaxPrefilter("script",function(a){a.cache===b&&(a.cache=!1),a.crossDomain&&(a.type="GET",a.global=!1)}),p.ajaxTransport("script",function(a){if(a.crossDomain){var c,d=e.head||e.getElementsByTagName("head")[0]||e.documentElement;return{send:function(f,g){c=e.createElement("script"),c.async="async",a.scriptCharset&&(c.charset=a.scriptCharset),c.src=a.url,c.onload=c.onreadystatechange=function(a,e){if(e||!c.readyState||/loaded|complete/.test(c.readyState))c.onload=c.onreadystatechange=null,d&&c.parentNode&&d.removeChild(c),c=b,e||g(200,"success")},d.insertBefore(c,d.firstChild)},abort:function(){c&&c.onload(0,1)}}}});var cI,cJ=a.ActiveXObject?function(){for(var a in cI)cI[a](0,1)}:!1,cK=0;p.ajaxSettings.xhr=a.ActiveXObject?function(){return!this.isLocal&&cL()||cM()}:cL,function(a){p.extend(p.support,{ajax:!!a,cors:!!a&&"withCredentials"in a})}(p.ajaxSettings.xhr()),p.support.ajax&&p.ajaxTransport(function(c){if(!c.crossDomain||p.support.cors){var d;return{send:function(e,f){var g,h,i=c.xhr();c.username?i.open(c.type,c.url,c.async,c.username,c.password):i.open(c.type,c.url,c.async);if(c.xhrFields)for(h in c.xhrFields)i[h]=c.xhrFields[h];c.mimeType&&i.overrideMimeType&&i.overrideMimeType(c.mimeType),!c.crossDomain&&!e["X-Requested-With"]&&(e["X-Requested-With"]="XMLHttpRequest");try{for(h in e)i.setRequestHeader(h,e[h])}catch(j){}i.send(c.hasContent&&c.data||null),d=function(a,e){var h,j,k,l,m;try{if(d&&(e||i.readyState===4)){d=b,g&&(i.onreadystatechange=p.noop,cJ&&delete cI[g]);if(e)i.readyState!==4&&i.abort();else{h=i.status,k=i.getAllResponseHeaders(),l={},m=i.responseXML,m&&m.documentElement&&(l.xml=m);try{l.text=i.responseText}catch(a){}try{j=i.statusText}catch(n){j=""}!h&&c.isLocal&&!c.crossDomain?h=l.text?200:404:h===1223&&(h=204)}}}catch(o){e||f(-1,o)}l&&f(h,j,l,k)},c.async?i.readyState===4?setTimeout(d,0):(g=++cK,cJ&&(cI||(cI={},p(a).unload(cJ)),cI[g]=d),i.onreadystatechange=d):d()},abort:function(){d&&d(0,1)}}}});var cN,cO,cP=/^(?:toggle|show|hide)$/,cQ=new RegExp("^(?:([-+])=|)("+q+")([a-z%]*)$","i"),cR=/queueHooks$/,cS=[cY],cT={"*":[function(a,b){var c,d,e,f=this.createTween(a,b),g=cQ.exec(b),h=f.cur(),i=+h||0,j=1;if(g){c=+g[2],d=g[3]||(p.cssNumber[a]?"":"px");if(d!=="px"&&i){i=p.css(f.elem,a,!0)||c||1;do e=j=j||".5",i=i/j,p.style(f.elem,a,i+d),j=f.cur()/h;while(j!==1&&j!==e)}f.unit=d,f.start=i,f.end=g[1]?i+(g[1]+1)*c:c}return f}]};p.Animation=p.extend(cW,{tweener:function(a,b){p.isFunction(a)?(b=a,a=["*"]):a=a.split(" ");var c,d=0,e=a.length;for(;d-1,j={},k={},l,m;i?(k=e.position(),l=k.top,m=k.left):(l=parseFloat(g)||0,m=parseFloat(h)||0),p.isFunction(b)&&(b=b.call(a,c,f)),b.top!=null&&(j.top=b.top-f.top+l),b.left!=null&&(j.left=b.left-f.left+m),"using"in b?b.using.call(a,j):e.css(j)}},p.fn.extend({position:function(){if(!this[0])return;var a=this[0],b=this.offsetParent(),c=this.offset(),d=c_.test(b[0].nodeName)?{top:0,left:0}:b.offset();return c.top-=parseFloat(p.css(a,"marginTop"))||0,c.left-=parseFloat(p.css(a,"marginLeft"))||0,d.top+=parseFloat(p.css(b[0],"borderTopWidth"))||0,d.left+=parseFloat(p.css(b[0],"borderLeftWidth"))||0,{top:c.top-d.top,left:c.left-d.left}},offsetParent:function(){return this.map(function(){var a=this.offsetParent||e.body;while(a&&!c_.test(a.nodeName)&&p.css(a,"position")==="static")a=a.offsetParent;return a||e.body})}}),p.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(a,c){var d=/Y/.test(c);p.fn[a]=function(e){return p.access(this,function(a,e,f){var g=da(a);if(f===b)return g?c in g?g[c]:g.document.documentElement[e]:a[e];g?g.scrollTo(d?p(g).scrollLeft():f,d?f:p(g).scrollTop()):a[e]=f},a,e,arguments.length,null)}}),p.each({Height:"height",Width:"width"},function(a,c){p.each({padding:"inner"+a,content:c,"":"outer"+a},function(d,e){p.fn[e]=function(e,f){var g=arguments.length&&(d||typeof e!="boolean"),h=d||(e===!0||f===!0?"margin":"border");return p.access(this,function(c,d,e){var f;return p.isWindow(c)?c.document.documentElement["client"+a]:c.nodeType===9?(f=c.documentElement,Math.max(c.body["scroll"+a],f["scroll"+a],c.body["offset"+a],f["offset"+a],f["client"+a])):e===b?p.css(c,d,e,h):p.style(c,d,e,h)},c,g?e:b,g,null)}})}),a.jQuery=a.$=p,typeof define=="function"&&define.amd&&define.amd.jQuery&&define("jquery",[],function(){return p})})(window); \ No newline at end of file diff --git "a/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/jquery.css" "b/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/jquery.css" deleted file mode 100644 index e8dc7fd..0000000 --- "a/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/jquery.css" +++ /dev/null @@ -1,334 +0,0 @@ -/* - * FancyBox - jQuery Plugin - * Simple and fancy lightbox alternative - * - * Copyright (c) 20010 Janis Skarnelis - * Examples and documentation at: http://fancybox.net - * - * Version: 1.3.0 (02/02/2010) - * Requires: jQuery v1.3+ - * - * Dual licensed under the MIT and GPL licenses: - * http://www.opensource.org/licenses/mit-license.php - * http://www.gnu.org/licenses/gpl.html - */ - -#fancybox-loading { - position: fixed; - top: 50%; - left: 50%; - height: 40px; - width: 40px; - margin-top: -20px; - margin-left: -20px; - cursor: pointer; - overflow: hidden; - background: transparent; - z-index: 1104; - display: none; -} - -* html #fancybox-loading { /* IE6 */ - position: absolute; - margin-top: 0; -} - -#fancybox-loading div { - position: absolute; - top: 0; - left: 0; - width: 40px; - height: 480px; - background: transparent url('http://cdn.myanimelist.net/images/fancybox/fancy_loading.png') no-repeat; -} - -#fancybox-overlay { - position: fixed; - top: 0; - left: 0; - bottom: 0; - right: 0; - background: #000; - z-index: 1100; - display: none; -} - -* html #fancybox-overlay { /* IE6 */ - position: absolute; - width: 100%; -} - -#fancybox-tmp { - padding: 0; - margin: 0; - border: 0; - overflow: auto; - display: none; -} - -#fancybox-wrap { - position: absolute; - top: 0; - left: 0; - margin: 0; - padding: 20px; - z-index: 1101; - display: none; -} - -#fancybox-outer { - position: relative; - width: 100%; - height: 100%; - background: #FFF; -} - -#fancybox-inner { - position: absolute; - top: 0; - left: 0; - width: 1px; - height: 1px; - padding: 0; - margin: 0; - outline: none; - overflow: hidden; -} - -#fancybox-hide-sel-frame { - position: absolute; - top: 0; - left: 0; - width: 100%; - height: 100%; - background: transparent; -} - -#fancybox-close { - position: absolute; - top: -15px; - right: -15px; - width: 32px; - height: 32px; - background: url('http://cdn.myanimelist.net/images/fancybox/fancy_close.png') top left no-repeat; - cursor: pointer; - z-index: 1103; - display: none; -} - -#fancybox_error { - color: #444; - font: normal 12px/20px Arial; -} - -#fancybox-content { - height: auto; - width: auto; - padding: 0; - margin: 0; -} - -#fancybox-img { - width: 100%; - height: 100%; - padding: 0; - margin: 0; - border: none; - outline: none; - line-height: 0; - vertical-align: top; - -ms-interpolation-mode: bicubic; -} - -#fancybox-frame { - position: relative; - width: 100%; - height: 100%; - border: none; - display: block; -} - -#fancybox-title { - position: absolute; - bottom: 0; - left: 0; - font-family: Arial; - font-size: 12px; - z-index: 1102; -} - -.fancybox-title-inside { - padding: 10px 0; - text-align: center; - color: #333; -} - -.fancybox-title-outside { - padding-top: 5px; - color: #FFF; - text-align: center; - font-weight: bold; -} - -.fancybox-title-over { - color: #FFF; - text-align: left; -} - -#fancybox-title-over { - padding: 10px; - background: url('http://cdn.myanimelist.net/images/fancybox/fancy_title_over.png'); - display: block; -} - -#fancybox-title-wrap { - display: inline-block; -} - -#fancybox-title-wrap span { - height: 32px; - float: left; -} - -#fancybox-title-left { - padding-left: 15px; - background: transparent url('http://cdn.myanimelist.net/images/fancybox/fancy_title_left.png') repeat-x; -} - -#fancybox-title-main { - font-weight: bold; - line-height: 29px; - background: transparent url('http://cdn.myanimelist.net/images/fancybox/fancy_title_main.png') repeat-x; - color: #FFF; -} - -#fancybox-title-right { - padding-left: 15px; - background: transparent url('http://cdn.myanimelist.net/images/fancybox/fancy_title_right.png') repeat-x; -} - -#fancybox-left, #fancybox-right { - position: absolute; - bottom: 0px; - height: 100%; - width: 35%; - cursor: pointer; - outline: none; - background-image: url('http://cdn.myanimelist.net/images/fancybox/blank.gif'); - z-index: 1102; - display: none; -} - -#fancybox-left { - left: 0px; -} - -#fancybox-right { - right: 0px; -} - -#fancybox-left-ico, #fancybox-right-ico { - position: absolute; - top: 50%; - left: -9999px; - width: 30px; - height: 30px; - margin-top: -15px; - - cursor: pointer; - z-index: 1102; - display: block; -} - -#fancybox-left-ico { - background: transparent url('http://cdn.myanimelist.net/images/fancybox/fancy_nav_left.png') no-repeat; -} - -#fancybox-right-ico { - background: transparent url('http://cdn.myanimelist.net/images/fancybox/fancy_nav_right.png') no-repeat; -} - -#fancybox-left:hover, #fancybox-right:hover { - visibility: visible; /* IE6 */ -} - -#fancybox-left:hover span { - left: 20px; -} - -#fancybox-right:hover span { - left: auto; - right: 20px; -} - -div.fancy-bg { - position: absolute; - padding: 0; - margin: 0; - border: 0; - z-index: 1001; -} - -div#fancy-bg-n { - top: -20px; - left: 0; - width: 100%; - height: 20px; - background: transparent url('http://cdn.myanimelist.net/images/fancybox/fancy_shadow_n.png') repeat-x; -} - -div#fancy-bg-ne { - top: -20px; - right: -20px; - width: 20px; - height: 20px; - background: transparent url('http://cdn.myanimelist.net/images/fancybox/fancy_shadow_ne.png') no-repeat; -} - -div#fancy-bg-e { - top: 0; - right: -20px; - height: 100%; - width: 20px; - background: transparent url('http://cdn.myanimelist.net/images/fancybox/fancy_shadow_e.png') repeat-y; -} - -div#fancy-bg-se { - bottom: -20px; - right: -20px; - width: 20px; - height: 20px; - background: transparent url('http://cdn.myanimelist.net/images/fancybox/fancy_shadow_se.png') no-repeat; -} - -div#fancy-bg-s { - bottom: -20px; - left: 0; - width: 100%; - height: 20px; - background: transparent url('http://cdn.myanimelist.net/images/fancybox/fancy_shadow_s.png') repeat-x; -} - -div#fancy-bg-sw { - bottom: -20px; - left: -20px; - width: 20px; - height: 20px; - background: transparent url('http://cdn.myanimelist.net/images/fancybox/fancy_shadow_sw.png') no-repeat; -} - -div#fancy-bg-w { - top: 0; - left: -20px; - height: 100%; - width: 20px; - background: transparent url('http://cdn.myanimelist.net/images/fancybox/fancy_shadow_w.png') repeat-y; -} - -div#fancy-bg-nw { - top: -20px; - left: -20px; - width: 20px; - height: 20px; - background: transparent url('http://cdn.myanimelist.net/images/fancybox/fancy_shadow_nw.png') no-repeat; -} \ No newline at end of file diff --git "a/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/jquery.js" "b/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/jquery.js" deleted file mode 100644 index 6b13c97..0000000 --- "a/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/jquery.js" +++ /dev/null @@ -1,2 +0,0 @@ -(function(b){var m,u,x,g,D,i,z,A,B,p=0,e={},q=[],n=0,c={},j=[],E=null,s=new Image,G=/\.(jpg|gif|png|bmp|jpeg)(.*)?$/i,S=/[^\.]\.(swf)\s*$/i,H,I=1,k,l,h=false,y=b.extend(b("
")[0],{prop:0}),v=0,O=!b.support.opacity&&!window.XMLHttpRequest,J=function(){u.hide();s.onerror=s.onload=null;E&&E.abort();m.empty()},P=function(){b.fancybox('

The requested content cannot be loaded.
Please try again later.

',{scrolling:"no",padding:20,transitionIn:"none",transitionOut:"none"})},K=function(){return[Math.max(document.documentElement.clientWidth,window.innerWidth||0),Math.max(document.documentElement.clientHeight,window.innerHeight||0),b(document).scrollLeft(),b(document).scrollTop()]},T=function(){var a=K(),d={},f=c.margin,o=c.autoScale,t=(20+f)*2,w=(20+f)*2,r=c.padding*2;if(c.width.toString().indexOf("%")>-1){d.width=a[0]*parseFloat(c.width)/100-40;o=false}else d.width=c.width+r;if(c.height.toString().indexOf("%")>-1){d.height=a[1]*parseFloat(c.height)/100-40;o=false}else d.height=c.height+r;if(o&&(d.width>a[0]-t||d.height>a[1]-w))if(e.type=="image"||e.type=="swf"){t+=r;w+=r;o=Math.min(Math.min(a[0]-t,c.width)/c.width,Math.min(a[1]-w,c.height)/c.height);d.width=Math.round(o*(d.width-r))+r;d.height=Math.round(o*(d.height-r))+r}else{d.width=Math.min(d.width,a[0]-t);d.height=Math.min(d.height,a[1]-w)}d.top=a[3]+(a[1]-(d.height+40))*0.5;d.left=a[2]+(a[0]-(d.width+40))*0.5;if(c.autoScale===false){d.top=Math.max(a[3]+f,d.top);d.left=Math.max(a[2]+f,d.left)}return d},U=function(a){if(a&&a.length)switch(c.titlePosition){case"inside":return a;case"over":return''+a+"";default:return''+a+''}return false},V=function(){var a=c.title,d=l.width-c.padding*2,f="fancybox-title-"+c.titlePosition;b("#fancybox-title").remove();v=0;if(c.titleShow!==false){a=b.isFunction(c.titleFormat)?c.titleFormat(a,j,n,c):U(a);if(!(!a||a==="")){b('
').css({width:d,paddingLeft:c.padding,paddingRight:c.padding}).html(a).appendTo("body");switch(c.titlePosition){case"inside":v=b("#fancybox-title").outerHeight(true)-c.padding;l.height+=v;break;case"over":b("#fancybox-title").css("bottom",c.padding);break;default:b("#fancybox-title").css("bottom",b("#fancybox-title").outerHeight(true)*-1);break}b("#fancybox-title").appendTo(D).hide()}}},W=function(){b(document).unbind("keydown.fb").bind("keydown.fb",function(a){if(a.keyCode==27&&c.enableEscapeButton){a.preventDefault();b.fancybox.close()}else if(a.keyCode==37){a.preventDefault();b.fancybox.prev()}else if(a.keyCode==39){a.preventDefault();b.fancybox.next()}});if(b.fn.mousewheel){g.unbind("mousewheel.fb");j.length>1&&g.bind("mousewheel.fb",function(a,d){a.preventDefault();h||d===0||(d>0?b.fancybox.prev():b.fancybox.next())})}if(c.showNavArrows){if(c.cyclic&&j.length>1||n!==0)A.show();if(c.cyclic&&j.length>1||n!=j.length-1)B.show()}},X=function(){var a,d;if(j.length-1>n){a=j[n+1].href;if(typeof a!=="undefined"&&a.match(G)){d=new Image;d.src=a}}if(n>0){a=j[n-1].href;if(typeof a!=="undefined"&&a.match(G)){d=new Image;d.src=a}}},L=function(){i.css("overflow",c.scrolling=="auto"?c.type=="image"||c.type=="iframe"||c.type=="swf"?"hidden":"auto":c.scrolling=="yes"?"auto":"visible");if(!b.support.opacity){i.get(0).style.removeAttribute("filter");g.get(0).style.removeAttribute("filter")}b("#fancybox-title").show();c.hideOnContentClick&&i.one("click",b.fancybox.close);c.hideOnOverlayClick&&x.one("click",b.fancybox.close);c.showCloseButton&&z.show();W();b(window).bind("resize.fb",b.fancybox.center);c.centerOnScroll?b(window).bind("scroll.fb",b.fancybox.center):b(window).unbind("scroll.fb");b.isFunction(c.onComplete)&&c.onComplete(j,n,c);h=false;X()},M=function(a){var d=Math.round(k.width+(l.width-k.width)*a),f=Math.round(k.height+(l.height-k.height)*a),o=Math.round(k.top+(l.top-k.top)*a),t=Math.round(k.left+(l.left-k.left)*a);g.css({width:d+"px",height:f+"px",top:o+"px",left:t+"px"});d=Math.max(d-c.padding*2,0);f=Math.max(f-(c.padding*2+v*a),0);i.css({width:d+"px",height:f+"px"});if(typeof l.opacity!=="undefined")g.css("opacity",a<0.5?0.5:a)},Y=function(a){var d=a.offset();d.top+=parseFloat(a.css("paddingTop"))||0;d.left+=parseFloat(a.css("paddingLeft"))||0;d.top+=parseFloat(a.css("border-top-width"))||0;d.left+=parseFloat(a.css("border-left-width"))||0;d.width=a.width();d.height=a.height();return d},Q=function(){var a=e.orig?b(e.orig):false,d={};if(a&&a.length){a=Y(a);d={width:a.width+c.padding*2,height:a.height+c.padding*2,top:a.top-c.padding-20,left:a.left-c.padding-20}}else{a=K();d={width:1,height:1,top:a[3]+a[1]*0.5,left:a[2]+a[0]*0.5}}return d},N=function(){u.hide();if(g.is(":visible")&&b.isFunction(c.onCleanup))if(c.onCleanup(j,n,c)===false){b.event.trigger("fancybox-cancel");h=false;return}j=q;n=p;c=e;i.get(0).scrollTop=0;i.get(0).scrollLeft=0;if(c.overlayShow){O&&b("select:not(#fancybox-tmp select)").filter(function(){return this.style.visibility!=="hidden"}).css({visibility:"hidden"}).one("fancybox-cleanup",function(){this.style.visibility="inherit"});x.css({"background-color":c.overlayColor,opacity:c.overlayOpacity}).unbind().show()}l=T();V();if(g.is(":visible")){b(z.add(A).add(B)).hide();var a=g.position(),d;k={top:a.top,left:a.left,width:g.width(),height:g.height()};d=k.width==l.width&&k.height==l.height;i.fadeOut(c.changeFade,function(){var f=function(){i.html(m.contents()).fadeIn(c.changeFade,L)};b.event.trigger("fancybox-change");i.empty().css("overflow","hidden");if(d){i.css({top:c.padding,left:c.padding,width:Math.max(l.width-c.padding*2,1),height:Math.max(l.height-c.padding*2-v,1)});f()}else{i.css({top:c.padding,left:c.padding,width:Math.max(k.width-c.padding*2,1),height:Math.max(k.height-c.padding*2,1)});y.prop=0;b(y).animate({prop:1},{duration:c.changeSpeed,easing:c.easingChange,step:M,complete:f})}})}else{g.css("opacity",1);if(c.transitionIn=="elastic"){k=Q();i.css({top:c.padding,left:c.padding,width:Math.max(k.width-c.padding*2,1),height:Math.max(k.height-c.padding*2,1)}).html(m.contents());g.css(k).show();if(c.opacity)l.opacity=0;y.prop=0;b(y).animate({prop:1},{duration:c.speedIn,easing:c.easingIn,step:M,complete:L})}else{i.css({top:c.padding,left:c.padding,width:Math.max(l.width-c.padding*2,1),height:Math.max(l.height-c.padding*2-v,1)}).html(m.contents());g.css(l).fadeIn(c.transitionIn=="none"?0:c.speedIn,L)}}},F=function(){m.width(e.width);m.height(e.height);if(e.width=="auto")e.width=m.width();if(e.height=="auto")e.height=m.height();N()},Z=function(){h=true;e.width=s.width;e.height=s.height;b("").attr({id:"fancybox-img",src:s.src,alt:e.title}).appendTo(m);N()},C=function(){J();var a=q[p],d,f,o,t,w;e=b.extend({},b.fn.fancybox.defaults,typeof b(a).data("fancybox")=="undefined"?e:b(a).data("fancybox"));o=a.title||b(a).title||e.title||"";if(a.nodeName&&!e.orig)e.orig=b(a).children("img:first").length?b(a).children("img:first"):b(a);if(o===""&&e.orig)o=e.orig.attr("alt");d=a.nodeName&&/^(?:javascript|#)/i.test(a.href)?e.href||null:e.href||a.href||null;if(e.type){f=e.type;if(!d)d=e.content}else if(e.content)f="html";else if(d)if(d.match(G))f="image";else if(d.match(S))f="swf";else if(b(a).hasClass("iframe"))f="iframe";else if(d.match(/#/)){a=d.substr(d.indexOf("#"));f=b(a).length>0?"inline":"ajax"}else f="ajax";else f="inline";e.type=f;e.href=d;e.title=o;if(e.autoDimensions&&e.type!=="iframe"&&e.type!=="swf"){e.width="auto";e.height="auto"}if(e.modal){e.overlayShow=true;e.hideOnOverlayClick=false;e.hideOnContentClick=false;e.enableEscapeButton=false;e.showCloseButton=false}if(b.isFunction(e.onStart))if(e.onStart(q,p,e)===false){h=false;return}m.css("padding",20+e.padding+e.margin);b(".fancybox-inline-tmp").unbind("fancybox-cancel").bind("fancybox-change",function(){b(this).replaceWith(i.children())});switch(f){case"html":m.html(e.content);F();break;case"inline":b('
').hide().insertBefore(b(a)).bind("fancybox-cleanup",function(){b(this).replaceWith(i.children())}).bind("fancybox-cancel",function(){b(this).replaceWith(m.children())});b(a).appendTo(m);F();break;case"image":h=false;b.fancybox.showActivity();s=new Image;s.onerror=function(){P()};s.onload=function(){s.onerror=null;s.onload=null;Z()};s.src=d;break;case"swf":t='';w="";b.each(e.swf,function(r,R){t+='';w+=" "+r+'="'+R+'"'});t+='";m.html(t);F();break;case"ajax":a=d.split("#",2);f=e.ajax.data||{};if(a.length>1){d=a[0];if(typeof f=="string")f+="&selector="+a[1];else f.selector=a[1]}h=false;b.fancybox.showActivity();E=b.ajax(b.extend(e.ajax,{url:d,data:f,error:P,success:function(r){if(E.status==200){m.html(r);F()}}}));break;case"iframe":b('').appendTo(m);N();break}},$=function(){if(u.is(":visible")){b("div",u).css("top",I*-40+"px");I=(I+1)%12}else clearInterval(H)},aa=function(){if(!b("#fancybox-wrap").length){b("body").append(m=b('
'),u=b('
'),x=b('
'),g=b('
'));if(!b.support.opacity){g.addClass("fancybox-ie");u.addClass("fancybox-ie")}D=b('
').append('
').appendTo(g);D.append(i=b('
'),z=b(''),A=b(''),B=b(''));z.click(b.fancybox.close);u.click(b.fancybox.cancel);A.click(function(a){a.preventDefault();b.fancybox.prev()});B.click(function(a){a.preventDefault();b.fancybox.next()});if(O){x.get(0).style.setExpression("height","document.body.scrollHeight > document.body.offsetHeight ? document.body.scrollHeight : document.body.offsetHeight + 'px'");u.get(0).style.setExpression("top","(-20 + (document.documentElement.clientHeight ? document.documentElement.clientHeight/2 : document.body.clientHeight/2 ) + ( ignoreMe = document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop )) + 'px'");D.prepend('')}}};b.fn.fancybox=function(a){b(this).data("fancybox",b.extend({},a,b.metadata?b(this).metadata():{})).unbind("click.fb").bind("click.fb",function(d){d.preventDefault();if(!h){h=true;b(this).blur();q=[];p=0;d=b(this).attr("rel")||"";if(!d||d==""||d==="nofollow")q.push(this);else{q=b("a[rel="+d+"], area[rel="+d+"]");p=q.index(this)}C();return false}});return this};b.fancybox=function(a,d){if(!h){h=true;d=typeof d!=="undefined"?d:{};q=[];p=d.index||0;if(b.isArray(a)){for(var f=0,o=a.length;fq.length||p<0)p=0;C()}};b.fancybox.showActivity=function(){clearInterval(H);u.show();H=setInterval($,66)};b.fancybox.hideActivity=function(){u.hide()};b.fancybox.next=function(){return b.fancybox.pos(n+1)};b.fancybox.prev=function(){return b.fancybox.pos(n-1)};b.fancybox.pos=function(a){if(!h){a=parseInt(a,10);if(a>-1&&j.length>a){p=a;C()}if(c.cyclic&&j.length>1&&a<0){p=j.length-1;C()}if(c.cyclic&&j.length>1&&a>=j.length){p=0;C()}}};b.fancybox.cancel=function(){if(!h){h=true;b.event.trigger("fancybox-cancel");J();e&&b.isFunction(e.onCancel)&&e.onCancel(q,p,e);h=false}};b.fancybox.close=function(){function a(){x.fadeOut("fast");g.hide();b.event.trigger("fancybox-cleanup");i.empty();b.isFunction(c.onClosed)&&c.onClosed(j,n,c);j=e=[];n=p=0;c=e={};h=false} -if(!(h||g.is(":hidden"))){h=true;if(c&&b.isFunction(c.onCleanup))if(c.onCleanup(j,n,c)===false){h=false;return}J();b(z.add(A).add(B)).hide();b("#fancybox-title").remove();g.add(i).add(x).unbind();b(window).unbind("resize.fb scroll.fb");b(document).unbind("keydown.fb");i.css("overflow","hidden");if(c.transitionOut=="elastic"){k=Q();var d=g.position();l={top:d.top,left:d.left,width:g.width(),height:g.height()};if(c.opacity)l.opacity=1;y.prop=1;b(y).animate({prop:0},{duration:c.speedOut,easing:c.easingOut,step:M,complete:a})}else g.fadeOut(c.transitionOut=="none"?0:c.speedOut,a)}};b.fancybox.resize=function(){var a,d;if(!(h||g.is(":hidden"))){h=true;a=i.wrapInner("
").children();d=a.height();g.css({height:d+c.padding*2+v});i.css({height:d});a.replaceWith(a.children());b.fancybox.center()}};b.fancybox.center=function(){h=true;var a=K(),d=c.margin,f={};f.top=a[3]+(a[1]-(g.height()-v+40))*0.5;f.left=a[2]+(a[0]-(g.width()+40))*0.5;f.top=Math.max(a[3]+d,f.top);f.left=Math.max(a[2]+d,f.left);g.css(f);h=false};b.fn.fancybox.defaults={padding:10,margin:20,opacity:false,modal:false,cyclic:false,scrolling:"auto",width:560,height:340,autoScale:true,autoDimensions:true,centerOnScroll:false,ajax:{},swf:{wmode:"transparent"},hideOnOverlayClick:true,hideOnContentClick:false,overlayShow:true,overlayOpacity:0.3,overlayColor:"#666",titleShow:true,titlePosition:"outside",titleFormat:null,transitionIn:"fade",transitionOut:"fade",speedIn:300,speedOut:300,changeSpeed:300,changeFade:"fast",easingIn:"swing",easingOut:"swing",showCloseButton:true,showNavArrows:true,enableEscapeButton:true,onStart:null,onCancel:null,onComplete:null,onCleanup:null,onClosed:null};b(document).ready(function(){aa()})})(jQuery); \ No newline at end of file diff --git "a/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/magnify.gif" "b/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/magnify.gif" deleted file mode 100644 index 3233db8..0000000 Binary files "a/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/magnify.gif" and /dev/null differ diff --git "a/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/main.htm" "b/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/main.htm" deleted file mode 100644 index 1721083..0000000 --- "a/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/main.htm" +++ /dev/null @@ -1,2 +0,0 @@ - - \ No newline at end of file diff --git "a/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/mal.css" "b/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/mal.css" deleted file mode 100644 index 935e37b..0000000 --- "a/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/mal.css" +++ /dev/null @@ -1,9 +0,0 @@ -body -{ - margin: 8px 0 0 0; - text-align: center; - font-family: Verdana, Arial; - font-size: 11px; - background-color: #ffffff; - background: transparent; -} \ No newline at end of file diff --git "a/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/mal005" "b/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/mal005" deleted file mode 100644 index a5adddb..0000000 --- "a/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/mal005" +++ /dev/null @@ -1 +0,0 @@ -initIngage({"elementId":"ingageunit","width":640,"height":360,"p_delimiter":0,"freq":1,"useViewabilityForAd":true,"useVolumeForAd":true,"secondsToPlay":0,"adTag":"http:\/\/pubads.g.doubleclick.net\/gampad\/ads?env=vp&gdfp_req=1&impl=s&output=xml_vast2&unviewed_position_start=1&url=[referrer_url]&correlator=[timestamp]&ciu_szs=300x250&sz=13x13&iu=\/4403\/gn.cr.myanimelist.net\/ingage&cust_params=sect%3Dingage","scrLoc":"cdn","ga":{"id":"","label":""}}); \ No newline at end of file diff --git "a/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/myanimelist.css" "b/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/myanimelist.css" deleted file mode 100644 index 511df86..0000000 --- "a/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/myanimelist.css" +++ /dev/null @@ -1,1014 +0,0 @@ -body -{ - margin: 0; - text-align: center; - font-family: Verdana, Arial; - font-size: 11px; - background-color: #ffffff; - background: transparent url(http://cdn.myanimelist.net/images/bgs/mal-bg-4.jpg) no-repeat scroll center top; -} - -#myanimelist -{ - width: 980px; - margin-top: 0; - margin-bottom: 0; - margin-right: auto; - margin-left: auto; - text-align: left; - position: relative; -} - -#header { - height: 156px; - background: transparent url(http://cdn.myanimelist.net/images/bgs/mal-bg-4.jpg) no-repeat scroll center top; -} - -#header a { - text-indent: -5000em; - width: 500px; - height: 156px; - display: block; -} - -#headerSmall { - height: 55px; - background: transparent url(http://cdn.myanimelist.net/images/mal-logo-small.jpg) no-repeat -} - -#headerSmall a { - text-indent: -5000em; - width: 400px; - height: 50px; - display: block; -} - -#menu -{ - height: 34px; - width: 980px; - background-color: #2e51a2; -} - -#menu_left -{ - float: left; - width: 620px; - background: #2e51a2; -} - -#menu_right -{ - height: 34px; - width: 345px; - float: right; - text-align: right; - vertical-align: bottom; - color: #2e51a2; -} - -#contentWrapper { - position: relative; -} - -#roadblock, #homeAds { - padding: 5px; - font-size: 0; - line-height: 0; - position: relative; - text-align: right; - vertical-align: top; -} - -#roadblock { - border-width: 0 1px 0 1px; - border-style: solid; - border-color: #ebebeb; -} - -.to-left { - float: left; -} - -.lightLink.to-left { - padding: 0 10px 0 0; -} - -.hoverinfo -{ - display: none; - position: absolute; - background-image:url(http://cdn.myanimelist.net/images/getinfo_topleft.png); - background-repeat:no-repeat; - width: 392px; - height: 279px; -} - -.hovertitle, .hovertitle a, .hovertitle a:visited, .hovertitle a:hover, .hovertitle a:active -{ - color: #fff !important; - font-size: 12px; - font-weight: bold; -} - -.hoverinfo_ie6 -{ - display: none; - position: absolute; - background-image:url(http://cdn.myanimelist.net/images/getinfo_topleft.gif); - background-repeat:no-repeat; - width: 392px; - height: 279px; -} - -img -{ - border: 0; -} - -td -{ - font-size: 11px; - line-height: 1.5em; -} - -a,a:visited -{ - color: #1d439b; - text-decoration: none; -} - -a:hover -{ - color: #1d439b; - text-decoration: underline; -} - -.link1 -{ - color: #4b751c; - font-weight: bold; -} - -.link2 -{ - color: #6a6a6a; - font-weight: bold; -} - -/** -Nav -*/ - -/* remove the list style */ -#nav { - margin:0; - padding:0; - list-style:none; -} - -#nav li { - float:left; - display:block; - width:100px; - background:#E1E7F5; - position:relative; - z-index: 90; - text-indent: 5px; -} - -/* this is the parent menu */ -#nav li a { - display: block; - padding: 10px 5px 0 5px; - font-size: 13px; - font-weight: bold; - height: 24px; - text-decoration: none; - text-align: left; - color: #ffffff; - background: #2e51a2; -} - -#nav li a:hover, #nav li.hover a { - color: #000000; - background: #E1E7F5; -} - - -/* submenu */ -#nav ul { - position: absolute; - left: 0; - display: none; - padding: 0; - list-style: none; -} - -#nav ul li { - width: 105px; - float: left; -} - -#nav ul a { - font-size: 11px; - background: #E1E7F5; - display: block; - height: 15px; - padding: 8px 5px; - color: #000000; - font-weight: normal; -} - -#nav ul a:hover { - text-decoration: none; - background: #2e51a2; - color: #ffffff; -} - -/** -nav specifics -*/ - -#nav li.tiny { - width: 50px; -} - -#nav li.smaller { - width: 60px; -} - -#nav li.small { - width: 70px; -} - -#nav li.medium { - width: 90px; -} - -#nav li.large { - width: 97px; -} - -#nav .wide li { - width: 110px; -} - -#nav .wider li { - width: 130px; -} - -#nav li a span.count { - color: #aaa; -} - -#nav li span { - margin: 0; - padding: 0; - /* IE crap */ - line-height: 1.2em; -} - -#nav li .edit a { - padding-right: 10px; - font-size: 9px; - float: right; -} - -#nav li .new a { - padding-right: 10px; - font-size: 9px; - float: right; - color: #777; -} - -#nav li .new a:hover { - color: #ffffff; -} - -/* fix ie6 small issue */ -/* we should always avoid using hack like this */ -/* should put it into separate file : ) */ -*html #nav ul { - margin: 0; -} - -/* end nav */ - - -#header_nonav -{ - height: 34px; - width: 100%; - background: #2e51a2 url(http://cdn.myanimelist.net/images/mal-logo.gif) no-repeat top left; -} - -#searchBar { - padding-top: 6px; - padding-right: 5px; -} -#searchBar input[type=image] { - opacity: 0.4; -} -#searchBar input[type=image].ok { - opacity: 1; -} - -#content { - border-width: 0 1px 1px 1px; - border-color: #EBEBEB; - border-style: solid; - padding: 5px 10px 10px 10px; - background-color: #ffffff; - position: relative; -} - -#contentHome { - border-width: 0 1px 1px 1px; - border-color: #EBEBEB; - border-style: solid; - padding: 0 0 10px; - background-color: #ffffff; - position: relative; -} - -#login -{ - padding: 5px; -} - -#rightbody -{ - width: 808px; - font-size: 11px; - float: left; - text-align: left; - background: #ffffff; -} - -/* IE stuff */ -* html #rightbody -{ - text-align: left; - float: right; - clear: both; - overflow: hidden; - background: #ffffff; -} - - -#rightcontent -{ - width: 792px; - font-family: Verdana, Arial; - font-size: 11px; - padding: 7px; - border-left: solid 1px #ebebeb; - border-right: solid 1px #ebebeb; - border-bottom: solid 1px #1d439b; -} - -#rightcontent_nopad -{ - width: 806px; - font-family: Verdana, Arial; - font-size: 11px; - padding-top: 5px; - border-left: solid 1px #ebebeb; - border-right: solid 1px #ebebeb; - border-bottom: solid 1px #1d439b; -} - -#rightcontent_nopadall -{ - width: 806px; - font-family: Verdana, Arial; - font-size: 11px; - padding: 0; - border-left: solid 1px #ebebeb; - border-right: solid 1px #ebebeb; - border-bottom: solid 1px #1d439b; -} - -#rightcontent_largepad -{ - width: 766px; - font-family: Verdana, Arial; - font-size: 11px; - padding: 7px 20px 7px 20px; - border-left: solid 1px #ebebeb; - border-right: solid 1px #ebebeb; - border-bottom: solid 1px #1d439b; -} - -/* MORE IE CRAP */ -* html #rightcontent -{ - width: 792px; -} - -#rightcontentunder -{ - font-family: Verdana, Arial; - font-size: 11px; - padding: 10px; - text-align: center; - background-color: white; -} - -.inputButton -{ - border-style: solid; - border-top-width: 1px; - border-left-width: 1px; - border-bottom-width: 1px; - border-right-width: 1px; - border-top-color: #6c8cd8; - border-left-color: #6c8cd8; - border-bottom-color: #2e51a2; - border-right-color: #2e51a2; - background-color: #4165ba; - color: #FFFFFF; - font-size: 11px; - padding: 1px 3px; - font-family: "lucida grande", tahoma, verdana, arial, sans-serif; -} - -.inputButton.notActive -{ - color: rgba(255,255,255,0.6); -} - -.inputtext -{ - padding: 2px; - border-width: 1px; - border-color: #d8d8d8; - border-width: 1px; - border-style: solid; - font-size: 11px; - font-family: "lucida grande", tahoma, verdana, arial, sans-serif; -} - -.textarea -{ - padding: 2px; - border-width: 1px; - border-color: #d8d8d8; - border-width: 1px; - border-style: solid; - font-size: 11px; - font-family: "lucida grande", tahoma, verdana, arial, sans-serif; -} - - -.light_bg -{ - background-color: #e4f7cd; - border-width: 1px 0px; - border-style: solid; - border-color: #d0e9b1; - padding: 5px; -} - -.normal_header -{ - font-weight: bold; - font-size: 12px; - margin-top: 4px; - margin-bottom: 5px; - border-width: 0px 0px 1px 0px; - border-color: #bebebe; - border-style: solid; - color: #000000; - padding: 3px 0px; -} - -h2 -{ - font-weight: bold; - font-size: 12px; - border-width: 0px 0px 1px 0px; - border-color: #bebebe; - border-style: solid; - color: #000000; - padding: 3px 0px; - margin: 4px 0 5px 0; -} - -h1 -{ - font-family: Verdana, Arial; - text-align: left; - background-color: #e1e7f5; - color: #000000; - font-size: 16px; - font-weight: bold; - border-width: 1px 1px 1px 1px; - border-style: solid; - border-bottom-color: #1d439b; - border-left-color: #ebebeb; - border-right-color: #ebebeb; - border-top-color: #ebebeb; - padding: 5px 9px; - margin: 0; -} - -.goodresult, .successQuery -{ - margin: 10px; - padding: 10px; - text-align: center; - background-color: #e1e7f5; - border-color: #1d439b; - border-width: 2px; - border-style: solid; -} - -.goodresult a:link,.goodresult a:active,.goodresult a:visited -{ - color: #1d439b; -} - -.badresult -{ - margin: 10px; - padding: 10px; - text-align: center; - background-color: #fae3e3; - border-color: #b25959; - border-width: 2px; - border-style: solid; -} - -.badresult a:link,.badresult a:active,.badresult a:visited -{ - color: #b25959; -} - - -.td1 -{ - color: #000000; - border-width: 0px; - border-style: solid; - border-color: #000000; - padding: 3px; - background-color: #EBEBEB; -} - -.td2 -{ - color: #000000; - border-width: 0; - border-style: solid; - border-color: #000000; - padding: 3px; - background-color: #ffffff; -} - -.borderClass -{ - border-style: solid; - border-color: #ebebeb; - border-width: 0 0 1px 0; - padding: 3px; -} - -.borderLight { - border-style: solid; - border-color: #ebebeb; - border-width: 0 0 1px 0; -} - -.borderDark { - border-style: solid; - border-color: #cdcdcd; - border-width: 0 0 1px 0; -} - -/* -New Multi-page Nav -*/ - -#horiznav_nav -{ - padding: 0 8px 4px 8px; - margin-bottom: 8px; - margin-top: 15px; - border-width: 0px 0px 1px 0px; - border-color: #1d439b; - border-style: solid; - line-height: 1.4em; -} - -#horiznav_nav ul -{ - display: inline; - margin-top: 0; - padding-left: 0; - margin-left: 0; - font-family: arial, helvetica, sans-serif; -} - -#horiznav_nav ul li -{ - margin: 0; - padding: 0px; - height: 16px; - display: inline; - background-color: #fff; -} - -#horiznav_nav ul li a -{ - padding: 0.4em; - background-color: #fff; - color: #1d439b; - text-decoration: none; - font-family: Arial, Verdana; - font-weight: normal; -} - -#horiznav_nav ul li a:hover -{ - background-color: #1d439b; - color: #fff; -} - -#horiznav_nav ul li .horiznav_active -{ - background-color: #1d439b; - color: #fff; -} - -#profileRows -{ - margin: 0px; - padding: 10px 0px; -} - -#profileRows a -{ - border-color: #92b0f1; - border-style: solid; - border-width: 0px 0px 1px 0px; - color: #1d439b; - cursor: pointer; - display: block; - margin: 0px; - padding: 2px 3px; - text-decoration: none; -} - - -#profileRows a:hover -{ - text-decoration: none; - color: #ffffff; - margin: 0px; - padding: 2px 3px; - display: block; - background-color: #1d439b; - border-color: #6386d5; - border-style: solid; - border-width: 0px 0px 1px 0px; - text-decoration: none; -} - -.alignCenter -{ - text-align: center; -} - -.profile_leftcell -{ -border-width: 0px 1px 0px 0px; -border-color: #ebebeb; -border-style: solid; -} - -.bgbdrContainer -{ - background-color: #f6f6f6; - border: 1px solid #ebebeb; - padding: 5px; -} - -.bgColor1 -{ - background-color: #f6f6f6; -} - -.bgColor2 -{ - background-color: #ffffff; -} - -.lightLink, .lightLink:link, .lightLink:visited, .lightLink:active -{ - color: #888888; -} - - -.colored_text -{ - color: #1d439b; -} - -.dark_text, .dark_text:hover,.dark_text:visited -{ - color: #444444; - font-weight: bold; -} - - -.dark_text_normal, .dark_text_normal:hover,.dark_text_normal:visited -{ - color: #444444; - font-weight: normal; -} - -.row_highlighted -{ - background-color: #e1e7f5; - border-width: 0 0 1px 0; - border-style: solid; - border-color: #ebebeb; - padding: 5px; -} - -.row_not_highlighted -{ - padding: 5px; - background-color: #ffffff; - border-width: 0 0 1px 0; - border-style: solid; - border-color: #ebebeb; -} - -.rowNoColor -{ - background-color: #ffffff; - padding: 6px 3px; - border-style: solid; - border-color: #ebebeb; - border-width: 0px; -} - -.rowColor1 -{ - background-color: #FCFFF8; - padding: 6px 3px; - border-style: solid; - border-color: #C9E3A7; - border-width: 0px; -} - -.rowColor2 -{ - background-color: #F6FDED; - padding: 6px 3px; - border-style: solid; - border-color: #C9E3A7; - border-width: 0px; -} - -.clearfix:after -{ - content: "."; - display: block; - height: 0; - clear: both; - visibility: hidden; -} - -.clearfix -{ - display: inline; -} - -/* Hides from IE-mac \*/ -* html .clearfix {height: 1%;} -.clearfix {display: block;} -/* End hide from IE-mac */ - -#copyright -{ - padding-top: 6px; - text-align: center; - margin-bottom: 4px; -} - - - -.largeformtext -{ - font-size: 14px; - color: #444444; -} - -.spaceit -{ - margin: 3px 0; - padding: 3px 0; -} - -.spaceit_pad -{ - padding: 3px 0; -} - -.normal_font -{ - font-weight: normal; -} - -div.picSurround img -{ - background-color: #ffffff; - border: 1px solid #bebebe; - padding: 1px; - margin: 0px; - display: block; -} - -div.membersBar -{ - background-color: #708dd3; - color: #fff; - height: 18px; - overflow: hidden; - line-height: 18px; - padding-left: 3px; -} - -div.updatesBar -{ - background-color: #a6bbef; - color: #fff; - height: 18px; - overflow: hidden; - line-height: 18px; - padding-left: 3px; -} - -.space_table td -{ - padding: 2px; -} - -.floatRightHeader -{ - float: right; - font-weight: normal; - font-size: 11px; - padding-right: 2px; -} - -.float_right -{ - float: right; - padding: 0 0 0 3px; -} - -/* add stuff */ - -.adCenter300 { - margin: 7px auto; - width: 300px; -} - -.adRight728 { - float: right; - width: 728px; - margin-right: 4px; -} - -.adCenter728 { - margin: 7px auto; - width: 728px; -} - -.adCenter600 { - margin: 7px auto; - width: 600px; -} - -/* end ad */ - -.draggable_list -{ - list-style: none; - padding: 0; -} - -.draggable_list li -{ - padding: 3px; - margin: 2px 0; -} - -.draggable_list li:hover -{ - padding: 3px; - margin: 2px 0; - background-color:#ebebeb; - cursor: pointer; -} - -.button_add { - padding: 1px 2px 1px 2px; - background-color: #f6f6f6; - border-bottom: 1px solid #ebebeb; - font-size: 9px; -} - -.button_add:hover { - background-color: #1d439b; - color: #ffffff; - text-decoration: none; -} - -.button_form { - padding: 2px 3px; - background-color: #f6f6f6; - border-bottom: 1px solid #ebebeb; -} - -.button_form:hover { - background-color: #1d439b; - color: #ffffff; - text-decoration: none; -} - -.button_edit { - color: #888888; - padding: 1px 2px 1px 2px; - background-color: #f6f6f6; - border-bottom: 1px solid #ebebeb; - font-size: 9px; -} - -.button_edit:hover { - background-color: #999999; - color: #ffffff; - text-decoration: none; -} - -p, .textReadability, span { - line-height: 1.5em; - margin: 0; - padding: 0; -} - -#topSearchText { - width: 180px; - color: #777777; -} - -.ad230 { - position: absolute; - z-index: 1; - min-height: 66px; - min-width: 230px; - z-index: 0; -} - -.ad728 { - position: relative; - display: inline-block; - min-width: 728px; - font-size: 0; - line-height: 0; - z-index: 2; - min-height: 90px; - background-color: white; -} - -.alignCenter { - text-align: center; -} - -.hide { - display: none; -} - -.userimg { - max-width: 100%; -} - -.quotetext, .codetext -{ - margin-top: 5px; - margin-left: 10px; - margin-bottom: 5px; - background-color: #ffffff; - border: 1px solid #ebebeb; - padding: 5px; -} - -.quotetext pre, .codetext pre -{ - margin: 0; -} \ No newline at end of file diff --git "a/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/myanimelist.js" "b/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/myanimelist.js" deleted file mode 100644 index 2960ce8..0000000 --- "a/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/myanimelist.js" +++ /dev/null @@ -1,183 +0,0 @@ -$(document).ready(function(){ - var config = { - sensitivity: 1, - interval: 0, - over: doOpen, - timeout: 0, - out: doClose - }; - - function doOpen() { - $(this).addClass('hover'); - $('ul',this).show(); - } - - function doClose() { - $(this).removeClass('hover'); - $('ul',this).hide(); - } - - $('#nav li').hoverIntent(config); - - $('#malLogin').fancybox({ - 'hideOnContentClick' : false, - 'hideOnOverlayClick' : true, - 'width' : 260, - 'height' : 200, - 'autoScale' : true, - 'autoDimensions' : false, - 'onComplete' : function() { $("#loginUsername").focus(); } - }); - - $('.Lightbox_AddEdit').fancybox({ - 'width' : 990, - 'height' : '85%', - 'autoScale' : true, - 'autoDimensions' : true, - 'transitionIn' : 'none', - 'transitionOut' : 'none', - 'type' : 'iframe' - }); - - $('.Lightbox_Small').fancybox({ - 'width' : 400, - 'height' : 400, - 'autoScale' : true, - 'autoDimensions' : true, - 'transitionIn' : 'none', - 'transitionOut' : 'none', - 'type' : 'iframe' - }); - - $('.Lightbox_Pic').fancybox({ - 'autoScale' : true, - 'autoDimensions' : true, - 'transitionIn' : 'none', - 'transitionOut' : 'none' - }); - - // search bar - $('#topSearchText').focus(function() { - if ($(this).val() == 'Search') { - $(this).val(''); - $(this).css('color','#000000'); - } - }); - - $('#topSearchText').blur(function() { - if ($(this).val() == '') { - $(this).val('Search'); - $(this).css('color','#777777'); - } - }); - - $('#topSearchText').on('keyup', function() { - var tsButton = $('#searchBar input[type=image]'); - if ($(this).val().length>1) { - tsButton.addClass('ok'); - } else { - tsButton.removeClass('ok'); - } - }); - - $('#topSearchValue').on('change', function() { - $('#topSearchText').focus(); - }); - - var search_url_array = []; - search_url_array[0] = '/anime.php?q='; - search_url_array[1] = '/manga.php?q='; - search_url_array[2] = '/character.php?q='; - search_url_array[3] = '/fansub-groups.php?q='; - search_url_array[4] = '/clubs.php?action=find&cn='; - search_url_array[5] = '/users.php?q='; - search_url_array[6] = '/people.php?q='; - - $('form#searchBar').on('submit', function() { - var curText = $('#topSearchText').val(); - var curVal = $('#topSearchValue').val(); - if (curText.length>1 && curText!='Search') { - window.location = search_url_array[curVal]+curText; - } - return false; - }); - - - $('.min2chars').on('keyup', function() { - var objBut = $(this).closest('form').find('input[type=submit]'); - if ($(this).val().length > 1) { - objBut.removeClass('notActive'); - } else { - objBut.addClass('notActive'); - } - - - }); - - - load_img_tags(); - -}); - -function logoutMAL() -{ - $.ajax({ - type: 'POST', - url: '/logout.php', - data: 'logout=1', - success: function() { window.location = '/'; } - }); -} - -function searchShowAdv() -{ - if (document.getElementById("advSearch").style.display == "none") - document.getElementById("advSearch").style.display = "block"; - else - document.getElementById("advSearch").style.display = "none"; -} - -function fav_clicker(iORr,favType,favID) -{ - // add - var iUrl = []; - iUrl[1] = 't=13&aid='; // anime - iUrl[2] = 't=38&mid='; // manga - iUrl[3] = 't=42&cid='; // character - iUrl[4] = 't=47&vaid='; // va - - // remove - var rUrl = []; - rUrl[1] = 't=14&aid='; // anime - rUrl[2] = 't=39&mid='; // manga - rUrl[3] = 't=43&cid='; // character - rUrl[4] = 't=48&vaid='; // va - - var ajaxURL = ''; - if (iORr == 1) // add - ajaxURL = iUrl[favType]; - else - ajaxURL = rUrl[favType]; - - var url = "/includes/ajax.inc.php?s=1&"+ajaxURL+favID; - $.get(url, function(data) - { - document.getElementById("favOutput").innerHTML = data; - } - ); -} - - -function load_img_tags() { - $('img.userimg').each(function() { - var imgObj = $(this); - var imgUrl = $(this).data('src'); - if ($(this).attr('src') == undefined) { - $('', { - src: imgUrl, - error: function() { console.log('Cannot load user image: ' + imgUrl); }, - load: function() { imgObj.attr('src', imgUrl); } - }); - } - }); - } \ No newline at end of file diff --git "a/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/questionmark_23.gif" "b/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/questionmark_23.gif" deleted file mode 100644 index 310f815..0000000 Binary files "a/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/questionmark_23.gif" and /dev/null differ diff --git "a/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/questionmark_50.gif" "b/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/questionmark_50.gif" deleted file mode 100644 index 5567376..0000000 Binary files "a/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/questionmark_50.gif" and /dev/null differ diff --git "a/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/reviews.css" "b/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/reviews.css" deleted file mode 100644 index d079f53..0000000 --- "a/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/reviews.css" +++ /dev/null @@ -1,110 +0,0 @@ -.review_scoreoff -{ - width: 20px; - padding: 3px; - text-align: left; - height: 14px; - font-size: 10px; - font-weight: bold; - background-color: #ebebeb; - color: black; - text-align: center; -} - -.review_scoreon -{ - width: 20px; - padding: 3px; - text-align: left; - height: 14px; - font-size: 10px; - font-weight: bold; - background-color: #1d439b; - color: #ffffff; - text-align: center; - cursor:pointer; -} - -.review_score -{ - font-size: 10px; - text-align: center; -} - -.score_top -{ - border-width: 0px 0px 1px 0px; - border-style: solid; - border-color: #1d439b; - text-align: left; - font-weight: bold; - font-size: 10px; -} - -.review_score_over -{ - text-align: center; - font-size: 16px; - font-weight: bold; - color: #1d439b; -} - -.review_description -{ - font-color: #000; - font-size: 10px; - text-align: center; -} - -.review_box -{ - padding: 1px; -} - -.review_title -{ - font-size: 16px; - font-weight: bold; -} - -.review_content -{ - padding: 5px; -} - - -.review_date -{ - font-size: 9px; - margin: 3px 0px; -} - -.review_helpful_stats -{ - font-size: 9px; - margin: 3px 0px; -} - -.review_surround -{ - margin: 10px 0px; -} - -.review_score_seriespage -{ - - margin: 5px 5px 5px 10px; - float: right; - clear: both; - width: 125px; -} - -.review_helpful_seriespage -{ - margin: 14px 0 0 0 0; -} - -.reviewDetails { - padding-bottom: 5px; - margin-bottom: 5px; -} diff --git "a/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/reviews.js" "b/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/reviews.js" deleted file mode 100644 index 7fbb86e..0000000 --- "a/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/reviews.js" +++ /dev/null @@ -1,8 +0,0 @@ -function voteReview(review_id,value) -{$("#revhelp_output_"+review_id).html("Thanks! One moment please...");$.post("/includes/ajax.inc.php?t=72",{id:review_id,val:value},function(data) -{$("#revhelp_output_"+review_id).html(data);if(value==1) -{var helpful_val=eval($("#rhelp"+review_id).html());$("#rhelp"+review_id).html(helpful_val+1);} -var total_val=eval($("#rtotal"+review_id).html());$("#rtotal"+review_id).html(total_val+1);});} -function reviewToggleText(id) -{if($('#review'+id).css('display')=='inline'){$('#review'+id).hide();$('#reviewToggle'+id).html('read more');} -else{$('#review'+id).show();$('#reviewToggle'+id).html('show less');}} \ No newline at end of file diff --git "a/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/watch_n.gif" "b/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/watch_n.gif" deleted file mode 100644 index 8e59184..0000000 Binary files "a/tests/sources/Lucky\342\230\206Star - MyAnimeList.net_files/watch_n.gif" and /dev/null differ diff --git a/tests/sources/pymal-developr's Profile - MyAnimeList.net.html b/tests/sources/pymal-developr's Profile - MyAnimeList.net.html new file mode 100644 index 0000000..35c08cb --- /dev/null +++ b/tests/sources/pymal-developr's Profile - MyAnimeList.net.html @@ -0,0 +1,550 @@ + + + + pymal-developr's Profile - MyAnimeList.net + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + +
+ +
+
+ +
+
+ + +
+
+

pymal-developr's Profile

+
+ +
+ + + + + +
+
+
+ + +
+ Favorite Anime +
+ + No anime favorites added
+ + +
+
+ Favorite Manga +
+ + No manga favorites added
+ + +
+ +
+ Favorite Characters +
+ No character favorites added
+ + +
+ +
+ Favorite People +
+ No people favorites added
+

+
RSS Feeds
+ + + + + + + + + + + + +
+
+ + + +
+ + + + + +
+
pymal-developr's Details
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Now
Not specified
June 19, 2014
Member
3,203
1,928
+ +
+
Last List Updates
+ + + + + + + + + + + +
+
+
+ +
+
+
+
+ + Lucky☆Star edit +
Re-watching at 24 of 24
+ +
+
+
+ +
+
+
+
+ + Lucky☆Star add +
Reading at 15 of -
+ +
+ +
+
+ + + + + +
+

+ + Anime Stats +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Time (Days)0.4
 
Watching0
 
Completed1
 
On Hold0
 
Dropped0
 
Plan to Watch0
 
Total Entries1
 
+ +
+ Anime compatibility with pymal-developr is: +
+
+
Unknown :(
+ +
+
 %
+
+ +
+

Anime You Share (1)
+
+

+ + Manga Stats +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Time (Days)0.2
 
Reading1
 
Completed0
 
On Hold0
 
Dropped0
 
Plan to Read0
 
Total Entries1
 
+ +
+ Manga compatibility with pymal-developr is: +
+
+
Unknown :(
+ +
+
 %
+
+ +
+

Manga You Share (0)
You do not share any manga with pymal-developr.
+ +
+
+ About pymal-developr +
+ +
+ Nothing yet
+
+ +
+ +
+ +
+ + pymal-developr's Comments +
+ +
+
Displaying 15 of 0 Comments
This user currently has no comments

+ +
Write a Comment
+
+
+
+
+
+ +
+ +
+ +Help     +FAQ     +About     +Contact     +Terms     +Privacy     + AdChoices + + + +
+ +
+ + +
+ + + + + + + + + + + + + + + + + + +
\ No newline at end of file diff --git a/tests/test_account.py b/tests/test_account.py index 5e11591..fc4de55 100644 --- a/tests/test_account.py +++ b/tests/test_account.py @@ -1,11 +1,16 @@ import unittest +from mock import Mock + +import bs4 +from os import path from pymal import account from pymal.account_objects import account_mangas from pymal.account_objects import account_animes from pymal.account_objects import account_friends +from pymal import global_functions -from tests.constants_for_testing import ACCOUNT_TEST_USERNAME, ACCOUNT_TEST_PASSWORD +from tests.constants_for_testing import ACCOUNT_TEST_USERNAME, ACCOUNT_TEST_PASSWORD, SOURCES_DIRECTORY class InitTestCase(unittest.TestCase): @@ -57,24 +62,69 @@ def test_user_id(self): account.Account._unregiter(accnt) -class FunctionsTestCase(unittest.TestCase): +class NoReloadFunctionsTestCase(unittest.TestCase): @classmethod def setUpClass(cls): cls.account = account.Account(ACCOUNT_TEST_USERNAME, ACCOUNT_TEST_PASSWORD) + cls._reload = cls.account.reload + cls.account.reload = Mock(wraps=cls._reload) @classmethod def tearDownClass(cls): + cls.account.reload = cls._reload account.Account._unregiter(cls.account) - def test_reload(self): + def tearDown(self): + self.assertFalse(self.account.reload.called) + + def test_animes(self): self.assertIsInstance(self.account.animes, account_animes.AccountAnimes) + + def test_mangas(self): self.assertIsInstance(self.account.mangas, account_mangas.AccountMangas) + + def test_friends(self): self.assertIsInstance(self.account.friends, account_friends.AccountFriends) def test_username(self): self.assertEqual(self.account.username, ACCOUNT_TEST_USERNAME) +class ReloadFunctionsTestCase(unittest.TestCase): + @classmethod + def setUpClass(cls): + cls.account = account.Account(ACCOUNT_TEST_USERNAME, ACCOUNT_TEST_PASSWORD) + cls._reload = cls.account.reload + + cls.__get_content_wrapper_div = global_functions.get_content_wrapper_div + + with open(path.join(SOURCES_DIRECTORY, "pymal-developr's Profile - MyAnimeList.net.html"), "rb") as f: + data = f.read().decode() + html = bs4.BeautifulSoup(data, "html5lib") + myanimelist_div = html.body.find(name="div", attrs={"id": 'myanimelist'}) + content_wrapper_div = myanimelist_div.find(name="div", attrs={"id": "contentWrapper"}, recursive=False) + + global_functions.get_content_wrapper_div = Mock(return_value=content_wrapper_div) + + cls.account.reload = Mock(wraps=cls._reload) + + @classmethod + def tearDownClass(cls): + cls.account.reload = cls._reload + global_functions.get_content_wrapper_div = cls.__get_content_wrapper_div + account.Account._unregiter(cls.account) + + def tearDown(self): + self.account.reload.assert_called_once_with() + global_functions.get_content_wrapper_div.assert_called_once_with( + self.account._main_profile_url, + global_functions.connect + ) + + def test_image_url(self): + self.assertEqual(self.account.image_url, "pymal-developr%27s%20Profile%20-%20MyAnimeList.net_files/na.gif") + + def main(): unittest.main() diff --git a/tests/test_anime.py b/tests/test_anime.py index 071dec2..9ebe1b7 100644 --- a/tests/test_anime.py +++ b/tests/test_anime.py @@ -15,11 +15,21 @@ SOURCES_DIRECTORY +class FetchWebTestCase(unittest.TestCase): + @classmethod + def setUpClass(cls): + cls.anime = anime.Anime(ANIME_ID) + + def test_fetch_web(self): + self.anime.reload() + class ReloadTestCase(unittest.TestCase): @classmethod def setUpClass(cls): cls.anime = anime.Anime(ANIME_ID) + cls.__reload = cls.anime.reload + cls.anime.reload = Mock(wraps=cls.__reload) cls.__global_functions_get_content_wrapper_div = global_functions.get_content_wrapper_div with open(path.join(SOURCES_DIRECTORY, "Lucky☆Star - MyAnimeList.net.html"), "rb") as f: @@ -34,56 +44,70 @@ def setUpClass(cls): @classmethod def tearDownClass(cls): global_functions.get_content_wrapper_div = cls.__global_functions_get_content_wrapper_div - - def test_id(self): - self.assertEqual(self.anime.id, ANIME_ID) + cls.anime.reload = cls.__reload def test_title(self): self.assertEqual(self.anime.title, 'Lucky☆Star') + print(dir(self.anime.reload)) + self.anime.reload.assert_called_once_with() def test_image_url(self): self.assertEqual(self.anime.image_url, 'Lucky%E2%98%86Star%20-%20MyAnimeList.net_files/15010.jpg') + self.anime.reload.assert_called_once_with() def test_english(self): self.assertEqual(self.anime.english, 'Lucky☆Star') + self.anime.reload.assert_called_once_with() def test_synonyms(self): self.assertEqual(self.anime.synonyms, 'Lucky Star') + self.anime.reload.assert_called_once_with() def test_japanese(self): self.assertEqual(self.anime.japanese, 'らき☆すた') + self.anime.reload.assert_called_once_with() def test_type(self): self.assertEqual(self.anime.type, 'TV') + self.anime.reload.assert_called_once_with() def test_episodes(self): self.assertEqual(self.anime.episodes, 24) # need to take something with no number #self.assertEqual(self.anime.episodes, float('inf')) + self.anime.reload.assert_called_once_with() def test_start_time(self): self.assertEqual(self.anime.start_time, 1175990400) + self.anime.reload.assert_called_once_with() def test_end_time(self): self.assertEqual(self.anime.end_time, 1189987200) + self.anime.reload.assert_called_once_with() def test_rating(self): self.assertEqual(self.anime.rating, 'PG-13 - Teens 13 or older') + self.anime.reload.assert_called_once_with() def test_duration(self): self.assertEqual(self.anime.duration, 24) + self.anime.reload.assert_called_once_with() def test_score(self): self.assertIsInstance(self.anime.score, float) + self.anime.reload.assert_called_once_with() def test_rank(self): self.assertIsInstance(self.anime.rank, int) + self.anime.reload.assert_called_once_with() def test_popularity(self): self.assertIsInstance(self.anime.popularity, int) + self.anime.reload.assert_called_once_with() def test_synopsis(self): self.assertEqual(self.anime.synopsis, "Having fun in school, doing homework \ntogether, cooking and eating, playing videogames, watching anime. All \nthose little things make up the daily life of the anime—and \nchocolate-loving—Izumi Konata and her friends. Sometimes relaxing but \nmore than often simply funny!" + os.linesep) + self.anime.reload.assert_called_once_with() def test_spinoff(self): self.assertIsInstance(self.anime.spin_offs, frozenset) @@ -91,6 +115,7 @@ def test_spinoff(self): for spin_off in self.anime.spin_offs: self.assertIsInstance(spin_off, anime.Anime) self.assertIn(17637, list(self.anime.spin_offs)) + self.anime.reload.assert_called_once_with() def test_adaptations(self): self.assertIsInstance(self.anime.adaptations, frozenset) @@ -99,6 +124,7 @@ def test_adaptations(self): self.assertIsInstance(adaptation, manga.Manga) self.assertIsInstance(adaptation, manga.Manga) self.assertIn(587, list(self.anime.adaptations)) + self.anime.reload.assert_called_once_with() def test_characters(self): self.assertIsInstance(self.anime.characters, frozenset) @@ -106,6 +132,7 @@ def test_characters(self): for character in self.anime.characters: self.assertIsInstance(character, anime.Anime) self.assertIn(3080, list(self.anime.characters)) + self.anime.reload.assert_called_once_with() def test_sequals(self): self.assertIsInstance(self.anime.sequels, frozenset) @@ -113,57 +140,67 @@ def test_sequals(self): for sequal in self.anime.sequels: self.assertIsInstance(sequal, anime.Anime) self.assertIn(4472, list(self.anime.sequels)) + self.anime.reload.assert_called_once_with() def test_prequels(self): self.assertIsInstance(self.anime.prequels, frozenset) self.assertEqual(len(self.anime.prequels), 0) for prequel in self.anime.prequels: self.assertIsInstance(prequel, anime.Anime) + self.anime.reload.assert_called_once_with() def test_alternative_versions(self): self.assertIsInstance(self.anime.alternative_versions, frozenset) self.assertEqual(len(self.anime.alternative_versions), 0) for alternative_version in self.anime.alternative_versions: self.assertIsInstance(alternative_version, anime.Anime) + self.anime.reload.assert_called_once_with() def test_side_story(self): self.assertIsInstance(self.anime.side_stories, frozenset) self.assertEqual(len(self.anime.side_stories), 0) for side_story in self.anime.side_stories: self.assertIsInstance(side_story, anime.Anime) + self.anime.reload.assert_called_once_with() def test_summaries(self): self.assertIsInstance(self.anime.summaries, frozenset) self.assertEqual(len(self.anime.summaries), 0) for summary in self.anime.summaries: self.assertIsInstance(summary, anime.Anime) + self.anime.reload.assert_called_once_with() def test_other(self): self.assertIsInstance(self.anime.others, frozenset) self.assertEqual(len(self.anime.others), 0) for other in self.anime.others: self.assertIsInstance(other, anime.Anime) + self.anime.reload.assert_called_once_with() def test_parent_stories(self): self.assertIsInstance(self.anime.parent_stories, frozenset) self.assertEqual(len(self.anime.parent_stories), 0) for parent_story in self.anime.parent_stories: self.assertIsInstance(parent_story, anime.Anime) + self.anime.reload.assert_called_once_with() def test_alternative_settings(self): self.assertIsInstance(self.anime.alternative_settings, frozenset) self.assertEqual(len(self.anime.alternative_settings), 0) for alternative_setting in self.anime.alternative_settings: self.assertIsInstance(alternative_setting, anime.Anime) + self.anime.reload.assert_called_once_with() def test_full_stories(self): self.assertIsInstance(self.anime.full_stories, frozenset) self.assertEqual(len(self.anime.full_stories), 0) for full_story in self.anime.full_stories: self.assertIsInstance(full_story, anime.Anime) + self.anime.reload.assert_called_once_with() def test_str(self): self.assertEqual(str(self.anime), "") + self.anime.reload.assert_called_once_with() class NoReloadTestCase(unittest.TestCase): @@ -172,36 +209,51 @@ class NoReloadTestCase(unittest.TestCase): def setUpClass(cls): cls.account = account.Account(ACCOUNT_TEST_USERNAME, ACCOUNT_TEST_PASSWORD) cls.anime = list(cls.account.animes)[0] + cls.__reload = cls.anime.reload + cls.anime.reload = Mock(wraps=cls.__reload) + + @classmethod + def tearDownClass(cls): + cls.anime.reload = cls.__reload def test_id(self): self.assertIsInstance(self.anime.id, int) + self.assertFalse(self.anime.reload.called) def test_title(self): self.assertIsInstance(self.anime.english, str) + self.assertFalse(self.anime.reload.called) def test_image_url(self): self.assertIsInstance(self.anime.image_url, str) + self.assertFalse(self.anime.reload.called) def test_synonyms(self): self.assertIsInstance(self.anime.synonyms, str) + self.assertFalse(self.anime.reload.called) def test_type(self): self.assertIsInstance(self.anime.type, str) + self.assertFalse(self.anime.reload.called) def test_episodes(self): try: self.assertIsInstance(self.anime.episodes, int) except AssertionError: self.assertEqual(self.anime.episodes, float('inf')) + self.assertFalse(self.anime.reload.called) def test_start_time(self): self.assertIsInstance(self.anime.start_time, float) + self.assertFalse(self.anime.reload.called) def test_end_time(self): self.assertIsInstance(self.anime.end_time, float) + self.assertFalse(self.anime.reload.called) def test_str(self): repr(self.anime) + self.assertFalse(self.anime.reload.called) @unittest.skip("Delete is not working") def test_add_and_delete(self):