From d46f8bde08bf9e513e1b68c7fbc1ead79dc9419a Mon Sep 17 00:00:00 2001 From: Jan Richter Date: Sat, 23 Aug 2014 23:00:10 +0200 Subject: [PATCH] added search for exact match and found subs highlighting --- TODO.md | 8 +++++++- content.js | 56 ++++++++++++++++++++++++++++++++++++++++++++++++--- cstyle.css | 26 +++++++++++++++++++++++- manifest.json | 2 +- 4 files changed, 86 insertions(+), 6 deletions(-) diff --git a/TODO.md b/TODO.md index caff2f6..b5c7137 100644 --- a/TODO.md +++ b/TODO.md @@ -1,7 +1,13 @@ +Zbývá udělat: - v pozadavcich ciselne hodnoceni z CSFD a IMDB misto textu, klikaci odkazy na dane weby +- vypsat existenci (ano/ne) anglickych titulek k filmu z subtitleseeker api? +- vytvořit vlastní API wrapper +- pouzit CSFDapi v2 pro overeni nalezeni spravneho filmu dle IMDB + +Hotovo: - u CSFD hodnoceni barevne odlisit pozadi (modre/cervene 70%+) - pridat hodnoceni a odkazy do vypisu konkretniho filmu -- vypsat existenci (ano/ne) anglickych titulek k filmu z subtitleseekr api? + *IMDB api http://www.omdbapi.com/ *CSFD api http://csfdapi.cz/ \ No newline at end of file diff --git a/content.js b/content.js index 4ff8cb4..dec7928 100644 --- a/content.js +++ b/content.js @@ -13,7 +13,6 @@ function searchMovieCsfd (title,year) { makeMagicCsfd(data["rating"],data["csfd_url"]); }); } - }); } @@ -49,7 +48,22 @@ function makeMagicImdb (rating) { } $(document).ready(function() { - $("a[href$='Logoff=true']").closest("table").after("Nový překlad"); + + // kdokoliv je prihlasen, odkaz na vytvoreni noveho prekladu + $("a[href$='Logoff=true']").closest("table").after("Nový překlad"); + + // pouze prihlaseni + if ($("a[href$='Logoff=true']").length) + { + $("#search_submit").after("Vyhledat přesně"); + $(".plus-search").click(function(event){ + window.location.href ="http://www.titulky.com/index.php?Searching=AdvancedResult&AFulltext=&ARelease=&ARok=&ANazev="+$("#searchTitulky").val(); + return false; + }); + $("#tablesearch").css("margin-bottom","20px"); + } + + // sekce pozadavky if (location.href.indexOf("Stat=6") !== -1) { $(".detailh:first").text("Poslední").attr("width",70); @@ -66,14 +80,50 @@ $(document).ready(function() { }); } + // detail titulku if ($("h1").length && $("a[target='imdb']").length) { var titleArray = $("h1").text().split(" ("), title = titleArray[0], - spaceTitle = title.replace(new RegExp(" ", 'g'), "+"), + spaceTitle = title.replace(new RegExp(" ", 'g'), "+").replace("&",""), year = titleArray[1].substring(0,4), imdb = $("a[target='imdb']").attr("href").split("title/")[1].slice(0,-1); + + // pouze prihlaseni + if ($("a[href$='Logoff=true']").length) + { + //odkaz pro prime vyhledani dalsich verzi, pouze prihlase premium, zadny fulltext + $("a[href^='index.php?Fulltext']").after("Další přesné verze"); + } + searchMovieCsfd(spaceTitle,year); searchMovieImdb(imdb); } + + // vysledky vyhledavani + if (location.href.indexOf("Fulltext") !== -1) + { + var search = $("#searchTitulky").val().toLowerCase(); + if (search.length) + { + $.get("http://www.omdbapi.com/?s="+search,function(data) { + data = JSON.parse(data); + if (typeof data.Search !== "undefined") + { + var year = data["Search"][0]["Year"]; + } + $(".soupis td:nth-child(1)").slice(1).filter(function() { + return $(this).text().trim().toLowerCase().replace(new RegExp(/ s\d{2}e\d{2}.*/), "") == search; + }).closest("tr").addClass("plus-topped")/*.insertBefore($(".soupis tr:nth-child(2)"))*/; + $(".plus-topped:first").attr("id","titulek").attr("name","titulek"); + window.location.hash="titulek"; + }); + } + } + + // vyhledavej vzdy naprimo, bez fulltextu + /*$("form[name='searchformsub']").submit(function(event){ + window.location.href = "http://www.titulky.com/index.php?Searching=AdvancedResult&AFulltext=&ARelease=&ARok=&ANazev="+$("#searchTitulky").val(); + return false; + });*/ }); \ No newline at end of file diff --git a/cstyle.css b/cstyle.css index b82ebf4..f303c50 100644 --- a/cstyle.css +++ b/cstyle.css @@ -50,4 +50,28 @@ .plus-rating-black { background: #535353; -} \ No newline at end of file +} + +.plus-version { + margin-left: 10px; +} + +.plus-topped.r1 td { + background: rgba(255,0,0,.2) !important; +} + +.plus-topped.r td { + background: rgba(255,0,0,.1) !important; +} + +.plus-search { + box-sizing: border-box; + position: absolute; + width: 298px; + left: 0px; + top: 205px; + -webkit-border-radius: 0 0 4px 4px !important; + border-radius: 0 0 4px 4px !important; + border: 1px solid #C1C1C1 !important; + border-top:none !important; +} diff --git a/manifest.json b/manifest.json index d7f3696..63c69a3 100644 --- a/manifest.json +++ b/manifest.json @@ -1,7 +1,7 @@ { "name": "Titulky plus", "author": "Jan Richter aka richja", - "version": "0.0.1", + "version": "0.3", "description": "Vylepšení webu titulky.com pro pohodlnější práci", "manifest_version": 2, "icons": {