stworzenie takiego projektu za pomocą CMS i jakiejś wtyczki,
A wiesz, co to za wtyczka? Jeśli masz jakieś konkretne namiary to podaj link - może ktoś będzie miał coś o niej do powiedzenia. Ja nie kojarzę żadnej, aczkolwiek to nie oznacza, że takiego czegoś nie ma.
(chyba, że CMS faktycznie jest leszy do tego?)
Moim zdaniem nie - CMS'y raczej się sprawdzają do typowych zastosowań - typu strona, blog, elementy interaktywne typu formularz z zapytaniem itp. Natomiast system rezerwacji miejsc w kinie jest już o wiele bardziej skomplikowanym narzędziem.
WAŻNE!!!
Pamiętaj, że system nie ogranicza się do narysowania siatki foteli, na które możesz sobie kliknąć. Musisz to wszystko mieć spięte z systemem w kinie - żeby pani w okienku nie sprzedała tego samego biletu, który właśnie ktoś kupił online (oraz oczywiście analogicznie w drugą stronę). Musisz pamiętać, że masz kilka seansów w ciągu dnia, a dla każdego masz inne rezerwacje. Musisz jakoś ogarnąć temat płatności oraz wiele innych tematów. Oczywiście - nie wiem, jaki stopień "profesjonalizmu" jest Ci potrzebny, bo jak sam piszesz - robisz to w ramach zaliczenia. W każdym razie - robienie tego w oparciu o CMS jest raczej czymś kosmicznym. Widzę jedynie dwie opcje - albo znalezienie jakiegoś gotowego dedykowanego produktu, albo napisanie samodzielnie. Ponieważ ma to być praca na zaliczenie - czyli gotowiec odpada, w związku z czym zostaje opcja robienia tego samemu :P
Back-end na razie zostawię,
Jak napisałem w komentarzu do poprzedniego punktu - bez tego nie ma opcji, żebyś ogarnął ten temat. Oczywiście - sama tabelka z klikalnymi fotelami może całościowo działać po stronie klienta, ale będzie to jedynie atrapa, która poza fajnym wyglądem nie będzie miała możliwości realnego działania. Bez back-endu nawet nie będziesz w stanie wyświetlić aktualnego stanu zajętych miejsc, nie wspominając o całej reszcie. Pojawia się odwieczne pytanie - co najpierw: back czy front. Tutaj szczerze mówiąc nie wiem, co Ci poradzić, więc rób i ucz się tego, w czym się lepiej czujesz na początek ;)
stworzenie tabeli w której komórki odpowiadają siedzeniom
stworzenie kontenera, z dużą ilością divow każdy div to jedno siedzenie
(Tylko tutaj nie wiem, jak zmieniać te kolory: hover byłby przydatny?
To jest kwestia techniczna. Ja bym to zrobił (aczkolwiek nie jest to pewnie rozwiązanie idealne, ale tak na szybko mi się pojawił taki pomysł) jednego dużego diva o stałych wymiarach (chociaż można się pokusić o jakieś skalowanie - tylko po co?), który będzie reprezentować cała salę. W nim umieścić mniejsze divy - kazdy reprezentujący jeden rząd. A w rzędach powkładać małe kwadratowe divy z fotelikami. W ten sposób możesz łatwo operować zarówno całymi rzędami, jak i pojedynczymi fotelikami.
Co do zmiany kolorów - tak, najprościej hover, aczkolwiek to samo można tez przez JS uzyskać (od JavaScript i tak nie uciekniesz przy tym projekcie).
W tle diva - fotelika można wstawić jakąś grafikę z rysunkiem fotela - będzie to wyglądać ładniej, niż kwadracik.
W ogóle na razie radzę Ci - poćwicz sobie najpierw zachowanie tego fotela na pojedynczym divie, popracuj nad hover oraz obsługą kliknięć.
Jeszcze w temacie skalowania tudzież stałej szerokości - zastanów się, kto i jak ma z tego korzystać. Bo jeśli chcesz także, żeby ludzie mieli możliwość dostępu z komórek - dodanie jakiegoś dopasowania do rozmiarów przeglądarki byłoby wskazane.
coś takiego jak onClick() zastąpione teraz metodą addEventListener()
Zasadniczo chodzi o to samo - tworzysz jakąś funkcję, która coś zrobi w momencie wystąpienia danego zdarzenia - np. kliknięcia. To, co napisałeś to jedynie inny sposób podpięcia funkcji do zdarzenia, nie ma większego znaczenia jak to zrobisz. Prawdziwa zabawa/problem/trudność/wyzwanie nie polega na onclick/addEventListener
, ale na stworzeniu funkcji, która zostanie wywołana i wykona całą zamierzoną pracę
do js jest ten framework jquery, ale to chyba zbyt zaawansowane dla mnie
jQuery nie jest frameworkiem, ale biblioteką ułatwiającą korzystanie z JS. Nie jest to żadna czarna magia, jej ogarnięcie nie jest dużo trudniejsze od pisania w czystym JS, ale za to jak trochę to liźniesz to zauważysz, że wiele rzeczy można zrobić o wiele szybciej/prościej z jQuery, niż bez niej ;)
Inna sprawa, że za bardzo nie widzę powodu, żebyś wprowadzał jQuery - ona głównie przydaje się przy animacjach/przejściach i innych efektach graficznych, ale w Twoim projekcie za bardzo takich gadżetów nie widzę. Na razie skup się na podstawach, a potem zawsze będziesz mógł dodać inne elementy.