This tutorial will help you to understand how to set up voting contests.
Flexibility of NorrCompetition allows creating different scenarios of voting contests on your Joomla website using the combination of contest options, voting options and permissions.
Before the start we should make sure that the timezone is set correctly in Joomla site options.
Why this is important for voting contests? Imagine website’s timezone is set to UTC and our local timezone is Europe/Prague (UTC+2). So when we use time dependent options like the contest end date, this time difference between website's timezone and our local timezone will be applied, and the contest will end 2 hours earlier than we set it.
That's why we should always set website's timezone according to the region where are making our contests for.
To check the timezone, we should open Global Configuration, then proceed to Server tab and under Location Settings and find Server Time Zone option.
No corrections needed? Great. Now we can start.
First of all, let's explore all options that we will cover in this post.
Status - the status of contest: active or completed.
Here and after we presume that we are creating contests with the status set to Active.
Contest Start and End dates Voting Start and End dates
Voting Start Date and Voting End Date are active only within contest Start Date and End Date. For example, if Voting End Date is set greater then contest End Date then Voting End Date will be equal to contest End Date. So Start Date and End Date always override Voting Start Date and Voting End Date.
Count Past Votes - can be set to Yes or No. If set to Yes then all the votes regardless of the voting period will be included for counting the current votes of the voter.
Now we need to set the permissions that will allow to submit entries regardless of contest options. Proceed to Permissions and set Create, Create Before Contest Start, Create After Contest Start, Create After Vote Start to Allowed.
Ok, we are ready to play around with combinations of the above mentioned settings and create scenarios for our voting contests. For all cases we will take 01-04-2018 12:00 as contest created date.
Dates: none are set.
Result: contestants can submit entries, the voting is active. To close the contest and voting you need to set the status to Completed manually.
Dates: start date is not set (equals to created date) and end date is set to 01-05-2018 00:00.
Result: contestants can submit entries and voting is active till 01-05-2018 00:00. The contest Status will be automatically set to Completed on 01-05-2018 00:00.
To simplify our next cases here and after we presume that the end date is set to 01-05-2018 00:00.
Dates: start date is set to 03-04-2018 10:00.
Result: contestants can submit entries and voting is active from 03-04-2018 10:00 till 01-05-2108 00:00.
When the contest created date differs from other dates we can start to play around with permissions. Proceed to Permissions and set Create After Contest Start to Deny.
Result: contestants will be able to submit entries only from created date till start date. As you can see we are giving a period for contestants to submit entries and after that the voting on that entries will start.
Let's advance our case #3.
Result: contestants can submit entries from created date till start date. The voting is active from 05-04-2018 00:00 00:00 till 01-05-2108 00:00.
This case is helpful when you need some time to check entries before the start of voting. In this case this is a period between 03-04-2018 10:00 and 05-04-2018 00:00.
Imagine we need to announce our contest and after some period of time to allow to submit entries? We can adjust Case #4 a little bit to achieve this.
Proceed to Permissions and set Create After Contest Start to Allow and Create Before Contest Start to Deny. Let's break down this by dates:
Ok, Case #5 is looking powerful, but how to deny submission of entries after the start of voting? Easy. Just set Create After Vote Start to Deny in Permissions. That's where flexibility comes into play:
You might think that this is all. But wait, we haven't touch Voting End Date option yet. Also Count Past Votes option is looking like some Voodoo setting :) Our next case will explain what we can do with this two to make voting contests super powerful.
In most cases, End Date is enough, and you do not need to set Voting End Date. But what if we set it to 14-04-2018 12:00. Remember, our contest end date is 01-05-2108 00:00. So voting will be closed before the end of contest. You might think why we need this gap? The answer is multiple stage contests.
When voting is closed you can sum up the results of voting, choose the entries with the highest rating and open another stage of voting only for these entries by setting Voting Start Date to 16-04-2018 10:00 and Voting End Date the same as contest End Date (another way is to clear Voting End Date). You can do this as many times as you want between contest start and end dates.
But why do we need Count Past Votes option? Imagine we have set one vote per entry. If we have multiple stage contest, a user won't be able to vote (yes, we can clear the votes for selected entries, but this won't work for cookies and sometimes you do not want to clear the votes). In this case, we can set Count Past Votes option to Yes and all votes that a user have made for entries before Voting Start Date will not count. This allows to vote several times for entry, even when one vote per entry is set.
As you can see, NorrCompetition is powerful enough to cover almost all possible scenarios of voting contests with the rich set of settings. I hope you like this post and will feel more confident when will be setting your voting contests next time.
Product manager and Joomla enthusiast who has worked in many major web development roles since 2002 taking on a wide array of various projects.