I've recently been working on some soon to be released enhancements to my Event Calendar Pro product. One of the requested features was the ability to set the colors for each event so they can be colored differently on the Month View. In order to implement this I needed a color picker, but rather than build the color picker into the Event Calendar Pro product, I decided to implement it in the core of mojoPortal so it can be used in other features and so other developers can use it in their own features. I implemented it as a UserControl that implements ISettingControl, a simple interface that makes it possible to use the control in Module Settings or in custom user profiles. So for example if you wanted to have a Favorite Color Property on the user profile page you could add this to your profile.config file:
<add name="FavoriteColor"
type=""
iSettingControlSrc="~/Controls/ColorSetting.ascx"
labelResourceKey="Favorite Color"
defaultValue="#34983E"
/>
and the result looks like this:
The color picker javascript is using the YUI Color Picker via a custom implementation from Dynamic Drive that I enhanced further to add localization and pre-selection of the color in the picker.
I hope to release the new version of Event Calendar Pro in the next few days. In order to do that I will also be releasing a new version of mojoPortal with the color picker because the Event Calendar Pro upgrade depends on this feature.
UPDATE 8:45am EST
I've deployed the latest version of Event Calendar Pro to the demo site.
Here is a list of the improvements:
- Ability to specify the end date for recurring events.
- Will Pay option for ticket sales. There is a setting on each event where you can check a checkbox to allow users to register for the event by clicking a button that says "I Will Pay Later". You can further control this from the module settings (gear icon) where there is a new setting so you can specify roles that are allowed to use the Will Pay button. That way you can put your trusted customers into a role and only allow them to register with this button, other users will not see the "I Will Pay Later" button, they will have to use the normal payment methods. button.
- Color coding of events in Month View. You can now sepcify foreground, background and border colors for events to make them have different colors in Month View.
- Ability to specify the text for event registration link.
- Location alias - for use when you want the name of the location to be different than what you need to enter for the google map to work.
- Meta Keywords and description per event
- Map settings per event instead of global
Any testing or feedback much appreciated, I'd like to release it soon. It will be a free upgrade for existing customers who have purchased it already.