Concrete5: Update ProEvents Event Categories
The ProEvents add-on for Concrete5 is one of the best extensions on the C5 marketplace. Calendars and any software that deals with time and dates is always a pain. If you need an event calendar on your site, for $38 you can save yourself a lot of trouble. However, just like anything, it will require some customization if you want a unique look and there is some missing functionality.
One of the issues I ran into was changing the name of the event categories. At first it seemed like all I would have to do is change the page attribute that is used to store the list of categories:
However, this updates the list of available categories, but will not update the category for existing events. The table where each event is stored does not reference the page attribute, but just stores the value in a VARCHAR column. In the screenshot above, if I change "Free Family" to "Free Family Fun" and then go to the front-end and filter my calendar by that category, there are zero results.
Step two is to update the category column in the btProEventsDates table with the new value:
mysql> update btProEventDates set category = 'Free Family Fun' where category = 'Free Family'; Query OK, 102 rows affected (0.01 sec) Rows matched: 102 Changed: 102 Warnings: 0
You can also just re-save each event using the new category value if there are only a few events. If you update it in the database directly there is one more step. Go to the System & Settings page on the back-end, then Automated Jobs and run the Index Search Engine - All job. You may need to click Reset All Jobs if it was recently run.