Small Town Witch

[PHP] panel TV

Program telewizyjny w zwartej postaci do umieszczenia w panelu bocznym. Testowany (i mam nadzieję działający) w Operze 10, Firefoksie 3.0, 3.5 oraz Konquerorze 4.2

Demo: Panel TV
Pobierz PanelTV 3.1


Instalacja
  • proszę skopiować pliki do katalogu głównego serwera
  • oraz ustawić prawa do zapisu dla katalogu /tmp
    ~ zaawansowane:
  • pliki kodowane w utf-8 (bez BOM!)
  • jeśli skrypt ma być zainstalowany w podkatalogu trzeba ustawić jego ścieżkę w pliku index.php (stała BASE_URL)
  • domyślnie pobrany program jest cache'owany na serwerze przez godzinę - wartość tę można zmienić
    w pliku /application/config/app.ini; zmienna cache.frontendOptions.lifetime (w sekundach)
  • aby okresowo odświeżać listę kanałów należy nadać prawa do zapisu dla plików
    /application/config/???.php
    oraz ustawić co ile (sekund) ma być odświeżana - zmienne engine.???.channels.lifetime w pliku /application/config/app.ini; wartości ujemne tych zmiennych oznaczają, że lista kanałów nie będzie w ogóle odświeżana


Opcje:
  • opcje zapisywane są w ciasteczkach
  • zmiana źródła z jakiego pobierany jest program spowoduje przeładowanie okna ustawień (z nową listą dostępnych programów)
  • "włącz suwaki" - powoduje włączenie scrollbar'ów panelu; domyślnie są wyłączone a panel można przewijać rolką myszy
  • "włącz cache" - raz pobrany program jest pamiętany przez kilka minut
  • lista programów - ... cdn


Wersja 3.1
  • Drobne poprawki
  • Po zmianach w oknie konfiguracji panel jest automatycznie odświeżany

Wersja 3.0
  • Odświeżone kodowanie i odrobinkę wygląd; porzucone wsparcie dla php4
  • Nowe okienko konfiguracji (jeszcze to poprawię, bo ciągle niezbyt intuicyjnie)
  • Dodany przycisk "Odśwież"
  • Dodane cache'owanie pobranego programu na serwerze oraz mini-cache (5min) po stronie przeglądarki


---------------------------------------------------
Wersja 2.1: panelTV.zip

Wersja 2.1
  • Zamienione <? na <?php w skryptcie (dzięki mgorny)
  • Poprawka: wybór nowego programu/daty zatrzymuje poprzednie pobieranie.

Wersja 2.0
  • Programy posiadające opis są podkreślone
  • Pytanie przy kasowaniu ustawień
  • Dodany parser dla tv.gazeta.pl - można wybrać w opcjach (UWAGA! Wybór programów oraz eksport/import ustawień oddzielnie dla każdego parsera)

Wersja 1.3
  • Sortowanie działa do separatora END. Żeby posortować całą listę trzeba kliknąć na przycisk sortowania z wciśniętym Shift'em.
  • Dodany import/eksport ustawień.

Wersja 1.2
  • Dodane sortowanie programów
  • Dodana możliwość wyłączenia suwaków

Wersja 1.1
  • Skrypt dostosowany do php4

Wersja 1.0
  • Pierwsza działajaca wersja


Pliki wystarczy wypakować i umieścić na serwerze. Uruchamiamy oczywiście plik panelTV.php.
Do działania wymaga: na serwerze php, a w przeglądarce JS i ciastek.

Opcje - kilka podpowiedzi:
  • Opcje przechowywane są w ciasteczkach
  • Przesuwać można całe grupy programów, ale w przypadku przesunięcia o jedną pozycję jest to pierwszy ciągły blok (reszta jest ignorowana)
  • Można dodawać własne separatory do listy programów. Zostają wstawione w miejscu zaznaczenia lub na początku. Separatory o specjalnym znaczeniu: END i ' '(spacja). END kończy całą listę (jeśli wstawimy go w środku, lista będzie krótsza) a spacja kończy poprzedni separator bez otwierania kolejnego.
  • Jak najprościej wybrać swoje programy? Zaznaczyć je z wciśniętym Ctrl (łącznie z END) i wcisnąć "Na początek"
  • Przy włączonym dopasowaniu do szerokości, w panelu trzeba ustawić Widok->Mały ekran
  • Żeby wyeksportować ustawienia trzeba kliknąć przycisk Eksportuj i zapisać plik (można bezpośrednio z Opery).

Dane z pliku można importować na dwa sposoby
  • Jednorazowo, poprzez formularz w opcjach. W tym wypadku wczytane dane są zapamiętywane w ciasteczkach.
  • Żeby wczytywać opcje z pliku przy każdym uruchomieniu panelu, trzeba do adresu dodać ?pathPrefs=adres_url_pliku i pozbyć się opcji zapisanych w ciasteczkach (przycisk Skasuj). Dane wczytane w ten sposób nie są zapamiętywane w ciasteczkach.

Google Images Killer Sudoku Online

Comments

Adam Dziuraadas Friday, February 16, 2007 7:45:54 AM

http://adamdziura.9g.pl/tv/panelTV.php - chyba coś nie działa wink

I jeszcze prośba - ja korzystam z włączonego cały czas Dopasowywania do szerokości. No i pod dodaniu do panelu strona tak się rozjeżdza troszkę wink Jak sobie panele rozszerze to mi się wyświatla już normalnie, ale ta szerokość jest za duża jak dla mnie... czy da się coś z tym zrobić?

Sombria Friday, February 16, 2007 9:15:34 AM

Originally posted by adas:

I jeszcze prośba - ja korzystam z włączonego cały czas Dopasowywania do szerokości. No i pod dodaniu do panelu strona tak się rozjeżdza troszkę Jak sobie panele rozszerze to mi się wyświatla już normalnie, ale ta szerokość jest za duża jak dla mnie... czy da się coś z tym zrobić?

Tak, oczywiście smile Dzięki za informację, już podmieniam plik. Trochę nieelegancko, ale nie chce mi się teraz numerować wersji...

Żeby się nie rozjeżdżało, trzeba włączyć w panelu mały ekran.

Niestety, ten pierwszy problem jest gorszy, bo u mnie działa wink Skrypt zachowywał się tak, jak w trakcie odbierania programu serwer wysyłał jakieś dodatkowe komunikaty. Jeśli mógłbyś odkomentować w pliku panelTV.php linię
	//$sajax_debug_mode = 1;

to zerknę co się dzieje. Możesz też dorzucić (w tym samym katalogu co panelTV.php) plik test.php o treści
<?
header("Content-Type: text/html; charset=iso-8859-2");
include("libs/programTV.php");
$res = programTV($_GET['stacja'], $_GET['dzien']);
echo $res;
?>

Adam Dziuraadas Friday, February 16, 2007 10:08:07 AM

zrobione.

Paweł Ziołozielski Friday, February 16, 2007 11:18:47 AM

Aktualna wersja u mnie działa.

Sombria Friday, February 16, 2007 11:26:02 AM

Originally posted by adas:

zrobione.

Hmm. Użyłam funkcji z php5. Wydawało mi się, że testowałam w php4, ale widocznie coś pokręciłam. Sprawdź teraz, poprawiłam, ale jakby dalej nie działało, to jeszcze raz proszę o debug mode bigsmile

Adam Dziuraadas Friday, February 16, 2007 11:38:21 AM

Dobra... działa smile

Ale teraz nie działa zapisywanie do ciastek - probuje wybrać parę kanałów a po przycisnięciu Zapisz zaznaczane są wszystkie smile

Sombria Friday, February 16, 2007 11:48:38 AM

Originally posted by adas:

Ale teraz nie działa zapisywanie do ciastek - probuje wybrać parę kanałów a po przycisnięciu Zapisz zaznaczane są wszystkie

Ups... Nie napisałam dokładnie jak to się robi rolleyes Skrypt bierze wszystkie po kolei do separatora END (dużymi literami) Kiedy to pisałam, wydawało mi się, że tak będzie wygodniej wink

Adam Dziuraadas Friday, February 16, 2007 4:19:20 PM

Już jarzę o co chodzi wink Ale mnie to nie przekonuje jakoś...

Sombria Wednesday, February 21, 2007 10:45:37 PM

Originally posted by adas:

Ale mnie to nie przekonuje jakoś...

Mnie też nie do końca... Ale zaznaczanie wydawało mi się irytujące, a chciałam to zrobić w miarę prosty sposób, bez dodatkowych pól i przycisków.

Łukaszlukaszgd Saturday, February 24, 2007 7:30:20 PM

bardzo przydatny i dobry panel,dziekuje smile

Michał Górnymgorny Wednesday, March 14, 2007 10:06:27 PM

Ja chciałbym zwrócić uwagę, że stosowanie <? jest ogólnie odradzane, głównie ze względu na konflikt z prologiem XML-owym, i często na serwerach jest wyłączone. A z tego co widzę, to tylko pierwszy blok kodu w skrypcie jest otwierany przez <?php, pozostałe zaś są już <?.

Sombria Thursday, March 15, 2007 5:11:46 PM

Originally posted by mgorny:

Ja chciałbym zwrócić uwagę, że stosowanie <? jest ogólnie odradzane, głównie ze względu na konflikt z prologiem XML-owym, i często na serwerach jest wyłączone. A z tego co widzę, to tylko pierwszy blok kodu w skrypcie jest otwierany przez <?php, pozostałe zaś są już <?.

Dzięki za uwagę. Poprawię.

EDIT: Poprawiłam.

radas Tuesday, April 17, 2007 9:50:35 AM

super sprawa z tym panelem
lecz ja chcialem jeszcze bardziej go spersonalizowac.
robie tak:
wchodzę w engines > i np. gazeta > channels.php
otwiera mi sie edytor html.
zmieniam kolejnosc na taką jak mi się podoba (ctrl+x - ctrl+v)
wszystko zapisuje i calosc wysylam na jakis serwer z obsluga php. np.
http://members.lycos.co.uk/radeksz/panelTV.php
....
dlaczego nie mogą wyswietlić się programy ?
"sloneczko" sie kreci i kreci i kreci .....

Sombria Tuesday, April 17, 2007 10:57:10 AM

Originally posted by radas:

wszystko zapisuje i calosc wysylam na jakis serwer z obsluga php

A przed Twoimi zmianami działało na tym serwerze?

Co do kolejności, to można ją zmienić w opcjach (i ilość wyświetlanych programów). Jeśli jednak chcesz koniecznie zmieniać kolejność w plikach, to:
  1. przy edycji używaj edytora z kodowaniem iso-8859-2
  2. zamieniaj całe linijki
  3. zwróć uwagę na przecinki - powinny wystąpić po każdej linijce oprócz ostatniej

radas Wednesday, April 18, 2007 6:09:35 AM

chyba wszystko wskazuje na to ,że to wina lycosa.
oryginalne pliki tez nie chca sie uruchamiac.
musze poszukac innego hosta.
tylko gdzie ?
;-)

Sombria Wednesday, April 18, 2007 9:15:27 AM

Np tu: http://my.opera.com/community/forums/findpost.pl?id=1936251
Zawsze możesz też używać zainstalowanego przez Pavla (link wyżej)

vbartek Tuesday, June 19, 2007 3:11:31 PM

Witam, czy można jakoś zrobić, aby te Hity dnia wyciągnąć?
Tzn w programie jak jest ustawione na wp.pl to obok takich fajnych filmów jest czerwony wykrzyknik i czy można wyciągnąć te ciekawe filmy i żeby mi działało w osobnym pliku?

Sombria Monday, July 16, 2007 11:15:43 AM

Witam, czy można jakoś zrobić, aby te Hity dnia wyciągnąć?
Tzn w programie jak jest ustawione na wp.pl to obok takich fajnych filmów jest czerwony wykrzyknik i czy można wyciągnąć te ciekawe filmy i żeby mi działało w osobnym pliku?

Przepraszam, nie zauważyłam wcześniej Twojego komentarza. Zawiesiłam dalszy rozwój tego panelu: http://my.opera.com/community/forums/findpost.pl?id=1946444

Ryszard Thursday, April 10, 2008 3:22:04 PM

Na http://www.pawel.i365.pl/paneltv/panelTV.php niedziała. Może chwilowo?
Postawiłem na
http://opera1.ovh.org/panelTV/
Zmieniłem nazwę pliku z "panelTV.php" na index.php żeby się dało używać krótszego adresu. Mam nadzieję, że to nie psuje działania.

Paweł TomaszewskiPavel84 Thursday, April 10, 2008 5:11:43 PM

Na twoim serwerze działa pobieranie programu z serwera wp. Gazeta wyświetla komunikat "Brak programu". Za to na moim serwerze wcale nie działa... :/ Może Gazeta i WP nas specjalnie blokują? smile

Sombria Thursday, April 10, 2008 9:57:27 PM

Skrypt wyglada na działający. Przynajmniej na wp, bo na gazeta chyba im się coś spsuło. Przez stronę też nie działa.

Ryszard, możesz też uaktualnić listę programów (trzeba odpalić engines/generator.php).

Pavel, wrzuć do katalogu głównego skryptu plik test.php, może coś pokaże wink
<?
header("Content-Type: text/html; charset=iso-8859-2");
error_reporting(E_ALL);
include("libs/programTV.php");
$res = programTV($_GET['stacja'], $_GET['dzien']);
echo $res;
?>

Paweł TomaszewskiPavel84 Saturday, April 12, 2008 12:16:02 AM

Nic się nie wyświetla po wywołaniu test.php. smile
Zmieniałem również error_reporting(); w panelTV.php i tak samo nie było żadnych błędów czy ostrzeżeń. Jeszcze przed wrzuceniem test.php na serwer, zaczął u mnie działać program pobierany z gazety. WP nadal leży.

Sombria Saturday, April 12, 2008 9:22:05 AM

no tak, nie ma błędów, bo wetkałam jeszcze to error_eporting do libs/programTV.php i małpki w parserze wink

a gazeta cały czas działała, tylko nie było programu.

WoofeR Saturday, April 12, 2008 2:07:51 PM

1. http://bipp.pl/panelTV.php (zarówno gazeta.pl, jak i wp.pl) działają poprawnie, na serwerze jest php w wersji 5.

2. http://tv.e-ftp.pl/panelTV.php (zarówno gazeta.pl, jak i wp.pl) nie działają w ogóle. Pojawia się "Błąd połaczenia z serwerem", na serwerze również znajduje się php w wersji 5.

1. i 2. to dwa różne serwery. I tutaj pytanie... co może być przyczyną nie funkcjonowania skryptu na drugim serwerze? Czy poza php należy coś jeszcze włączyć dla domeny?

Pozdrawiam,
WoofeR

Sombria Saturday, April 12, 2008 5:01:48 PM

Najprawdopodobniej na drugim serwerze wyłączona jest możliwość pobierania plików zdalnych funkcjami fopen, file itp.

Znacznie ciekawszy jest przypadek wcześniejszy, gdzie jedno działa, drugie nie right

WoofeR Saturday, April 12, 2008 5:19:46 PM

Faktycznie, - dostęp do fopen był wyłączony.

Dzięki za wskazówkę, a zarazem za świetny skrypt smile

Paweł TomaszewskiPavel84 Sunday, April 13, 2008 9:52:33 AM

Teraz coś się dzieje:
Warning: require() [function.require]: Unable to access ../engines/wp/parserTV.php in /home/pawel/public_html/paneltv/libs/programTV.php on line 21

Warning: require(../engines/wp/parserTV.php) [function.require]: failed to open stream: No such file or directory in /home/pawel/public_html/paneltv/libs/programTV.php on line 21

Warning: require() [function.require]: Unable to access ../engines/wp/parserTV.php in /home/pawel/public_html/paneltv/libs/programTV.php on line 21

Warning: require(../engines/wp/parserTV.php) [function.require]: failed to open stream: No such file or directory in /home/pawel/public_html/paneltv/libs/programTV.php on line 21

Fatal error: require() [function.require]: Failed opening required '../engines/wp/parserTV.php' (include_path='.:/usr/lib/php:/usr/local/lib/php') in /home/pawel/public_html/paneltv/libs/programTV.php on line 21

http://pawel.i365.pl/paneltv/test.php
Plik parserTV.php jest na swoim miejscu...

Sombria Sunday, April 13, 2008 11:05:55 AM

o Mój błąd, plik test.php trzeba wrzucić do katalogu libs, i dać w nim include("programTV.php");

Paweł TomaszewskiPavel84 Sunday, April 13, 2008 8:51:09 PM

Notice: Undefined index: stacja in /home/pawel/public_html/paneltv/libs/test.php on line 5

Notice: Undefined index: dzien in /home/pawel/public_html/paneltv/libs/test.php on line 5
Błąd połaczenia z serwerem

sad

Ryszard Wednesday, December 17, 2008 8:15:42 PM

Na http://opera1.ovh.org/panelTV/ działać przestało cry

Wgrałem na http://www.panelTV.site90.net/
z powodu, że serwer jest w innej strefie czasowej wstawiłem linijkę "Czas serwera…" - żeby było widać dlaczego widać tak jak widać.
Jak Sombria zechce podpowiedzieć gdzie wstawić -11 to wstawię,
Przy okazji zaktualizowałem listę kanałów.

[dodane]
http://panelTV.freehost.pl/ - bez problemów czasowych

albatros13 Monday, June 15, 2009 7:59:58 AM

Fajnie, gdybyś dalej rozwijała ten projekt wink

albatros13 Saturday, June 5, 2010 12:54:03 PM

Czy projekt będzie dalej rozwijany?

Sombria Saturday, June 5, 2010 1:30:57 PM

Na razie myślałam tylko o dodaniu zapasowego źródła programu, bo wp odpadło.

albatros13 Saturday, June 5, 2010 1:33:19 PM

Dobre i to wink
Myślałem, że już zapomniałaś o tym blogu wink

albatros13 Saturday, June 5, 2010 3:30:48 PM

Ryszard Tuesday, December 28, 2010 8:33:09 AM

Z powodu http://my.opera.com/polski/forums/findpost.pl?id=8206122 zaktualizowałem pliki.
Na http://paneltv.freehost.pl nie widać nic, na http://paneltv.site90.net komunikat o błędzie.

Write a comment

New comments have been disabled for this post.