Candle je webová aplikácia umožňujúca prezerať si rozvrhy a zostaviť si ich personalizované verzie, čo sa hodí napríklad keď si študent zapíše predmety, ktoré nie sú v rozvrhu krúžku. Aplikácia tiež zobrazuje ďaľšie užitočné informácie ako aktuálne prebiehajúcu výučbu alebo voľné miestnosti.
Produkčná inštancia prevádzkovaná študentským vývojovým tímom sa nachádza na adrese https://candle.fmph.uniba.sk/
Candle závisí na niekoľkých projektoch:
- Aplikácia je postavená na Symfony 1.4 - http://symfony.com/legacy
- Candle závisí na MySQL, pretože používa natívne SQL príkazy špecifické pre túto DB
- Candle používa iCalcreator na výstup do iCalendar formátu
-
Vyklonujte si Candle na svoj počítač:
git clone https://github.com/fmfi-svt/candle.git
-
Ak ešte nemáte, nainštalujte si mysql-server, PHP a php5-mysql
-
Vytvorte si pre Candle databázu:
create database candle charset utf8 collate utf8_general_ci; create user candle@localhost identified by 'TajneHeslo'; grant all on candle.* to candle@localhost;
-
Nastavte databázové pripojenie v Candle:
- Skopírujte
config/databases.example.yml
doconfig/databases.yml
- Upravte
config/databases.yml
aby sedeli údaje použité pri vytváraní databázy
- Skopírujte
-
Skontrolujte aplikačné parametre Candle v súbore
apps/frontend/config/app.yml
-
Vytvorte štruktúru databázy:
./symfony doctrine:insert-sql
-
Spustite vývojársky server v PHP:
cd web/ php -S localhost:8080
Aplikácia by mala na už bežať na http://localhost:8080. Keďže na prihlasovanie sa bežne používa CoSign, cez PHP server nefunguje prihlasovanie. Avšak na testovanie postačí, ak na začiatku súboru
web/index.php
nastavíteREMOTE_USER
(ktorý je inak nastavovaný z CoSign modulu v Apachi)<?php $_SERVER['REMOTE_USER'] = 'sucha14'; // zvysok suboru...
-
Naimportujte si rozvrhové dáta z XML súboru (napíšte nám ak žiaden ešte nemáte):
./symfony candle:import /cesta/k/suboru.xml
Podobne ako vývojársku inštanciu, len sa použije namiesto php -S
Apache + suphp + mod_cosign.
Tiež treba nastaviť session_name
+ ukladanie sessions do DB v súbore apps/frontend/config/factories.yml
Postup je rovnaký ako pri prvkom importe. Aktualizovaný rozvrh importujte pomocou príkazu:
./symfony candle:import /cesta/k/suboru.xml
Pred importom odporúčame zálohovať databázu. Pomocou prepínača --dry-run
si najskôr môžete overiť či celý proces zbehne bez chýb.