poniedziałek, 27 maja 2013

BobTV API dla Twojej telewizji online.

BobTV.pl telewizja online, wypuściła API dzięki, której możesz zamieścić jej kanały na swojej stronie. Wystarczy wstawić iFrame o wysokości 550px i szerokości 100% a następnie w adresie umieścić prawidłowy link.

<iframe src="http://bobtv.pl/{NAZWA KANAŁU}.embed" height="550px" width="100%" frameborder="0"></iframe>

dostępne {NAZWA KANAŁU}:
dla-dzieci
akcja
nowe-filmy
stare-filmy
muzyka
comedy
horror
dramat
dokument
scifi-fantasy

Jeśli chcesz swoim użytkownikom włączać kanał domyślnie w rozdzielczości HD za nazwą kanału dopisz hd.embed

przetestuj te kody:

  • wszystkie:
    <iframe src="http://bobtv.pl/.embed" height="550px" width="100%" frameborder="0"></iframe>


  • wszystkie w hd:
    <iframe src="http://bobtv.pl/hd.embed" height="550px" width="100%" frameborder="0"></iframe>

piątek, 17 maja 2013

Google Analytics Tracking z Ajax

Tworzymy funkcję tracker. Wcześniej prosze pamietać o dodaniu kodu śledzenia od Google Analytics zaraz po znaczniku <body>.


tracker = function() {
            if (typeof ga === 'function') {
var location = window.location.protocol +
'//' + window.location.hostname +
window.location.pathname +
window.location.search + window.location.hash;
                return ga && ga('send', 'pageview', {
                    // window.location.pathname + window.location.search + window.location.hash
                    page: decodeURI(location),
title: document.title
                });
            }
   }


następnie gdy adres się zmienia w JavaScript wywołujemy funkcję tracker();

 $.address.change(function(event) {
    tracker();
}


Korzystam z biblioteki https://github.com/laukstein/ajax-seo

Efekt końcowy.



sobota, 11 maja 2013

Muzyka w tle Twojej strony (Legalnie)

Dzisiaj zastanowiłem się jak wrzucić muzykę do swojej strony w tle tak aby wszystko odbyło się legalnie.

Nic prostszego. Wystarczy...


  1. Szukamy piosenki na YouTube, klikamy umieść. Znajdujemy taki oto kod.

  2. <iframe width="560" height="315" src="http://www.youtube.com/embed/JaAWdljhD5o" frameborder="0" allowfullscreen></iframe>
  3. Edytujemy width i height na 0.
  4. Do src doklejamy ?autoplay=1&loop=10 co oznacza
  5. autoplay - włącz automatycznie
    loop - powtórz X razy. W naszym przypadku 10.

    VIOLA.
    Zobacz tutaj jak to działa. 

niedziela, 21 kwietnia 2013

Wyszukiwanie Głosowe HTML 5

Wyszukiwanie Głosowe - Przyuważone w nowej wersji Allegro.pl. Muszę przyznać, chłopaki sprostali najnowszym standardom i stronę mają na czasie. Wcześniej widziałem to na swoim telefonie w przeglądarce Chrome, muszę przyznać, że dość długo się tym bawiłem. Szybciutko przeniosłem ten mini bajer na swoją stronę. Zmiana jest elegancko obsługiwana przez przeglądarkę. Testowane na IE, Mozilla i Opera. Niestety działa tylko w chrome.


<input id="sitebar_search_header" type="text" class="search search_input" name="s" tabindex="1" placeholder="Szukaj" autocomplete="off" x-webkit-speech>

Step by Step?
  1. Do pola input dodajemy atrybut x-webkit-speech 
  2. Cieszymy się wyszukiwaniem głosowym.
Jeśli macie jakieś newsy, jak uruchomić to w innych przeglądarkach to puszczajcie w komentarzach. Poniżej zamieszczam wizualizacje. 

Klikamy w mikrofon i mówimy.
Widget wkleja wypowiedziany tekst w pole input.


sobota, 20 kwietnia 2013

Geolokalizacja w JavaScirpt

Natknąłem się niedawno na problem Geolokalizacji użytkownika odwiedzającego stronę iPtak.pl. Część linków, które umieściłem mogły działać jedynie dla widzów z Polski. Nie chciałem zaprzęgać do tego kodów PHP ponieważ zmniejszyły by wydajność dlatego postanowiłem znaleźć rozwiązanie z poziomu Java Script. Nie mógłbym tego zrobić gdyby bardzo zależało mi na zablokowaniu tej zawartości.


Wystarczy w sekcji head dodać gotowy skrypt lokalizujący
<script language="JavaScript" src="http://j.maxmind.com/app/geoip.js"></script>

A do naszej dyspozycji pojawiają się następujące funkcje:

geoip_country_code(); //zwraca kod państwa 
geoip_country_name(); //zwraca nazwę państwa 
geoip_city(); //zwraca nazwę miasta 
geoip_region(); //zwraca region 
geoip_region_name(); //zwraca nazwę regionu (województwa) 
geoip_latitude(); //zwraca współrzędną szerokości geograficznej 
geoip_longitude(); //zwraca współrzędną długości geograficznej 
geoip_postal_code(); //zwraca kod pocztowy



Teraz wystarczy już tylko przed znacznikiem </body> dodać kilka linijek kodu

if( geoip_country_name() != "Poland"){ alert('Treść strony w twojej lokalizacji '+
geoip_country_name() +'
jest niedostępna. ');
}


geoip_city, region, postal_code... Tych zmiennych nie można traktować poważnie.




piątek, 19 kwietnia 2013

Tylko Całe Filmy w serwisie iPtak


Całe Filmy Online i bez limitu znajdziesz tylko na iPtak.pl. Strona internetowa powstała rok temu, zaraz po wprowadzeniu przez YouTube możliwości wrzucania całych filmów. Wiatrem w żagle okazał się upadek MegaVideo, ponieważ zanotowaliśmy wtedy olbrzymi wzrost oglądalności. Dzisiaj, strona iPtak.pl jest największym katalogiem filmów YouTube w Polsce. Codziennie aktualizujemy naszą zawartość i usuwamy nie działające filmy tak aby uzyskać najwyższą jakość usługi.  Nasz facebookowy fanpage z dnia na dzień staje się coraz większy. Zapraszam do wejścia i polubienia :)

Jeśli macie jakieś propozycje na nowe funkcjonalności, zapraszam do udzielania się w komentarzach.

piątek, 12 kwietnia 2013

Zapisywanie plików cookie

Natknąłem się niedawno na problem z zapisywaniem plików cookie. Zapisywały się pięknie tylko, że na konkretniej podstronie, a nie dla głównej domeny. Teraz, dzięki ustawieniu path na główną domenę, plik cookie jest dostępny z poziomu każdej podstrony. Jeśli ktoś potrzebuje innego poziomu, zachęcam do zabawy z wartością path.

Dodam, że warto ustawić przekierowanie np z www. na bez  www, tak aby pliki cookie się nie różniły. Jest to bardzo częsty błąd i prowadzi do niespójności danych w ciasteczka.



function setCookie(cname, cvalue) {
var waznosc = new Date()
waznosc.setMonth(waznosc.getMonth()+6) //ustawiamy czas na 6 miesięcy do przodu
cexpire = waznosc;

document.cookie = cname + '=' + escape(cvalue) +
(typeof cexpire == 'date' ? 'expires=' + cexpire.toGMTString() : '') +
';path=/;domain=.adresTwojejDomeny.pl';
}