GithubHelp home page GithubHelp logo

jweiland-net / events2 Goto Github PK

View Code? Open in Web Editor NEW
18.0 8.0 16.0 5.41 MB

With this TYPO3 extension you can organize one, multiple and recurring events.

License: GNU General Public License v2.0

PHP 82.94% HTML 6.71% JavaScript 8.39% CSS 0.77% Shell 1.18%
typo3 typo3-cms-extension events2

events2's Introduction

TYPO3 Extension events2

Latest Stable Version TYPO3 12.4 License Total Downloads Monthly Downloads Build Status

Events2 is an extension for TYPO3 CMS. It shows you a list of event entries incl. detail view.

1 Features

  • Create events of different types
    • Single: An event for just one day
    • Duration: Useful for holiday/travel like 21.09 - 29.09.2020
    • Recurring: Create events like 1st and 3rd Monday and Wednesday a month
  • You can add/remove days from calculated recurring events
  • Create multiple time records for one day
  • Create different time records for individual weekdays
  • Supports EXT:maps2 to show event location on Google Maps

2 Usage

2.1 Installation

Installation using Composer

The recommended way to install the extension is using Composer.

Run the following command within your Composer based TYPO3 project:

composer require jweiland/events2

Installation as extension from TYPO3 Extension Repository (TER)

Download and install events2 with the extension manager module.

2.2 Minimal setup

  1. Include the static TypoScript of the extension.
  2. Create event2 records on a sysfolder.
  3. Create a plugin on a page and select at least the sysfolder as startingpoint.

events2's People

Contributors

cnmarco avatar drprofesq avatar froemken avatar georgringer avatar hloens avatar hojalatheef avatar pascal20997 avatar philippkuhlmay avatar sfroemkenjw avatar svenjuergens avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

events2's Issues

search does't work

TYPO3 8.7.19
events 2.3.0

in the constant editor i have determined the necessary PIDS.

on my search page i have chosen the search plugin.

But i do not get a result.
Not even "Heute keine Veranstaltungen."
Only the search page is loaded again.

What is wrong here? Must i have a list view somewhere?

Events outside of Germany

Hi @froemken,
it is not possible to add events in countries other than Germany due to a hard coded string at the end of the $address array (/Classes/Hooks/CreateMap.php:125). When I wanna add a location in e.g Austria and use maps2 with the Google Maps GeoCode API I always get an error that the address isn't found because it always adds "Deutschland" to the query.

It should be possible to fill out the country as well as street, zip etc. If it is then not filled the Google Maps GeoCode API will find the best match.

Thanks!

Update von 1.4.1 nach 2.0 bzw. 2.1

Ich habe Events2 1.4.1 unter TYPO3 7.6.27 laufen. Nach einem Update über den Extension-Manager aus 2.0, dem erfolgreichen ausführen des Aktualisierungsscriptes im Extension-Manager und dem erneuten einbinden des Templates wird im Frontend nur der Hinweis angezeigt "Heute keine Veranstaltungen"!
In den Settings wurden alle Einstellungen der Version 1.4.1 übernommen. Habe das Ganze jetzt mehrmals durchgespielt und bin mit meinem Latein am Ende. Irgendein Tipp woran es liegen könnte?

Copying an event. no day records

While copying an event in BE no day records were created. So event is not visible in FE. You have to save the translated event again to re-create the day records.

null object returned on findByIdentifier in EventController showAction

Hi there,

I'm having an issue with the latest version of the extension that I'm having a hard time figuring out.

Whenever the showAction is called within the EventController, specifically when the event object is trying to be retrieved from the reposiotry

$eventObject = $this->eventRepository->findByIdentifier($event);

the object is always returned as null.

Here the exception:

Uncaught TYPO3 Exception

Argument 1 passed to JWeiland\Events2\Domain\Repository\DayRepository::getNextDayForEvent() must be an instance of JWeiland\Events2\Domain\Model\Event, null given.

Interestingly, if I create my own repository method that, something like findByEventId() and just pass the $event variable I can retrieve the entry, this however being a generic query results object.

I've naturally already looked into any misconfigurations in the storage PID, but everything seem correct there.

I would really appreciate your help on this matter.

Best Regards

Recurring events

What I want is a recurring event every friday and saturday in a range of some weeks.

When I set up a recurring event (range about some weeks) and set „no repeat every x weeks, use setting above“ and set „weekday“ to friday and saturday, no event appears.

My fault or a bug?

Location view: JavaScript error

I get the following JavaScript error if the location map should be shown and no location page is set:
Cannot read property 'localization' of undefined

In Events2.js you retrieve the jsVariables from an element having the ID "events2DataElement". This element does not exist if the location map is shown. Therefore the code on line 26 fails (and this is only the first occurence).

I worked around this by showing the map on another page and don't include the JS there. But in my opinion this should be addressed.

PHP-Error - Event without location

Hallo,
ein Event ohne Veranstaltungsort verursacht in der Detailansicht einen Fehler:
Fatal error: Call to a member function getLocation() on null in /typo3conf/ext/events2/Classes/ViewHelpers/Widget/Controller/ICalendarController.php on line 183

Time format

hi,
it seems that at the moment you can only use the time format hh:mm. It would be nice if you could change this yourself. eg "10 - 11 Uhr" or 10.15 - 13.45 Uhr"

Veranstaltung mit unterschiedlichen Orten

Da es Künstler/Veranstaltungen gibt, die das Programm an mehreren Orten spielen, wäre es praktisch, wenn nicht nur abweichende Termine/Uhrzeit, sondern auch Orte abweichen können.
So muss ich für jeden Ort eine neue Veranstaltung anlegen.

Vielleicht ist einmal eine entsprechende Anpassung möglich.

Dankeschön! ;)

Error with MySQL sql_mode ONLY_FULL_GROUP_BY

Hi Stefan,

we get an error if the MySQL setting ONLY_FULL_GROUP_BY is set. This setting seems to be the default for MySQL 5.7.
See: https://dev.mysql.com/doc/refman/5.7/en/sql-mode.html#sqlmode_only_full_group_by

caller => 'TYPO3\CMS\Core\Database\DatabaseConnection::sql_query' (53 chars)
ERROR => 'Expression #53 of SELECT list is not in GROUP BY clause and contains nonaggr
egated column 'my_cms.tx_events2_domain_model_day.uid' which is not functi
onally dependent on columns in GROUP BY clause; this is incompatible with sq
l_mode=only_full_group_by' (253 chars)
lastBuiltQuery => 'SELECT tx_events2_domain_model_event.*, tx_events2_domain_model_day.uid as d
ay, tx_events2_domain_model_day.day as dayDay FROM tx_events2_domain_model_e
vent LEFT JOIN tx_events2_event_day_mm ON tx_events2_domain_model_event.uid=
tx_events2_event_day_mm.uid_local LEFT JOIN tx_events2_domain_model_day ON t
x_events2_event_day_mm.uid_foreign=tx_events2_domain_model_day.uid WHERE tx_
events2_domain_model_event.top_of_list = 1 AND FIND_IN_SET(tx_events2_domain
_model_event.pid, '37') AND tx_events2_domain_model_day.day = (SELECT day
FROM tx_events2_domain_model_day LEFT JOIN tx_events2_event_day_mm ON tx
_events2_domain_model_day.uid=tx_events2_event_day_mm.uid_foreign WHERE t
x_events2_event_day_mm.uid_local = tx_events2_domain_model_event.uid AND
day >= 1474495200 ORDER BY tx_events2_domain_model_day.day ASC LIMI
T 1) AND tx_events2_domain_model_event.deleted=0 AND tx_events2_domain_mo
del_event.t3ver_state<=0 AND tx_events2_domain_model_event.pid<>-1
AND tx_events2_domain_model_event.hidden=0 AND tx_events2_domain_model_event
.starttime<=1474547880 AND (tx_events2_domain_model_event.endtime=0 OR tx
_events2_domain_model_event.endtime>1474547880) GROUP BY tx_events2_domai
n_model_event.uid' (1215 chars)

Regards Vaci

Remove typolink ViewHelper

Since TYPO3 7.6 brings its own typolink ViewHelper, we have replaced all typolink VHs with VH of TYPO3 some month ago. Now it's time to remove this VH from Classes/ViewHelper directory, too.
Would be cool to have an updated documentation and ChangeLog, too.

Stefan

Fehler "cHash empty"

Hallo,
bei der Suche und bei Benutzen des Filters bekomme ich immer den Fehler "Page not found" Reason: Request parameters could not be validated (&cHash empty)
Kann ich das irgendwo einstellen?
Ich benutze TYPO3 8.7

Gruß
Jens

SQL-Error -> MySQL strict mode

Hi,

if I try to save a new Event withouth having Location or Organizer set, I get an error message.

SQL error: 'SQLSTATE[HY000]: General error: 1366 Incorrect integer value: '' for column 'location' at row 1' (tx_events2_domain_model_event:NEW5c73c1ca03c31728674411)

or

SQL error: 'SQLSTATE[HY000]: General error: 1366 Incorrect integer value: '' for column 'organizer' at row 1' (tx_events2_domain_model_event:NEW5c73c1eb086bb974155914)

As far as I have seen on another thread, the solution would be to define the default value string

'default' => 0

See https://stackoverflow.com/questions/40542151/typo3-sql-error-incorrect-integer-value-for-column-sys-language-uid-at

Grouping events by day fails due to quoting in TYPO3 8.6

The grouping set by \JWeiland\Events2\Domain\Repository\DayRepository::addGroupingToQuery() fails with an exception:

#1472074485: Unknown column 'CASE WHEN tx_events2_domain_model_event.event_type != "duration" THEN day ELSE 0 END' in 'group statement'

Tested with TYPO3 8.6.0. Maybe introduction of doctrine changed something

Route Enhancer Pagination

Hi,

I just try to complete my route enhancer for the pagination url:

https://mydomain.de/events/calendar?tx_events2_events[%widget_0][currentPage]=2&cHash=b6706316b2ead1121901ce8d45e4eb57
I tried this without success:

(...)

        routePath: '/page-{page}'
        _controller: 'Event::listSearchResults'
        _arguments:
          page: '@widget_0/currentPage'

(...)

    requirements:
      page:
        type: StaticRangeMapper
        start: '1'
        end: '100'

I guess that the controller is wrong.

Regards
Hobokens

Location and organizer as optional parameter

At the moment, the location and the organizer of an event are required parameters, and the location is binded to maps2/Google Maps.

If both parameters would be optional, the events2 could be used without a google account.

Eine Veranstaltung mit unterschiedlichen Terminen

Es gibt Veranstaltungen der selben Art, die aber an unterschiedlichen Terminen statt finden.

Gut wäre, wenn ich für eine Veranstaltung nicht nur unterschiedliche Uhrzeiten, sondern auch unterschiedliche Datum angeben kann.

Event Beginn und Event Ende

Wenn mit der Suchfunktion zum Beispiel vom 1.7 bis 6.7 gesucht wird, werden alle Events außer der 6.7 ausgegeben. Zweites Problem - Event Beginn 1.7 und Event Ende 1.7, also Beginn und Ende am gleichen Tag, dann wird gar kein Event ausgegeben.

Wrong dates in winter time

Create a recurring event for friday each week. Each event after 30.10.2016 will be start at thursday. That's because of switching from summer to winter time.

event_begin field default not set correctly

Hi,

the event_begin field of the event domain model uses a call to mktime to set the default value here:

'default' => mktime(0, 0, 0, date('m'), date('d'), date('Y')),

This does not work since the TCA structure is cached in whole, so once it has been cached the day will always stay the same and not switch to the current date until the cache is cleared.

Alternative could be to set it in a hook like news does it: https://github.com/georgringer/news/blob/b73b1db92fbe45a2c396ca4a86840ee0f2dfb377/Classes/Backend/FormDataProvider/NewsRowInitializeNew.php#L54

organizer - wrong link (FE) for internal pages

Hello @froemken, thank you for your great extension!
i have a issue with events2 v. 3.5.2 and TYPO3 8.7.26

in the be i can use the link-wizard and choose a internal page as link for a organizer.
The problem: link in FE is wrong, because in the template file properties.html we have the VH f:link.external for the organizer-link.

result in FE:
<a title="Organizer" target="_blank" href="t3://page?uid=181">Organizer</a>

We have to switch to f:link.typolink instead of f:link.external

The problem/solution for the wrong ticket-link #83 and for the feature request #108 is the same.

Thanks a lot!
Metin

New Event Image Text

"Hiermit räume ich der Stadt Pforzheim ein einfaches, unbeschränktes Nutzungsrecht an dem hochgeladenen Werk ein. Mit der Nutzung werden keine Rechte von Dritten verletzt."

Hier sollte das Stadt Pforzheim raus ;)

Maps2Registry not found

You have missed a isLoaded in tx_events2_domain_model_location.php before loading Registry of maps2.

Stefan

Wiederholungen alle x Monate

Momentan ist es wohl nicht möglich, ein Event z.B. alle x Monate zu einem bestimmten Wochentag zu wiederholen.

Beispiel: alle 5 Monate am 2. Donnerstag des entsprechenden Monats.

Events2 2.2.5: Fehler nach TYPO3-Update 7.6.28 auf 8.7.15

Hallo, ich habe Events2 2.2.5 unter TYPO3 7.6.28 laufen. Nach einem Update auf 8.7.15 bekomme ich folgende Fehlermeldung:

Call to undefined method JWeiland\Events2\Persistence\Typo376\Generic\Storage\Typo3DbBackend::getStatementParts()

Deaktiviere ich im Extensionsmanager Events2, läuft der Rest fehlerfrei.

Error in list view

Hi,
I use TYPO3 v9.5.3 + events2 v3.2

When I try to show events with the plugin 'list events' I get the following error:

Fluid parse error in template partial_Event/Date_58bb0794d1cd026a64159cf1950b15147dd2bcb1, line 19 at character 3. Error: Required argument "value" was not supplied. (error code 1237823699). Template source chunk: <f:case default="1">

Regards
Hobokens

Installing Could not Error when installing: class: "JWeiland\Maps2\Utility\GeocodeUtility" maybe not loaded or no autoloader?

TYPO3 7.6.18
events 2.1.0

error when installing:
Could not analyse class: "JWeiland\Maps2\Utility\GeocodeUtility" maybe not loaded or no autoloader? Class JWeiland\Maps2\Utility\GeocodeUtility does not exist

TYPO3 8.7.9
events 2.2.5
the same error:
Exception
Could not analyse class: "JWeiland\Maps2\Utility\GeocodeUtility" maybe not loaded or no autoloader? Class JWeiland\Maps2\Utility\GeocodeUtility does not exist

Wrong recurring events for past events

Wrong recurring events if recurringPast = 0 and/or history events.

Steps to reproduce:

  • Extension-Manager recurringPast = 0
  • Create a weekly recurring event with a date in the past which ist not the current day or weekday
  • The generated day events are wrong.

The example screenshot.

example

Event date: 11.7.2016 (Monday)
Events created at 12.10.2016
=> Generated dates: Tuesday

[Feature Request]: Location link to an internal page

Hi,
I use the extension on a website where every location is presented with its own page in detail (images, video, calendar and so on). It would be very nice to have the opportunity to link to these pages. Right now you can only link to the location page generated by events2.

Weiterblättern auf weitere Seiten geht nicht

Bei mehrseitigen Listen ruft ein Klick auf eine Seitennummer zwar die URL auf, aber der Inhalt wird nicht angezeigt.
image

Erst ein manuelles betätigen von STRG + F5 läd den Inhalt der jeweiligen Unterseite.

Auf mehreren Clients und Browsern getestet

Language problems

Hello and thanks for this great extensions.
I'm having trouble using the extension on a multi-language site (9 LTS). First of all - it does not matter how I configure the sys_language_mode-/overlay (including strict), the event records of the default language will always be shown in the list view.
Another problem occurs when translating an event: An error is shown:

1: Localization failed; "languageField" and "transOrigPointerField" must be defined for the table tx_events2_domain_model_day

ticketLink - wrong link for internal pages

Hi,
I'm sorry. It's me again. I'm testing your great extension and found another issue in the actual version with TYPO3 9.5.3.
I try to add the ticketLink in 'properties.html'.

  <f:if condition="{day.event.ticketLink}">
    <f:render arguments="{event: day.event}" section="ticketLink"/>
  </f:if>

The first strange phenomenon: I see the label and the link only when I have inserted
<f:debug>{day.event}</f:debug>
in the template. I really don't know why. Maybe the arguments are wrong?

The second problem: When I choose an internal link for the ticketLink I get the following wrong URL in frontend:

<a title="Zum Ticketverkauf" target="_blank" href="t3://page?uid=150">
Pforte <span aria-hidden="true" class="icon-arrowright"></span></a>

Regards
Hobokens

TYPO3 9 Error on saving a record

i have installed TYPO3 9 LTS.

I installed the extension, included static ts, created a plugin and some records in a sysfolder "events". when saving the folowing error appears:
[Semantical Error] The annotation "@todo" in method JWeiland\Events2\Domain\Repository\EventRepository::findHiddenEntryByUid()

package requires PHP <6.0

Due to the restriction to PHP <6.0 in the composer.json events2 can't be installed on systems with PHP >6.0

"require": {
      "php": ">=5.3.7 <6.0",
      "typo3/cms-core": ">=6.2.14,<8.0"
},

Hidden records are not displayed in Frontend Editing

Although "show hidden records" is enabled in Admin Panel settings hidden events2-records are not displayed while Frontend Editing. Therefore a preview is impossible.

Preview of hidden records worked in version 3.1.2 as expected, all later versions show the same misbehaviour.

PHP-Kompatibilität?

Hallo,
beim Versuch events2 unter Typo3 6.2.30 zu installieren gibt es eine Fehlermeldung. Die PHP-Version ist 5.4.20
PHP Parse error: syntax error, unexpected 'class' (T_CLASS), expecting identifier (T_STRING) or variable (T_VARIABLE) or '{' or '$' in /typo3conf/ext/events2/ext_localconf.php on line 73

Only show events in future based on Time

Hello Stefan,

is it possible to show only events which will be starting in the future, based on starttime?
For example: can I generate a listview which will not show an event from 10.00 oclock in the morning when I visit the site at 12.00 oclock?

Thank you very much!
Best regards Ron.

TYPO3 8 compatibility broken

Hey,

due to the usage of the class TYPO3\CMS\Core\Core\Environment in Classes/Service/JsonLdService.php the EXT isn't compatible with TYPO3 8 anymore.

Best regards

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.