As the developers of Open Journal Systems, Open Conference Systems, Open Harvester Systems, and Open Monograph Press, the PKP team are experts in helping journal managers and conference organizers make the most of their online publishing projects. PKP Publishing Services offers support for:

As a customer of PKP Publishing Services, you will not only receive direct, personalized support from the PKP Development Team, but will be contributing to the ongoing development of the PKP applications. All funds raised by PKP Publishing Services go directly toward enhancing our free, open source software. For more information, please contact us.

1. Search the forum. You can do this from the Advanced Search Page or from our Google Custom Search, which will search the entire PKP site. If you are encountering an error, we especially recommend searching the forum for said error.

2. Check the FAQ to see if your question or error has already been resolved. Please note that this FAQ is OJS-centric, but most issues are applicable to both platforms.

3. Post a question, but please, only after trying the above two solutions. If it's a workflow or usability question you should probably post to the OCS Conference Support and Discussion subforum; if you have a development question, try the OCS Development subforum.

The expected behaviour for a registration type is that it should be available until midnight on the closing date. However, it seems to be unavailable for the entire closing date (ie. from 00:00 on). Now, I have done some customization to the registration process, so there is a possibility that I mucked this up, but I don't think so. I think the problem is that, although the closing date is stored in the DB with the time (ie. 2010-04-15 23:59:59), when it's retrieved by:

$registrationType->getClosingDate() in templates/registration/selectRegistrationType.tpl

only the date part gets returned (ie. 2010-04-15). I think the same problem would happen with registration options as well. I've been battling this problem all the way back to OCS 1.x. Where we don't have the problem anymore is with the abstract submission closing date. This date is retrieved with a different mechanism than the closing dates for registration types/options.

and then, in any comparison containing $registrationType->getClosingDate(), I replaced it with $closeDateWithTime. Of course, I should've fixed it in the class file, but I couldn't figure out how to do that.

I didn't fix it for the registration options. I'll just make sure that the dates are set so that we don't run into problems with this.

2.3.3 wasn't a broad release -- it was released to address a handful of specific issues (including, primarily, one security issue -- see this page for details). The good news is that with OJS 2.3.3 out the door, we'll be returning attention to OCS, and will be planning a more comprehensive release in the next few months which will hopefully include a fix for this issue.

tshore wrote:The expected behaviour for a registration type is that it should be available until midnight on the closing date. However, it seems to be unavailable for the entire closing date (ie. from 00:00 on). Now, I have done some customization to the registration process, so there is a possibility that I mucked this up, but I don't think so. I think the problem is that, although the closing date is stored in the DB with the time (ie. 2010-04-15 23:59:59), when it's retrieved by:

$registrationType->getClosingDate() in templates/registration/selectRegistrationType.tpl

only the date part gets returned (ie. 2010-04-15). I think the same problem would happen with registration options as well. I've been battling this problem all the way back to OCS 1.x. Where we don't have the problem anymore is with the abstract submission closing date. This date is retrieved with a different mechanism than the closing dates for registration types/options.

My early registrations were supposed to close at midnight tonight. However, it seems as if they closed at midnight last night. This is the exact same bug that I've been struggling with for YEARS. You might notice that I've posted in this thread in 2010 and 2011.

Here's what needs to be fixed. Please, please, please patch it and include it in the next release.

In classess/registration/RegistrationTypeDAO.inc.php, in the function returnRegistrationTypeFromRow(), you need to change lines 254-256 from: