diff --git a/INSTALL.md b/INSTALL.md index ba121f3..bff3671 100755 --- a/INSTALL.md +++ b/INSTALL.md @@ -15,8 +15,9 @@ Diese Anleitung geht davon aus das du SSH-Zugriff auf deinen Server hast. Wenn d 3. Abhängigkeiten installieren 1. composer herunterladen ```curl -sS https://getcomposer.org/installer | php``` 2. Installation ausführen: ```php composer.phar install``` + - für PostgreSQL wähl pdo_pgsql als Datenbanktreiber - für MySQL wähle pdo_mysql als Datenbanktreiber - - für SQLite ist pdo_sqlite zu nutzen, dabei ist der Pfad anzugeben. Der Standardpfad legt die Datei ffcal.sqlite3 im Verzeichnis app an. + - für SQLite ist pdo_sqlite zu nutzen, dabei ist der Pfad anzugeben. Der Standardpfad legt die Datei calcifer.sqlite3 im Verzeichnis app an. 5. Dann die Tabellen erstellen: ```php app/console doctrine:schema:update --force``` 6. Cache löschen ```php app/console cache:clear --env=prod --no-debug``` 7. Assets dumpen ```php app/console assetic:dump --env=prod --no-debug``` diff --git a/app/config/parameters.yml.dist b/app/config/parameters.yml.dist old mode 100644 new mode 100755 index 8b735b7..64d8e1c --- a/app/config/parameters.yml.dist +++ b/app/config/parameters.yml.dist @@ -5,7 +5,7 @@ parameters: database_name: symfony database_user: root database_password: ~ - database_path: "%kernel.root_dir%/ffcal.sqlite3" + database_path: "%kernel.root_dir%/calcifer.sqlite3" mailer_transport: smtp mailer_host: 127.0.0.1 diff --git a/composer.json b/composer.json index 3ee53f9..4823ea7 100755 --- a/composer.json +++ b/composer.json @@ -33,7 +33,7 @@ "incenteev/composer-parameter-handler": "~2.0", "jquery/jquery": "1.10.*", "knplabs/knp-markdown-bundle": "~1.3", - "jsvrcek/ics": "dev-master", + "enko/ics": "~0.1", "doctrine/migrations": "dev-master", "doctrine/doctrine-migrations-bundle": "dev-master", "jbroadway/urlify" : "~1.0" diff --git a/src/Hackspace/Bundle/CalciferBundle/Controller/LocationController.php b/src/Hackspace/Bundle/CalciferBundle/Controller/LocationController.php index 3815bfd..631892a 100755 --- a/src/Hackspace/Bundle/CalciferBundle/Controller/LocationController.php +++ b/src/Hackspace/Bundle/CalciferBundle/Controller/LocationController.php @@ -24,7 +24,7 @@ use Jsvrcek\ICS\Model\Relationship\Organizer; use Jsvrcek\ICS\Utility\Formatter; use Jsvrcek\ICS\CalendarStream; use Jsvrcek\ICS\CalendarExport; -use Symfony\Component\Validator\Constraints\DateTime; +use Jsvrcek\ICS\Model\Description\Geo; /** * Location controller. @@ -82,6 +82,18 @@ class LocationController extends Controller if ($entity->enddate instanceof \DateTime) $event->setEnd($entity->enddate); $event->setSummary($entity->summary); + $event->setUrl($entity->url); + if ($entity->location instanceof Location) { + $location = new \Jsvrcek\ICS\Model\Description\Location(); + $location->setName($entity->location->name); + $event->setLocations([$location]); + if (\is_float($entity->location->lon) && \is_float($entity->location->lat)) { + $geo = new Geo(); + $geo->setLatitude($entity->location->lat); + $geo->setLongitude($entity->location->lon); + $event->setGeo($geo); + } + } $event->setDescription($entity->description); $location = new \Jsvrcek\ICS\Model\Description\Location(); $location->setName($entity->getLocation()->name); diff --git a/src/Hackspace/Bundle/CalciferBundle/Controller/TagController.php b/src/Hackspace/Bundle/CalciferBundle/Controller/TagController.php index bcb0a40..dfb63f5 100755 --- a/src/Hackspace/Bundle/CalciferBundle/Controller/TagController.php +++ b/src/Hackspace/Bundle/CalciferBundle/Controller/TagController.php @@ -7,6 +7,7 @@ use Doctrine\ORM\EntityRepository; use Doctrine\ORM\QueryBuilder; use Hackspace\Bundle\CalciferBundle\Entity\Location; use Hackspace\Bundle\CalciferBundle\Entity\Tag; +use Jsvrcek\ICS\Model\Description\Geo; use Symfony\Component\HttpFoundation\Request; use Symfony\Bundle\FrameworkBundle\Controller\Controller; use Sensio\Bundle\FrameworkExtraBundle\Configuration\Method; @@ -79,9 +80,18 @@ class TagController extends Controller $event->setEnd($entity->enddate); $event->setSummary($entity->summary); $event->setDescription($entity->description); - $location = new \Jsvrcek\ICS\Model\Description\Location(); - $location->setName($entity->location->name); - $event->setLocations([$location]); + $event->setUrl($entity->url); + if ($entity->location instanceof Location) { + $location = new \Jsvrcek\ICS\Model\Description\Location(); + $location->setName($entity->location->name); + $event->setLocations([$location]); + if (\is_float($entity->location->lon) && \is_float($entity->location->lat)) { + $geo = new Geo(); + $geo->setLatitude($entity->location->lat); + $geo->setLongitude($entity->location->lon); + $event->setGeo($geo); + } + } $calendar->addEvent($event); } diff --git a/src/Hackspace/Bundle/CalciferBundle/Entity/Location.php b/src/Hackspace/Bundle/CalciferBundle/Entity/Location.php index af10407..afd6feb 100755 --- a/src/Hackspace/Bundle/CalciferBundle/Entity/Location.php +++ b/src/Hackspace/Bundle/CalciferBundle/Entity/Location.php @@ -7,6 +7,10 @@ use Doctrine\ORM\Mapping as ORM; /** * Location * + * @property string $name + * @property float $lon + * @property float $lat + * * @ORM\Table(name="locations") * @ORM\Entity */ diff --git a/src/Hackspace/Bundle/CalciferBundle/Resources/assets/css/main.scss b/src/Hackspace/Bundle/CalciferBundle/Resources/assets/css/main.scss new file mode 100644 index 0000000..b4dd9dd --- /dev/null +++ b/src/Hackspace/Bundle/CalciferBundle/Resources/assets/css/main.scss @@ -0,0 +1,37 @@ +body { + margin: 0; + font-family: 'Roboto', sans-serif; +} + +header { + top: 0; +} + +header .ui.grid > .column, .title.ui.grid > .column { + margin-top: 0; + margin-bottom: 0; +} + +.box h2 { + font-size: 1rem !important; +} + +a .icon { + text-decoration: none; +} + +a, a:hover, a:visited { + color: #000000; +} + +a:hover { + text-decoration: none; +} + +#mission-statement { + overflow: hidden; + + img { + margin-bottom: 0; + } +} \ No newline at end of file diff --git a/src/Hackspace/Bundle/CalciferBundle/Resources/assets/images/logo.png b/src/Hackspace/Bundle/CalciferBundle/Resources/assets/images/logo.png new file mode 100644 index 0000000..a377dab Binary files /dev/null and b/src/Hackspace/Bundle/CalciferBundle/Resources/assets/images/logo.png differ diff --git a/src/Hackspace/Bundle/CalciferBundle/Resources/views/layout.html.twig b/src/Hackspace/Bundle/CalciferBundle/Resources/views/layout.html.twig index 5850fde..5f8f997 100755 --- a/src/Hackspace/Bundle/CalciferBundle/Resources/views/layout.html.twig +++ b/src/Hackspace/Bundle/CalciferBundle/Resources/views/layout.html.twig @@ -5,9 +5,14 @@ {% block title %}Terminverwaltung Calcifer{% endblock %} - - + {% stylesheets filter="compass" + "@CalciferBundle/Resources/assets/css/main.scss" + "css/semantic.scss" + "css/custom.scss" + %} + + {% endstylesheets %} {% block css %} {% endblock %} @@ -17,6 +22,21 @@ {% include "CalciferBundle::navigation.html.twig" %} +
+
+
+ {% image '@CalciferBundle/Resources/assets/images/logo.png' %} + Eine Zeichnung von Calcifer. Gezeichnet von simply-Sylvan (http://simply-sylvan.deviantart.com/art/Calcifer-Purple-176746086) + {% endimage %} +

Calcifer ist ein Daemon aus dem Anime „Das wandelnde Schloss“, der sich darum kümmert das sich Howls Schloss weiter bewegt. Diese Terminverwaltung soll dafür sorgen das sich der Hackspace Jena auch weiter bewegt und viele tolle Termine statfinden.

+
+
+
+
{% block body %}{% endblock %}
diff --git a/web/css/custom.css b/web/css/custom.css deleted file mode 100755 index eeefcc3..0000000 --- a/web/css/custom.css +++ /dev/null @@ -1,33 +0,0 @@ -body { - margin: 0; - font-family: 'Roboto', sans-serif; -} - -header { - top: 0; -} - -header .ui.grid > .column, .title.ui.grid > .column { - margin-top: 0; - margin-bottom: 0; -} - -.box h2 { - font-size: 1rem !important; -} - -#main { - margin-top: 4rem; -} - -a .icon { - text-decoration: none; -} - -a, a:hover, a:visited { - color: #000000; -} - -a:hover { - text-decoration: none; -} \ No newline at end of file diff --git a/web/css/custom.scss b/web/css/custom.scss new file mode 100644 index 0000000..e69de29 diff --git a/web/css/semantic.css b/web/css/semantic.scss old mode 100755 new mode 100644 similarity index 100% rename from web/css/semantic.css rename to web/css/semantic.scss diff --git a/web/favicon.ico b/web/favicon.ico deleted file mode 100644 index 8648036..0000000 Binary files a/web/favicon.ico and /dev/null differ diff --git a/web/favicon.png b/web/favicon.png new file mode 100644 index 0000000..be99b5e Binary files /dev/null and b/web/favicon.png differ