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.

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 OJS Editorial Support and Discussion subforum; if you have a development question, try the OJS Development subforum.

I downloaded OJS 2 through CVS and replace the config template with a writeable config.inc.php. All other ojs and ojsdata folders were made writeable.

After completing the configuration page, and selecting automatic install, this error appeared:
DB Error: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'NULL' at line 4

I deleted the database, and new folders in ojsdata, re-entered the necessary details on the configuration page and selected manual install.

After this, the next page was blank and I couldn't identify any clues in the SQL syntax.

Try enabling database logging (in your MySQL configuration), turn on show_stacktrace in OJS's config.inc.php, and run through the automated install again. Post the SQL statement that caused the error here and the full OJS error message and I'll see if I can track down the problem.

If you did not make this request, please ignore this email and your password will not be changed. If you wish to reset your password, click on the below URL.

Reset my password: {$url}

{$principalContactSignature}', 'This email is sent to a registered user when they indicate that they have forgotten their password or are unable to login. It provides a URL they can follow to reset their password.');

INSERT INTO email_templates_default_data (locale, email_key, subject, body, description) VALUES ('en_US', 'PASSWORD_RESET', 'Password Reset', 'Your password has been successfully reset for use with the {$siteTitle} web site. Please retain this username and password, as it is necessary for all work with the journal.

Your username: {$username}
Your new password: {$password}

{$principalContactSignature}', 'This email is sent to a registered user when they have successfully reset their password following the process described in the PASSWORD_RESET_CONFIRM email.');

INSERT INTO email_templates_default_data (locale, email_key, subject, body, description) VALUES ('en_US', 'USER_REGISTER', 'New User Registration', 'Thank you for registering as a user with {$journalName}. Please keep track of your username and password, which are needed for all work with this journal.

Username: {$username}
Password: {$password}

Thank you,
{$principalContactSignature}', 'This email is sent to a newly registered user to welcome them to the system and provide them with a record of their username and password.');

{$journalName} has just published its latest issue at {$journalUrl}. We invite you to review the Table of Contents here and then visit our web site to review articles and items of interest.

Thanks for the continuing interest in our work,
{$editorialContactSignature}', 'This email is sent to registered readers via the "Notify Users" link in the Editor\'s User Home. It notifies readers of a new issue and invites them to visit the journal at a supplied URL.');

{$journalName} <{$journalUrl}>, is a journal for which a member of your faculty, [name of member], serves as a [title of position]. The journal is seeking to establish a LOCKSS (Lots of Copies Keep Stuff Safe) compliant archive with this and other university libraries.

[Brief description of journal]

The URL to the LOCKSS Publisher Manifest for our journal is: {$journalUrl}/gateway/lockss

We understand that you are already participating in LOCKSS. If we can provide any additional metadata for purposes of registering our journal with your version of LOCKSS, we would be happy to provide it.

Thank you,
{$principalContactSignature}', 'This email requests the keeper of a LOCKSS archive to consider including this journal in their archive. It provides the URL to the journal\'s LOCKSS Publisher Manifest.');

{$journalName} <{$journalUrl}>, is a journal for which a member of your faculty, [name of member] serves as a [title of position]. The journal is seeking to establish a LOCKSS (Lots of Copies Keep Stuff Safe) compliant archive with this and other university libraries.

[Brief description of journal]

The LOCKSS Program <http://lockss.stanford.edu/>, an international library/publisher initiative, is a working example of a distributed preservation and archiving repository, additional details are below. The software, which runs on an ordinary personal computer is free; the system is easily brought on-line; very little ongoing maintenance is required.

To assist in the archiving of our journal, we invite you to become a member of the LOCKSS community, to help collect and preserve titles produced by your faculty and by other scholars worldwide. To do so, please have someone on your staff visit the LOCKSS site for information on how this system operates. I look forward to hearing from you on the feasibility of providing this archiving support for this journal.

Thank you,
{$principalContactSignature}', 'This email encourages the recipient to participate in the LOCKSS initiative and include this journal in the archive. It provides information about the LOCKSS initiative and ways to become involved.');

Thank you for submitting the manuscript, "{$articleTitle}" to {$journalName}. With the online journal management system that we are using, you will be able to track its progress through the editorial process by logging in to the journal web site:

Manuscript URL: {$submissionUrl}
Username: {$authorUsername}

If you have any questions, please contact me. Thank you for considering this journal as a venue for your work.

{$editorialContactSignature}', 'This email, when enabled, is automatically sent to an author when he or she completes the process of submitting a manuscript to the journal. It provides information about tracking the submission through the process and thanks the author for the submission.');

An initial review of "{$articleTitle}" has made it clear that this submission does not fit within the scope and focus of {$journalName}. I recommend that you consult the description of this journal under About, as well as its current contents, to learn more about the work that we publish. You might also consider submitting this manuscript to another, more suitable journal.

{$commentName} has added a comment to the submission, "{$articleTitle}" in {$journalName}:

{$comments}', 'This email notifies the various people involved in a submission\'s editing process that a new comment has been posted.');

INSERT INTO email_templates_default_data (locale, email_key, subject, body, description) VALUES ('en_US', 'SUBMISSION_DECISION_REVIEWERS', 'Decision on "{$articleTitle}"', 'As one of the reviewers for the submission, "{$articleTitle}," to {$journalName}, I am sending you the reviews and editorial decision sent to the author of this piece. Thank you again for your important contribution to this process.

{$editorialContactSignature}

{$comments}', 'This email notifies the reviewers of a submission that the review process has been completed. It includes information about the article and the decision reached, and thanks the reviewers for their contributions.');

The submission, "{$articleTitle}," to {$journalName} has been assigned to you to see through the editorial process in your role as Section Editor.

Submission URL: {$submissionUrl}
Username: {$editorUsername}

Thank you,
{$editorialContactSignature}', 'This email notifies a Section Editor that the Editor has assigned them the task of overseeing a submission through the editing process. It provides information about the submission and how to access the journal site.');

I believe that you would serve as an excellent reviewer of the manuscript, "{$articleTitle}," which has been submitted to {$journalName}. The submission\'s abstract is inserted below, and I hope that you will consider undertaking this important task for us.

Please log into the journal web site by {$weekLaterDate} to indicate whether you will undertake the review or not, as well as to access the submission and to record your review and recommendation. The web site is {$journalUrl}

The review itself is due {$reviewDueDate}.

If you do not have your username and password for the journal\'s web site, you can use this link to reset your password (which will then be emailed to you along with your username). {$passwordResetUrl}

Submission URL: {$submissionReviewUrl}

Thank you for considering this request.

{$editorialContactSignature}

"{$articleTitle}"

{$abstractTermIfEnabled}
{$articleAbstract}', 'This email from the Section Editor to a Reviewer requests that the reviewer accept or decline the task of reviewing a submission. It provides information about the submission such as the title and abstract, a review due date, and how to access the submission itself. This message is used when the Standard Review Process is selected in Journal Setup, Step 2. (Otherwise see REVIEW_REQUEST_ATTACHED.)');

I believe that you would serve as an excellent reviewer of the manuscript, "{$articleTitle}," which has been submitted to {$journalName}. The submission\'s abstract is inserted below, and I hope that you will consider undertaking this important task for us.

Please log into the journal web site by {$weekLaterDate} to indicate whether you will undertake the review or not, as well as to access the submission and to record your review and recommendation.

The review itself is due {$reviewDueDate}.

Submission URL: {$submissionReviewUrl}

Thank you for considering this request.

{$editorialContactSignature}

"{$articleTitle}"

{$abstractTermIfEnabled}
{$articleAbstract}', 'This email from the Section Editor to a Reviewer requests that the reviewer accept or decline the task of reviewing a submission. It provides information about the submission such as the title and abstract, a review due date, and how to access the submission itself. This message is used when the Standard Review Process is selected in Journal Setup, Step 2, and one-click reviewer access is enabled.');

I believe that you would serve as an excellent reviewer of the manuscript, "{$articleTitle}," and I am asking that you consider undertaking this important task for us. The Review Guidelines for this journal are appended below, and the submission is attached to this email. Your review of the submission, along with your recommendation, should be emailed to me by {$reviewDueDate}.

Please indicate in a return email by {$weekLaterDate} whether you are able and willing to do the review.

Thank you for considering this request.

{$editorialContactSignature}

Review Guidelines

{$reviewGuidelines}
', 'This email is sent by the Section Editor to a Reviewer to request that they accept or decline the task of reviewing a submission. It includes the submission as an attachment. This message is used when the Email-Attachment Review Process is selected in Journal Setup, Step 2. (Otherwise see REVIEW_REQUEST.)');

We have decided at this point to cancel our request for you to review the submission, "{$articleTitle}," for {$journalName}. We apologize for any inconvenience this may cause you and hope that we will be able to call on you to assist with this journal\'s review process in the future.

If you have any questions, please contact me.

{$editorialContactSignature}', 'This email is sent by the Section Editor to a Reviewer who has a submission review in progress to notify them that the review has been cancelled.');

I am able and willing to review the submission, "{$articleTitle}," for {$journalName}. Thank you for thinking of me, and I plan to have the review completed by its due date, {$reviewDueDate}, if not before.

{$reviewerName}', 'This email is sent by a Reviewer to the Section Editor in response to a review request to notify the Section Editor that the review request has been accepted and will be completed by the specified date.');

I have now completed my review of "{$articleTitle}" for {$journalName}, and submitted my recommendation, "{$recommendation}."

{$reviewerName}', 'This email is sent by a Reviewer to the Section Editor to notify them that a review has been completed and the comments and recommendations have been recorded on the journal web site.');

Just a gentle reminder of our request for your review of the submission, "{$articleTitle}," for {$journalName}. We were hoping to have this review by {$reviewDueDate}, and would be pleased to receive it as soon as you are able to prepare it.

If you do not have your username and password for the journal\'s web site, you can use this link to reset your password (which will then be emailed to you along with your username). {$passwordResetUrl}

Submission URL: {$submissionReviewUrl}

Please confirm your ability to complete this vital contribution to the work of the journal. I look forward to hearing from you.

{$editorialContactSignature}', 'This email is sent by a Section Editor to remind a reviewer that their review is due.');

Just a gentle reminder of our request for your review of the submission, "{$articleTitle}," for {$journalName}. We were hoping to have this review by {$reviewDueDate}, and would be pleased to receive it as soon as you are able to prepare it.

Submission URL: {$submissionReviewUrl}

Please confirm your ability to complete this vital contribution to the work of the journal. I look forward to hearing from you.

{$editorialContactSignature}', 'This email is sent by a Section Editor to remind a reviewer that their review is due.');

Just a gentle reminder of our request for your review of the submission, "{$articleTitle}," for {$journalName}. We were hoping to have this review by {$reviewDueDate}, and this email has been automatically generated and sent with the passing of that date. We would still be pleased to receive it as soon as you are able to prepare it.

If you do not have your username and password for the journal\'s web site, you can use this link to reset your password (which will then be emailed to you along with your username). {$passwordResetUrl}

Submission URL: {$submissionReviewUrl}

Please confirm your ability to complete this vital contribution to the work of the journal. I look forward to hearing from you.

{$editorialContactSignature}', 'This email is automatically sent when a reviewer\'s due date elapses (see Review Options under Journal Setup, Step 2) and one-click reviewer access is disabled. Scheduled tasks must be enabled and configured (see the site configuration file).');

Just a gentle reminder of our request for your review of the submission, "{$articleTitle}," for {$journalName}. We were hoping to have this review by {$reviewDueDate}, and this email has been automatically generated and sent with the passing of that date. We would still be pleased to receive it as soon as you are able to prepare it.

Submission URL: {$submissionReviewUrl}

Please confirm your ability to complete this vital contribution to the work of the journal. I look forward to hearing from you.

{$editorialContactSignature}', 'This email is automatically sent when a reviewer\'s due date elapses (see Review Options under Journal Setup, Step 2) and one-click reviewer access is enabled. Scheduled tasks must be enabled and configured (see the site configuration file).');

I would ask that you undertake the copyediting of the manuscript, "{$articleTitle}," for {$journalName}. The submission is found on the journal web site, along with a set of Instructions for Copyediting.

If you are unable to undertake this work at this time or have any questions, please contact me. Thank you for agreeing to undertake this important work for the journal.

{$editorialContactSignature}', 'This email is sent by a Section Editor to a submission\'s Copyeditor to request that they begin the copyediting process. It provides information about the submission and how to access it.');

Thank you for copyediting the manuscript, "{$articleTitle}," for {$journalName}. It will make an important contribution to the quality of this journal.

{$editorialContactSignature}', 'This email is sent by the Section Editor to a submission\'s Copyeditor to acknowledge that the Copyeditor has successfully completed the copyediting process and thank them for their contribution.');

We have now copyedited your submission, "{$articleTitle}," for {$journalName}. To review the proposed changes and respond to Author Queries, please log into the journal web site using the link below. Download and open the Initial Copyedit File. After reviewing the copyediting, upload the file in Step 2 and send the COMPLETE email to the editor.

This is the last opportunity that you have to make substantial changes. You will be asked to proofread the galleys, but at that stage we will only be able to correct minor typographical and layout errors.

If you are unable to undertake this work at this time or have any questions, please contact me. Thank you for your contribution to this journal.

{$editorialContactSignature}', 'This email is sent by the Section Editor to a submission\'s Author to request that they proofread the work of the copyeditor. It provides access information for the manuscript and warns that this is the last opportunity the author has to make substantial changes.');

DB Error: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'NULL' at line 4
Stack Trace:
File: /Library/WebServer/Documents/ojs2/classes/site/SiteDAO.inc.php line 97
Function: DAO->update("INSERT INTO site (title, intro, about, journal_redirect, con...", Array(12))

Is it possible that you've got a conflicting version of ADODB installed? Check your phpinfo output or PHP configuration for something like an auto_prepend_file statement that might cause another ADODB installation to be loaded before OJS has the chance.

Ah, I've just noticed that John's using CVS as mentioned in the original post. The CVS tree is under active development and will not always be stable -- in this case, there was a bug in classes/site/SiteDAO.inc.php.

Warning: Cannot modify header information - headers already sent by (output started at /home/www/seer/ojs2/lib/adodb/adodb-xmlschema.inc.php:2223) in /home/www/seer/ojs2/classes/template/TemplateManager.inc.php on line 190

I've checked the php settings and all seems in order. I have a previous 2.1.1 installed working fine.