OJS OCS OMP OHS

You are viewing the PKP Support Forum | PKP Home Wiki



Installation problem

Are you responsible for making OJS work -- installing, upgrading, migrating or troubleshooting? Do you think you've found a bug? Post in this forum.

Moderators: jmacgreg, btbell, michael, bdgregg, barbarah, asmecher

Forum rules
What to do if you have a technical problem with OJS:

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.

Installation problem

Postby brine » Thu Nov 23, 2006 6:40 am

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.

The system is:
Mac OSX 10.4.8
MySQL 5.0.24a
Entropy PHP 5.2
Apache httpd 1.3.33

Is there any other information I could provide to help solve this?
brine
 
Posts: 5
Joined: Thu Nov 23, 2006 5:59 am

Postby asmecher » Thu Nov 23, 2006 10:02 am

Hi Brine,

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.

Regards,
Alec Smecher
Open Journal Systems Team
asmecher
 
Posts: 8860
Joined: Wed Aug 10, 2005 12:56 pm

SQL statements from manual install

Postby brine » Fri Nov 24, 2006 2:13 am

CREATE DATABASE ojs DEFAULT CHARACTER SET utf8;


CREATE TABLE versions (
major INTEGER NOT NULL DEFAULT 0,
minor INTEGER NOT NULL DEFAULT 0,
revision INTEGER NOT NULL DEFAULT 0,
build INTEGER NOT NULL DEFAULT 0,
date_installed DATETIME NOT NULL,
current TINYINT NOT NULL DEFAULT 0,
PRIMARY KEY (major, minor, revision, build)
);


CREATE TABLE site (
title VARCHAR(120) NOT NULL DEFAULT 'Open Journal Systems',
intro TEXT,
journal_redirect BIGINT NOT NULL DEFAULT 0,
about TEXT,
contact_name VARCHAR(90),
contact_email VARCHAR(90),
min_password_length TINYINT NOT NULL DEFAULT 6,
locale VARCHAR(5) NOT NULL DEFAULT 'en_US',
installed_locales VARCHAR(255) NOT NULL DEFAULT 'en_US',
supported_locales VARCHAR(255),
profile_locales TINYINT NOT NULL DEFAULT 0,
original_style_file_name VARCHAR(255),
PRIMARY KEY (title)
);


CREATE TABLE scheduled_tasks (
class_name VARCHAR(255) NOT NULL,
last_run DATETIME,
PRIMARY KEY (class_name)
);


CREATE TABLE users (
user_id BIGINT NOT NULL AUTO_INCREMENT,
username VARCHAR(32) NOT NULL,
password VARCHAR(40) NOT NULL,
first_name VARCHAR(40) NOT NULL,
middle_name VARCHAR(40),
last_name VARCHAR(90) NOT NULL,
signature TEXT,
initials VARCHAR(5),
affiliation VARCHAR(255),
email VARCHAR(90) NOT NULL,
url VARCHAR(255),
phone VARCHAR(24),
fax VARCHAR(24),
mailing_address VARCHAR(255),
country VARCHAR(90),
biography TEXT,
interests VARCHAR(255),
locales VARCHAR(255),
date_registered DATETIME NOT NULL,
date_last_login DATETIME NOT NULL,
must_change_password TINYINT,
auth_id BIGINT,
disabled TINYINT NOT NULL DEFAULT 0,
disabled_reason TEXT,
PRIMARY KEY (user_id)
);


ALTER TABLE users ADD UNIQUE INDEX users_username (username);


ALTER TABLE users ADD UNIQUE INDEX users_email (email);


CREATE TABLE user_settings (
setting_id BIGINT NOT NULL AUTO_INCREMENT,
user_id BIGINT NOT NULL,
setting_name VARCHAR(255) NOT NULL,
journal_id BIGINT,
setting_value TEXT,
setting_type VARCHAR(6) NOT NULL,
PRIMARY KEY (setting_id)
);


ALTER TABLE user_settings ADD INDEX user_settings_user_id (user_id);


CREATE TABLE auth_sources (
auth_id BIGINT NOT NULL AUTO_INCREMENT,
title VARCHAR(60) NOT NULL,
plugin VARCHAR(32) NOT NULL,
auth_default TINYINT NOT NULL DEFAULT 0,
settings TEXT,
PRIMARY KEY (auth_id)
);


CREATE TABLE sessions (
session_id VARCHAR(32) NOT NULL,
user_id BIGINT,
ip_address VARCHAR(15) NOT NULL,
user_agent VARCHAR(255),
created BIGINT NOT NULL DEFAULT 0,
last_used BIGINT NOT NULL DEFAULT 0,
remember TINYINT NOT NULL DEFAULT 0,
data TEXT,
PRIMARY KEY (session_id)
);


ALTER TABLE sessions ADD INDEX sessions_user_id (user_id);


CREATE TABLE journals (
journal_id BIGINT NOT NULL AUTO_INCREMENT,
title VARCHAR(255) NOT NULL,
description TEXT,
path VARCHAR(32) NOT NULL,
seq DOUBLE NOT NULL DEFAULT 0,
enabled TINYINT NOT NULL DEFAULT 1,
PRIMARY KEY (journal_id)
);


ALTER TABLE journals ADD UNIQUE INDEX journals_path (path);


CREATE TABLE journal_settings (
journal_id BIGINT NOT NULL,
setting_name VARCHAR(255) NOT NULL,
setting_value TEXT,
setting_type VARCHAR(6) NOT NULL,
PRIMARY KEY (journal_id, setting_name)
);


ALTER TABLE journal_settings ADD INDEX journal_settings_journal_id (journal_id);


CREATE TABLE plugin_settings (
plugin_name VARCHAR(80) NOT NULL,
journal_id BIGINT NOT NULL,
setting_name VARCHAR(80) NOT NULL,
setting_value TEXT,
setting_type VARCHAR(6) NOT NULL,
PRIMARY KEY (plugin_name, journal_id, setting_name)
);


ALTER TABLE plugin_settings ADD INDEX plugin_settings_plugin_name (plugin_name);


CREATE TABLE roles (
journal_id BIGINT NOT NULL,
user_id BIGINT NOT NULL,
role_id BIGINT NOT NULL,
PRIMARY KEY (journal_id, user_id, role_id)
);


ALTER TABLE roles ADD INDEX roles_journal_id (journal_id);


ALTER TABLE roles ADD INDEX roles_user_id (user_id);


ALTER TABLE roles ADD INDEX roles_role_id (role_id);


CREATE TABLE notification_status (
journal_id BIGINT NOT NULL,
user_id BIGINT NOT NULL,
PRIMARY KEY (journal_id, user_id)
);


CREATE TABLE sections (
section_id BIGINT NOT NULL AUTO_INCREMENT,
journal_id BIGINT NOT NULL,
title VARCHAR(120) NOT NULL,
title_alt1 VARCHAR(120),
title_alt2 VARCHAR(120),
abbrev VARCHAR(20),
abbrev_alt1 VARCHAR(20),
abbrev_alt2 VARCHAR(20),
seq DOUBLE NOT NULL DEFAULT 0,
editor_restricted TINYINT NOT NULL DEFAULT 0,
meta_indexed TINYINT NOT NULL DEFAULT 0,
meta_reviewed TINYINT NOT NULL DEFAULT 1,
abstracts_disabled TINYINT NOT NULL DEFAULT 0,
identify_type VARCHAR(60),
hide_title TINYINT NOT NULL DEFAULT 0,
hide_about TINYINT NOT NULL DEFAULT 0,
policy TEXT,
PRIMARY KEY (section_id)
);


ALTER TABLE sections ADD INDEX sections_journal_id (journal_id);


CREATE TABLE section_editors (
journal_id BIGINT NOT NULL,
section_id BIGINT NOT NULL,
user_id BIGINT NOT NULL,
PRIMARY KEY (journal_id, section_id, user_id)
);


ALTER TABLE section_editors ADD INDEX section_editors_journal_id (journal_id);


ALTER TABLE section_editors ADD INDEX section_editors_section_id (section_id);


ALTER TABLE section_editors ADD INDEX section_editors_user_id (user_id);


CREATE TABLE issues (
issue_id BIGINT NOT NULL AUTO_INCREMENT,
journal_id BIGINT NOT NULL,
title VARCHAR(120),
volume SMALLINT,
number SMALLINT,
year SMALLINT,
published TINYINT NOT NULL DEFAULT 0,
current TINYINT NOT NULL DEFAULT 0,
date_published DATETIME,
date_notified DATETIME,
access_status TINYINT NOT NULL DEFAULT 1,
open_access_date DATETIME,
description TEXT,
public_issue_id VARCHAR(255),
label_format TINYINT NOT NULL DEFAULT 0,
file_name VARCHAR(90),
original_file_name VARCHAR(127),
width SMALLINT,
height SMALLINT,
cover_page_description TEXT,
show_cover_page TINYINT NOT NULL DEFAULT 0,
style_file_name VARCHAR(90),
original_style_file_name VARCHAR(255),
PRIMARY KEY (issue_id)
);


ALTER TABLE issues ADD INDEX issues_journal_id (journal_id);


ALTER TABLE issues ADD INDEX issues_public_issue_id (public_issue_id);


CREATE TABLE custom_section_orders (
issue_id BIGINT NOT NULL,
section_id BIGINT NOT NULL,
seq DOUBLE NOT NULL DEFAULT 0,
PRIMARY KEY (issue_id, section_id)
);


CREATE TABLE articles (
article_id BIGINT NOT NULL AUTO_INCREMENT,
user_id BIGINT NOT NULL,
journal_id BIGINT NOT NULL,
section_id BIGINT,
title VARCHAR(255) NOT NULL,
title_alt1 VARCHAR(255),
title_alt2 VARCHAR(255),
abstract TEXT,
abstract_alt1 TEXT,
abstract_alt2 TEXT,
discipline VARCHAR(255),
subject_class VARCHAR(255),
subject VARCHAR(255),
coverage_geo VARCHAR(255),
coverage_chron VARCHAR(255),
coverage_sample VARCHAR(255),
type VARCHAR(255),
language VARCHAR(10) DEFAULT 'en',
sponsor VARCHAR(255),
comments_to_ed TEXT,
date_submitted DATETIME,
last_modified DATETIME,
date_status_modified DATETIME,
status TINYINT NOT NULL DEFAULT 1,
submission_progress TINYINT NOT NULL DEFAULT 1,
current_round TINYINT NOT NULL DEFAULT 1,
submission_file_id BIGINT,
revised_file_id BIGINT,
review_file_id BIGINT,
editor_file_id BIGINT,
copyedit_file_id BIGINT,
pages VARCHAR(255),
PRIMARY KEY (article_id)
);


ALTER TABLE articles ADD INDEX articles_user_id (user_id);


ALTER TABLE articles ADD INDEX articles_journal_id (journal_id);


ALTER TABLE articles ADD INDEX articles_section_id (section_id);


CREATE TABLE published_articles (
pub_id BIGINT NOT NULL AUTO_INCREMENT,
article_id BIGINT NOT NULL,
issue_id BIGINT NOT NULL,
date_published DATETIME NOT NULL,
seq DOUBLE NOT NULL DEFAULT 0,
views INTEGER NOT NULL DEFAULT 0,
access_status TINYINT NOT NULL DEFAULT 0,
public_article_id VARCHAR(255),
PRIMARY KEY (pub_id)
);


ALTER TABLE published_articles ADD UNIQUE INDEX published_articles_article_id (article_id);


ALTER TABLE published_articles ADD INDEX published_articles_issue_id (issue_id);


ALTER TABLE published_articles ADD INDEX published_articles_public_article_id (public_article_id);


CREATE TABLE comments (
comment_id BIGINT NOT NULL AUTO_INCREMENT,
article_id BIGINT NOT NULL,
parent_comment_id BIGINT,
num_children INTEGER NOT NULL DEFAULT 0,
user_id BIGINT,
poster_ip VARCHAR(15) NOT NULL,
poster_name VARCHAR(90),
poster_email VARCHAR(90),
title VARCHAR(255) NOT NULL,
body TEXT,
date_posted DATETIME,
date_modified DATETIME,
PRIMARY KEY (comment_id)
);


ALTER TABLE comments ADD INDEX comments_article_id (article_id);


CREATE TABLE article_authors (
author_id BIGINT NOT NULL AUTO_INCREMENT,
article_id BIGINT NOT NULL,
first_name VARCHAR(40) NOT NULL,
middle_name VARCHAR(40),
last_name VARCHAR(90) NOT NULL,
affiliation VARCHAR(255),
country VARCHAR(90),
email VARCHAR(90) NOT NULL,
url VARCHAR(255),
biography TEXT,
primary_contact TINYINT NOT NULL DEFAULT 0,
seq DOUBLE NOT NULL DEFAULT 0,
PRIMARY KEY (author_id)
);


ALTER TABLE article_authors ADD INDEX article_authors_article_id (article_id);


CREATE TABLE article_files (
file_id BIGINT NOT NULL AUTO_INCREMENT,
revision BIGINT NOT NULL,
source_file_id BIGINT,
source_revision BIGINT,
article_id BIGINT NOT NULL,
file_name VARCHAR(90) NOT NULL,
file_type VARCHAR(255) NOT NULL,
file_size BIGINT NOT NULL,
original_file_name VARCHAR(127),
type VARCHAR(40) NOT NULL,
status VARCHAR(40) NOT NULL,
viewable TINYINT,
date_uploaded DATETIME NOT NULL,
date_modified DATETIME NOT NULL,
round TINYINT NOT NULL,
assoc_id BIGINT,
PRIMARY KEY (file_id, revision)
);


ALTER TABLE article_files ADD INDEX article_files_article_id (article_id);


CREATE TABLE article_supplementary_files (
supp_id BIGINT NOT NULL AUTO_INCREMENT,
file_id BIGINT NOT NULL,
article_id BIGINT NOT NULL,
public_supp_file_id VARCHAR(255),
title VARCHAR(255),
creator VARCHAR(255),
subject VARCHAR(255),
type VARCHAR(255),
type_other VARCHAR(255),
description TEXT,
publisher VARCHAR(255),
sponsor VARCHAR(255),
date_created DATE,
source VARCHAR(255),
language VARCHAR(10) DEFAULT 'en',
show_reviewers TINYINT DEFAULT 0,
date_submitted DATETIME NOT NULL,
seq DOUBLE NOT NULL DEFAULT 0,
PRIMARY KEY (supp_id)
);


ALTER TABLE article_supplementary_files ADD INDEX article_supplementary_files_file_id (file_id);


ALTER TABLE article_supplementary_files ADD INDEX article_supplementary_files_article_id (article_id);


CREATE TABLE article_notes (
note_id BIGINT NOT NULL AUTO_INCREMENT,
article_id BIGINT NOT NULL,
user_id BIGINT NOT NULL,
date_created DATETIME NOT NULL,
date_modified DATETIME NOT NULL,
title VARCHAR(255) NOT NULL,
note TEXT,
file_id BIGINT NOT NULL,
PRIMARY KEY (note_id)
);


ALTER TABLE article_notes ADD INDEX article_notes_article_id (article_id);


ALTER TABLE article_notes ADD INDEX article_notes_user_id (user_id);


ALTER TABLE article_notes ADD INDEX article_notes_file_id (file_id);


CREATE TABLE edit_assignments (
edit_id BIGINT NOT NULL AUTO_INCREMENT,
article_id BIGINT NOT NULL,
editor_id BIGINT NOT NULL,
can_edit TINYINT NOT NULL DEFAULT 1,
can_review TINYINT NOT NULL DEFAULT 1,
date_assigned DATETIME,
date_notified DATETIME,
date_underway DATETIME,
PRIMARY KEY (edit_id)
);


ALTER TABLE edit_assignments ADD INDEX edit_assignments_article_id (article_id);


ALTER TABLE edit_assignments ADD INDEX edit_assignments_editor_id (editor_id);


CREATE TABLE edit_decisions (
edit_decision_id BIGINT NOT NULL AUTO_INCREMENT,
article_id BIGINT NOT NULL,
round TINYINT NOT NULL,
editor_id BIGINT NOT NULL,
decision TINYINT NOT NULL,
date_decided DATETIME NOT NULL,
PRIMARY KEY (edit_decision_id)
);


ALTER TABLE edit_decisions ADD INDEX edit_decisions_article_id (article_id);


ALTER TABLE edit_decisions ADD INDEX edit_decisions_editor_id (editor_id);


CREATE TABLE review_rounds (
article_id BIGINT NOT NULL,
round TINYINT NOT NULL,
review_revision BIGINT,
PRIMARY KEY (article_id, round)
);


ALTER TABLE review_rounds ADD INDEX review_rounds_article_id (article_id);


CREATE TABLE review_assignments (
review_id BIGINT NOT NULL AUTO_INCREMENT,
article_id BIGINT NOT NULL,
reviewer_id BIGINT NOT NULL,
recommendation TINYINT,
date_assigned DATETIME,
date_notified DATETIME,
date_confirmed DATETIME,
date_completed DATETIME,
date_acknowledged DATETIME,
date_due DATETIME,
last_modified DATETIME,
reminder_was_automatic TINYINT NOT NULL DEFAULT 0,
declined TINYINT NOT NULL DEFAULT 0,
replaced TINYINT NOT NULL DEFAULT 0,
cancelled TINYINT NOT NULL DEFAULT 0,
reviewer_file_id BIGINT,
date_rated DATETIME,
date_reminded DATETIME,
quality TINYINT,
round TINYINT NOT NULL DEFAULT 1,
PRIMARY KEY (review_id)
);


ALTER TABLE review_assignments ADD INDEX review_assignments_article_id (article_id);


ALTER TABLE review_assignments ADD INDEX review_assignments_reviewer_id (reviewer_id);


CREATE TABLE copyed_assignments (
copyed_id BIGINT NOT NULL AUTO_INCREMENT,
article_id BIGINT NOT NULL,
copyeditor_id BIGINT NOT NULL,
copyedit_revision BIGINT,
date_notified DATETIME,
date_underway DATETIME,
date_completed DATETIME,
date_acknowledged DATETIME,
date_author_notified DATETIME,
date_author_underway DATETIME,
date_author_completed DATETIME,
date_author_acknowledged DATETIME,
date_final_notified DATETIME,
date_final_underway DATETIME,
date_final_completed DATETIME,
date_final_acknowledged DATETIME,
initial_revision BIGINT,
editor_author_revision BIGINT,
final_revision BIGINT,
PRIMARY KEY (copyed_id)
);


ALTER TABLE copyed_assignments ADD INDEX copyed_assignments_article_id (article_id);


ALTER TABLE copyed_assignments ADD INDEX copyed_assignments_copyeditor_id (copyeditor_id);


CREATE TABLE layouted_assignments (
layouted_id BIGINT NOT NULL AUTO_INCREMENT,
article_id BIGINT NOT NULL,
editor_id BIGINT NOT NULL,
date_notified DATETIME,
date_underway DATETIME,
date_completed DATETIME,
date_acknowledged DATETIME,
layout_file_id BIGINT,
PRIMARY KEY (layouted_id)
);


ALTER TABLE layouted_assignments ADD UNIQUE INDEX layouted_assignments_article_id (article_id);


ALTER TABLE layouted_assignments ADD INDEX layouted_assignments_editor_id (editor_id);


CREATE TABLE article_galleys (
galley_id BIGINT NOT NULL AUTO_INCREMENT,
article_id BIGINT NOT NULL,
file_id BIGINT NOT NULL,
label VARCHAR(32),
html_galley TINYINT NOT NULL DEFAULT 0,
style_file_id BIGINT,
seq DOUBLE NOT NULL DEFAULT 0,
views INTEGER NOT NULL DEFAULT 0,
PRIMARY KEY (galley_id)
);


ALTER TABLE article_galleys ADD INDEX article_galleys_article_id (article_id);


CREATE TABLE article_html_galley_images (
galley_id BIGINT NOT NULL,
file_id BIGINT NOT NULL,
PRIMARY KEY (galley_id, file_id)
);


CREATE TABLE proof_assignments (
proof_id BIGINT NOT NULL AUTO_INCREMENT,
article_id BIGINT NOT NULL,
proofreader_id BIGINT NOT NULL,
date_author_notified DATETIME,
date_author_underway DATETIME,
date_author_completed DATETIME,
date_author_acknowledged DATETIME,
date_proofreader_notified DATETIME,
date_proofreader_underway DATETIME,
date_proofreader_completed DATETIME,
date_proofreader_acknowledged DATETIME,
date_layouteditor_notified DATETIME,
date_layouteditor_underway DATETIME,
date_layouteditor_completed DATETIME,
date_layouteditor_acknowledged DATETIME,
PRIMARY KEY (proof_id)
);


ALTER TABLE proof_assignments ADD INDEX proof_assignments_article_id (article_id);


ALTER TABLE proof_assignments ADD INDEX proof_assignments_proofreader_id (proofreader_id);


CREATE TABLE article_event_log (
log_id BIGINT NOT NULL AUTO_INCREMENT,
article_id BIGINT NOT NULL,
user_id BIGINT NOT NULL,
date_logged DATETIME NOT NULL,
ip_address VARCHAR(15) NOT NULL,
log_level VARCHAR(1),
event_type BIGINT,
assoc_type BIGINT,
assoc_id BIGINT,
message TEXT,
PRIMARY KEY (log_id)
);


ALTER TABLE article_event_log ADD INDEX article_event_log_article_id (article_id);


CREATE TABLE article_email_log (
log_id BIGINT NOT NULL AUTO_INCREMENT,
article_id BIGINT NOT NULL,
sender_id BIGINT NOT NULL,
date_sent DATETIME NOT NULL,
ip_address VARCHAR(15),
event_type BIGINT,
assoc_type BIGINT,
assoc_id BIGINT,
from_address VARCHAR(255),
recipients TEXT,
cc_recipients TEXT,
bcc_recipients TEXT,
subject VARCHAR(255),
body TEXT,
PRIMARY KEY (log_id)
);


ALTER TABLE article_email_log ADD INDEX article_email_log_article_id (article_id);


CREATE TABLE article_comments (
comment_id BIGINT NOT NULL AUTO_INCREMENT,
comment_type BIGINT,
role_id BIGINT NOT NULL,
article_id BIGINT NOT NULL,
assoc_id BIGINT NOT NULL,
author_id BIGINT NOT NULL,
comment_title VARCHAR(90) NOT NULL,
comments TEXT,
date_posted DATETIME,
date_modified DATETIME,
viewable TINYINT,
PRIMARY KEY (comment_id)
);


ALTER TABLE article_comments ADD INDEX article_comments_article_id (article_id);


CREATE TABLE email_templates_default (
email_id BIGINT NOT NULL AUTO_INCREMENT,
email_key VARCHAR(30) NOT NULL,
can_disable TINYINT NOT NULL DEFAULT 1,
can_edit TINYINT NOT NULL DEFAULT 1,
from_role_id BIGINT,
to_role_id BIGINT,
PRIMARY KEY (email_id)
);


ALTER TABLE email_templates_default ADD UNIQUE INDEX email_templates_default_email_key (email_key);


CREATE TABLE email_templates_default_data (
email_key VARCHAR(30) NOT NULL,
locale VARCHAR(5) NOT NULL DEFAULT 'en_US',
subject VARCHAR(120) NOT NULL,
body TEXT,
description TEXT,
PRIMARY KEY (email_key, locale)
);


CREATE TABLE email_templates (
email_id BIGINT NOT NULL AUTO_INCREMENT,
email_key VARCHAR(30) NOT NULL,
journal_id BIGINT NOT NULL,
enabled TINYINT NOT NULL DEFAULT 1,
PRIMARY KEY (email_id)
);


ALTER TABLE email_templates ADD UNIQUE INDEX email_templates_email_key (email_key, journal_id);


ALTER TABLE email_templates ADD INDEX email_templates_journal_id (journal_id);


CREATE TABLE email_templates_data (
email_key VARCHAR(30) NOT NULL,
locale VARCHAR(5) NOT NULL DEFAULT 'en_US',
journal_id BIGINT NOT NULL,
subject VARCHAR(120) NOT NULL,
body TEXT,
PRIMARY KEY (email_key, locale, journal_id)
);


CREATE TABLE article_search_keyword_list (
keyword_id BIGINT NOT NULL AUTO_INCREMENT,
keyword_text VARCHAR(60) NOT NULL,
PRIMARY KEY (keyword_id)
);


ALTER TABLE article_search_keyword_list ADD UNIQUE INDEX article_search_keyword_text (keyword_text);


CREATE TABLE article_search_objects (
object_id BIGINT NOT NULL AUTO_INCREMENT,
article_id BIGINT NOT NULL,
type INTEGER NOT NULL,
assoc_id BIGINT,
PRIMARY KEY (object_id)
);


CREATE TABLE article_search_object_keywords (
object_id BIGINT NOT NULL,
keyword_id BIGINT NOT NULL,
pos INTEGER NOT NULL,
PRIMARY KEY (object_id, pos)
);


ALTER TABLE article_search_object_keywords ADD INDEX article_search_object_keywords_keyword_id (keyword_id);


CREATE TABLE oai_resumption_tokens (
token VARCHAR(32) NOT NULL,
expire BIGINT NOT NULL,
record_offset INTEGER NOT NULL,
params TEXT,
PRIMARY KEY (token)
);


CREATE TABLE rt_versions (
version_id BIGINT NOT NULL AUTO_INCREMENT,
journal_id BIGINT NOT NULL,
version_key VARCHAR(40) NOT NULL,
locale VARCHAR(5) DEFAULT 'en_US',
title VARCHAR(120) NOT NULL,
description TEXT,
PRIMARY KEY (version_id)
);


ALTER TABLE rt_versions ADD INDEX rt_versions_journal_id (journal_id);


ALTER TABLE rt_versions ADD INDEX rt_versions_version_key (version_key);


CREATE TABLE rt_contexts (
context_id BIGINT NOT NULL AUTO_INCREMENT,
version_id BIGINT NOT NULL,
title VARCHAR(120) NOT NULL,
abbrev VARCHAR(32) NOT NULL,
description TEXT,
cited_by TINYINT NOT NULL DEFAULT 0,
author_terms TINYINT NOT NULL DEFAULT 0,
define_terms TINYINT NOT NULL DEFAULT 0,
geo_terms TINYINT NOT NULL DEFAULT 0,
seq DOUBLE NOT NULL DEFAULT 0,
PRIMARY KEY (context_id)
);


ALTER TABLE rt_contexts ADD INDEX rt_contexts_version_id (version_id);


CREATE TABLE rt_searches (
search_id BIGINT NOT NULL AUTO_INCREMENT,
context_id BIGINT NOT NULL,
title VARCHAR(120) NOT NULL,
description TEXT,
url TEXT,
search_url TEXT,
search_post TEXT,
seq DOUBLE NOT NULL DEFAULT 0,
PRIMARY KEY (search_id)
);


ALTER TABLE rt_searches ADD INDEX rt_searches_context_id (context_id);


CREATE TABLE subscription_types (
type_id BIGINT NOT NULL AUTO_INCREMENT,
journal_id BIGINT NOT NULL,
type_name VARCHAR(80) NOT NULL,
description TEXT,
cost DOUBLE NOT NULL,
currency_code_alpha VARCHAR(3) NOT NULL,
duration SMALLINT NOT NULL,
format SMALLINT NOT NULL,
institutional TINYINT NOT NULL DEFAULT 0,
membership TINYINT NOT NULL DEFAULT 0,
pub TINYINT NOT NULL,
seq DOUBLE NOT NULL,
PRIMARY KEY (type_id)
);


ALTER TABLE subscription_types ADD UNIQUE INDEX subscription_types_journal_id (journal_id, type_name);


CREATE TABLE subscriptions (
subscription_id BIGINT NOT NULL AUTO_INCREMENT,
journal_id BIGINT NOT NULL,
user_id BIGINT NOT NULL,
type_id BIGINT NOT NULL,
date_start DATE NOT NULL,
date_end DATE NOT NULL,
membership VARCHAR(40),
domain VARCHAR(255),
ip_range VARCHAR(255),
PRIMARY KEY (subscription_id)
);


ALTER TABLE subscriptions ADD UNIQUE INDEX subscription_journal_id (journal_id, user_id);


ALTER TABLE subscriptions ADD INDEX subscription_domain (domain);


ALTER TABLE subscriptions ADD INDEX subscription_ip_range (ip_range);


CREATE TABLE announcement_types (
type_id BIGINT NOT NULL AUTO_INCREMENT,
journal_id BIGINT NOT NULL,
type_name VARCHAR(80) NOT NULL,
PRIMARY KEY (type_id)
);


ALTER TABLE announcement_types ADD INDEX announcement_types_journal_id (journal_id);


CREATE TABLE announcements (
announcement_id BIGINT NOT NULL AUTO_INCREMENT,
journal_id BIGINT NOT NULL,
type_id BIGINT,
title VARCHAR(255) NOT NULL,
description_short TEXT,
description TEXT,
date_expire DATETIME,
date_posted DATETIME NOT NULL,
PRIMARY KEY (announcement_id)
);


ALTER TABLE announcements ADD INDEX announcements_journal_id (journal_id);


CREATE TABLE captchas (
captcha_id BIGINT NOT NULL AUTO_INCREMENT,
session_id VARCHAR(32) NOT NULL,
value VARCHAR(20) NOT NULL,
date_created DATETIME NOT NULL,
PRIMARY KEY (captcha_id)
);


CREATE TABLE temporary_files (
file_id BIGINT NOT NULL AUTO_INCREMENT,
user_id BIGINT NOT NULL,
file_name VARCHAR(90) NOT NULL,
file_type VARCHAR(255),
file_size BIGINT NOT NULL,
original_file_name VARCHAR(127),
date_uploaded DATETIME NOT NULL,
PRIMARY KEY (file_id)
);


ALTER TABLE temporary_files ADD INDEX temporary_files_user_id (user_id);


CREATE TABLE access_keys (
access_key_id BIGINT NOT NULL AUTO_INCREMENT,
context VARCHAR(40) NOT NULL,
key_hash VARCHAR(40) NOT NULL,
user_id BIGINT NOT NULL,
assoc_id BIGINT,
expiry_date DATETIME NOT NULL,
PRIMARY KEY (access_key_id)
);


ALTER TABLE access_keys ADD INDEX access_keys_hash (key_hash, user_id, context);


CREATE TABLE groups (
group_id BIGINT NOT NULL AUTO_INCREMENT,
journal_id BIGINT NOT NULL,
title VARCHAR(255) NOT NULL,
title_alt1 VARCHAR(255),
title_alt2 VARCHAR(255),
about_displayed TINYINT NOT NULL DEFAULT 0,
seq DOUBLE NOT NULL DEFAULT 0,
PRIMARY KEY (group_id)
);


ALTER TABLE groups ADD INDEX groups_journal_id (journal_id);


CREATE TABLE group_memberships (
user_id BIGINT NOT NULL,
group_id BIGINT NOT NULL,
about_displayed TINYINT NOT NULL DEFAULT 1,
seq DOUBLE NOT NULL DEFAULT 0,
PRIMARY KEY (user_id, group_id)
);


INSERT INTO email_templates_default (email_key, can_edit, can_disable) VALUES ('PASSWORD_RESET_CONFIRM', 1, 0);


INSERT INTO email_templates_default (email_key, can_edit, can_disable) VALUES ('PASSWORD_RESET', 1, 0);


INSERT INTO email_templates_default (email_key, can_edit, can_disable) VALUES ('USER_REGISTER', 1, 0);


INSERT INTO email_templates_default (email_key, can_edit, can_disable) VALUES ('PUBLISH_NOTIFY', 1, 0);


INSERT INTO email_templates_default (email_key, can_edit, can_disable) VALUES ('LOCKSS_EXISTING_ARCHIVE', 1, 0);


INSERT INTO email_templates_default (email_key, can_edit, can_disable) VALUES ('LOCKSS_NEW_ARCHIVE', 1, 0);


INSERT INTO email_templates_default (email_key, can_edit, can_disable, to_role_id) VALUES ('SUBMISSION_ACK', 1, 1, 65536);


INSERT INTO email_templates_default (email_key, can_edit, can_disable, to_role_id, from_role_id) VALUES ('SUBMISSION_UNSUITABLE', 1, 1, 65536, 512);


INSERT INTO email_templates_default (email_key, can_edit, can_disable) VALUES ('SUBMISSION_COMMENT', 1, 0);


INSERT INTO email_templates_default (email_key, can_edit, can_disable, from_role_id, to_role_id) VALUES ('SUBMISSION_DECISION_REVIEWERS', 1, 0, 512, 4096);


INSERT INTO email_templates_default (email_key, can_edit, can_disable, from_role_id, to_role_id) VALUES ('EDITOR_ASSIGN', 1, 1, 256, 512);


INSERT INTO email_templates_default (email_key, can_edit, can_disable, from_role_id, to_role_id) VALUES ('REVIEW_CANCEL', 1, 1, 512, 4096);


INSERT INTO email_templates_default (email_key, can_edit, can_disable, from_role_id, to_role_id) VALUES ('REVIEW_REQUEST', 1, 1, 512, 4096);


INSERT INTO email_templates_default (email_key, can_edit, can_disable, from_role_id, to_role_id) VALUES ('REVIEW_REQUEST_ONECLICK', 1, 1, 512, 4096);


INSERT INTO email_templates_default (email_key, can_edit, can_disable, from_role_id, to_role_id) VALUES ('REVIEW_REQUEST_ATTACHED', 1, 0, 512, 4096);


INSERT INTO email_templates_default (email_key, can_edit, can_disable, from_role_id, to_role_id) VALUES ('REVIEW_CONFIRM', 1, 1, 4096, 512);


INSERT INTO email_templates_default (email_key, can_edit, can_disable, to_role_id, from_role_id) VALUES ('REVIEW_CONFIRM_ACK', 1, 1, 4096, 512);


INSERT INTO email_templates_default (email_key, can_edit, can_disable, from_role_id, to_role_id) VALUES ('REVIEW_DECLINE', 1, 1, 4096, 512);


INSERT INTO email_templates_default (email_key, can_edit, can_disable, from_role_id, to_role_id) VALUES ('REVIEW_COMPLETE', 1, 1, 4096, 512);


INSERT INTO email_templates_default (email_key, can_edit, can_disable, from_role_id, to_role_id) VALUES ('REVIEW_ACK', 1, 1, 512, 4096);


INSERT INTO email_templates_default (email_key, can_edit, can_disable, from_role_id, to_role_id) VALUES ('REVIEW_REMIND', 1, 0, 512, 4096);


INSERT INTO email_templates_default (email_key, can_edit, can_disable, to_role_id) VALUES ('REVIEW_REMIND_AUTO', 1, 0, 4096);


INSERT INTO email_templates_default (email_key, can_edit, can_disable, from_role_id, to_role_id) VALUES ('REVIEW_REMIND_ONECLICK', 1, 0, 512, 4096);


INSERT INTO email_templates_default (email_key, can_edit, can_disable, to_role_id) VALUES ('REVIEW_REMIND_AUTO_ONECLICK', 1, 0, 4096);


INSERT INTO email_templates_default (email_key, can_edit, can_disable, from_role_id, to_role_id) VALUES ('EDITOR_REVIEW', 1, 0, 512, 65536);


INSERT INTO email_templates_default (email_key, can_edit, can_disable, from_role_id, to_role_id) VALUES ('COPYEDIT_REQUEST', 1, 1, 512, 8192);


INSERT INTO email_templates_default (email_key, can_edit, can_disable, from_role_id, to_role_id) VALUES ('COPYEDIT_COMPLETE', 1, 1, 8192, 512);


INSERT INTO email_templates_default (email_key, can_edit, can_disable, from_role_id, to_role_id) VALUES ('COPYEDIT_ACK', 1, 1, 512, 8192);


INSERT INTO email_templates_default (email_key, can_edit, can_disable, from_role_id, to_role_id) VALUES ('COPYEDIT_AUTHOR_REQUEST', 1, 1, 512, 65536);


INSERT INTO email_templates_default (email_key, can_edit, can_disable, from_role_id, to_role_id) VALUES ('COPYEDIT_AUTHOR_COMPLETE', 1, 1, 65536, 512);


INSERT INTO email_templates_default (email_key, can_edit, can_disable, from_role_id, to_role_id) VALUES ('COPYEDIT_AUTHOR_ACK', 1, 1, 512, 65536);


INSERT INTO email_templates_default (email_key, can_edit, can_disable, from_role_id, to_role_id) VALUES ('COPYEDIT_FINAL_REQUEST', 1, 1, 512, 8192);


INSERT INTO email_templates_default (email_key, can_edit, can_disable, from_role_id, to_role_id) VALUES ('COPYEDIT_FINAL_COMPLETE', 1, 1, 8192, 512);


INSERT INTO email_templates_default (email_key, can_edit, can_disable, from_role_id, to_role_id) VALUES ('COPYEDIT_FINAL_ACK', 1, 1, 512, 8192);


INSERT INTO email_templates_default (email_key, can_edit, can_disable, from_role_id, to_role_id) VALUES ('LAYOUT_REQUEST', 1, 1, 512, 768);


INSERT INTO email_templates_default (email_key, can_edit, can_disable, from_role_id, to_role_id) VALUES ('LAYOUT_COMPLETE', 1, 1, 768, 512);


INSERT INTO email_templates_default (email_key, can_edit, can_disable, from_role_id, to_role_id) VALUES ('LAYOUT_ACK', 1, 1, 512, 768);


INSERT INTO email_templates_default (email_key, can_edit, can_disable, from_role_id, to_role_id) VALUES ('PROOFREAD_AUTHOR_REQUEST', 1, 1, 512, 65536);


INSERT INTO email_templates_default (email_key, can_edit, can_disable, from_role_id, to_role_id) VALUES ('PROOFREAD_AUTHOR_COMPLETE', 1, 1, 65536, 512);


INSERT INTO email_templates_default (email_key, can_edit, can_disable, from_role_id, to_role_id) VALUES ('PROOFREAD_AUTHOR_ACK', 1, 1, 512, 65536);


INSERT INTO email_templates_default (email_key, can_edit, can_disable, from_role_id, to_role_id) VALUES ('PROOFREAD_REQUEST', 1, 1, 512, 12288);


INSERT INTO email_templates_default (email_key, can_edit, can_disable, from_role_id, to_role_id) VALUES ('PROOFREAD_COMPLETE', 1, 1, 12288, 512);


INSERT INTO email_templates_default (email_key, can_edit, can_disable, from_role_id, to_role_id) VALUES ('PROOFREAD_ACK', 1, 1, 512, 12288);


INSERT INTO email_templates_default (email_key, can_edit, can_disable, from_role_id, to_role_id) VALUES ('PROOFREAD_LAYOUT_REQUEST', 1, 1, 512, 768);


INSERT INTO email_templates_default (email_key, can_edit, can_disable, from_role_id, to_role_id) VALUES ('PROOFREAD_LAYOUT_COMPLETE', 1, 1, 768, 512);


INSERT INTO email_templates_default (email_key, can_edit, can_disable, from_role_id, to_role_id) VALUES ('PROOFREAD_LAYOUT_ACK', 1, 1, 512, 768);


INSERT INTO email_templates_default (email_key, can_edit, can_disable, from_role_id) VALUES ('EMAIL_LINK', 1, 0, 1048576);


INSERT INTO email_templates_default (email_key, can_edit, can_disable, to_role_id) VALUES ('SUBSCRIPTION_NOTIFY', 1, 0, 1048576);


INSERT INTO email_templates_default (email_key, can_edit, can_disable, to_role_id) VALUES ('OPEN_ACCESS_NOTIFY', 1, 0, 1048576);


INSERT INTO email_templates_default (email_key, can_edit, can_disable, to_role_id) VALUES ('SUBSCRIPTION_BEFORE_EXPIRY', 1, 0, 1048576);


INSERT INTO email_templates_default (email_key, can_edit, can_disable, to_role_id) VALUES ('SUBSCRIPTION_AFTER_EXPIRY', 1, 0, 1048576);


INSERT INTO email_templates_default (email_key, can_edit, can_disable, to_role_id) VALUES ('SUBSCRIPTION_AFTER_EXPIRY_LAST', 1, 0, 1048576);


INSERT INTO email_templates_default_data (locale, email_key, subject, body, description) VALUES ('en_US', 'PASSWORD_RESET_CONFIRM', 'Password Reset Confirmation', 'We have received a request to reset your password for the {$siteTitle} web site.

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.');


INSERT INTO email_templates_default_data (locale, email_key, subject, body, description) VALUES ('en_US', 'PUBLISH_NOTIFY', 'New Issue Published', 'Readers:

{$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.');


INSERT INTO email_templates_default_data (locale, email_key, subject, body, description) VALUES ('en_US', 'LOCKSS_EXISTING_ARCHIVE', 'Archiving Request for {$journalName}', 'Dear [University Librarian]

{$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.');


INSERT INTO email_templates_default_data (locale, email_key, subject, body, description) VALUES ('en_US', 'LOCKSS_NEW_ARCHIVE', 'Archiving Request for {$journalName}', 'Dear [University Librarian]

{$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.');


INSERT INTO email_templates_default_data (locale, email_key, subject, body, description) VALUES ('en_US', 'SUBMISSION_ACK', 'Submission Acknowledgement', '{$authorName}:

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.');


INSERT INTO email_templates_default_data (locale, email_key, subject, body) VALUES ('en_US', 'SUBMISSION_UNSUITABLE', 'Unsuitable Submission', '{$authorName}:

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.

{$editorialContactSignature}');


INSERT INTO email_templates_default_data (locale, email_key, subject, body, description) VALUES ('en_US', 'SUBMISSION_COMMENT', 'Submission Comment', '{$name}:

{$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.');


INSERT INTO email_templates_default_data (locale, email_key, subject, body, description) VALUES ('en_US', 'EDITOR_ASSIGN', 'Editorial Assignment', '{$editorialContactName}:

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.');


INSERT INTO email_templates_default_data (locale, email_key, subject, body, description) VALUES ('en_US', 'REVIEW_REQUEST', 'Article Review Request', '{$reviewerName}:

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.)');


INSERT INTO email_templates_default_data (locale, email_key, subject, body, description) VALUES ('en_US', 'REVIEW_REQUEST_ONECLICK', 'Article Review Request', '{$reviewerName}:

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.');


INSERT INTO email_templates_default_data (locale, email_key, subject, body, description) VALUES ('en_US', 'REVIEW_REQUEST_ATTACHED', 'Article Review Request', '{$reviewerName}:

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.)');


INSERT INTO email_templates_default_data (locale, email_key, subject, body, description) VALUES ('en_US', 'REVIEW_CANCEL', 'Request for Review Cancelled', '{$reviewerName}:

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.');


INSERT INTO email_templates_default_data (locale, email_key, subject, body, description) VALUES ('en_US', 'REVIEW_CONFIRM', 'Able to Review', '{$editorialContactName}:

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.');


INSERT INTO email_templates_default_data (locale, email_key, subject, body, description) VALUES ('en_US', 'REVIEW_CONFIRM_ACK', 'Review Underway Acknowledgement', '{$reviewerName}:

Thank you for agreeing to review the manuscript "{$articleTitle}" for {$journalName} by {$reviewDueDate}.

{$editorialContactSignature}', 'This email is sent from the Section Editor to the Reviewer to acknowledge their acceptance of a review or encourage them to complete the review.');


INSERT INTO email_templates_default_data (locale, email_key, subject, body, description) VALUES ('en_US', 'REVIEW_DECLINE', 'Unable to Review', '{$editorialContactName}:

I am afraid that at this time I am unable to review the submission, "{$articleTitle}," for {$journalName}. Thank you for thinking of me, and another time feel free to call on me.

{$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 declined.');


INSERT INTO email_templates_default_data (locale, email_key, subject, body, description) VALUES ('en_US', 'REVIEW_COMPLETE', 'Article Review Completed', '{$editorialContactName}:

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.');


INSERT INTO email_templates_default_data (locale, email_key, subject, body, description) VALUES ('en_US', 'REVIEW_ACK', 'Article Review Acknowledgement', '{$reviewerName}:

Thank you for completing the review of the submission, "{$articleTitle}," for {$journalName}. We appreciate your contribution to the quality of the work that we publish.

{$editorialContactSignature}', 'This email is sent by a Section Editor to confirm receipt of a completed review and thank the reviewer for their contributions.');


INSERT INTO email_templates_default_data (locale, email_key, subject, body, description) VALUES ('en_US', 'REVIEW_REMIND', 'Submission Review Reminder', '{$reviewerName}:

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.');


INSERT INTO email_templates_default_data (locale, email_key, subject, body, description) VALUES ('en_US', 'REVIEW_REMIND_ONECLICK', 'Submission Review Reminder', '{$reviewerName}:

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.');


INSERT INTO email_templates_default_data (locale, email_key, subject, body, description) VALUES ('en_US', 'REVIEW_REMIND_AUTO', 'Automated Submission Review Reminder', '{$reviewerName}:

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).');


INSERT INTO email_templates_default_data (locale, email_key, subject, body, description) VALUES ('en_US', 'REVIEW_REMIND_AUTO_ONECLICK', 'Automated Submission Review Reminder', '{$reviewerName}:

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).');


INSERT INTO email_templates_default_data (locale, email_key, subject, body, description) VALUES ('en_US', 'EDITOR_REVIEW', 'Editorial Review of Article', '{$authorName}:

We have now completed the review of your submission "{$articleTitle}." Our decision is to...

{$comments}.

Additional comments on the paper, based on the editorial and peer review, are found by logging in to the journal web site:

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

If you have any questions, please contact me.

{$editorialContactSignature}', 'This email is sent by a Section Editor to a submission\'s Author to notify them that a decision has been reached in regard to a submission.');


INSERT INTO email_templates_default_data (locale, email_key, subject, body, description) VALUES ('en_US', 'COPYEDIT_REQUEST', 'Copyediting Request', '{$copyeditorName}:

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.

Manuscript URL: {$submissionCopyeditingUrl}
Username: {$copyeditorUsername}

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.');


INSERT INTO email_templates_default_data (locale, email_key, subject, body) VALUES ('en_US', 'COPYEDIT_COMPLETE', 'Copyediting Completed', '{$editorialContactName}:

I have now completed the first round of copyediting of the manuscript, "{$articleTitle}," for {$journalName}. It is now ready for the author and editor to review the changes and queries.

Thank you,
{$copyeditorName}');


INSERT INTO email_templates_default_data (locale, email_key, subject, body, description) VALUES ('en_US', 'COPYEDIT_ACK', 'Copyediting Acknowledgement', '{$copyeditorName}:

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.');


INSERT INTO email_templates_default_data (locale, email_key, subject, body, description) VALUES ('en_US', 'COPYEDIT_AUTHOR_REQUEST', 'Copyediting Review Request', '{$authorName}:

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.

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

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.');


INSERT INTO email_templates_default_data (locale, email_key, subject, body, description) VALUES ('en_US', 'COPYEDIT_AUTHOR_COMPLETE', 'Copyediting Review Completed', '{$editorialContactName}:

I have now reviewed the copyediting of the manuscript, "{$articleTitle}," for {$journalName}, and it is ready for the final round of copyediting and preparation for Layout.

Thank you for this contribution to my work,
{$authorName}', 'This email is sent by the Author to the Section Editor to notify them that the Author\'s copyediting process has been completed.');


INSERT INTO email_templates_default_data (locale, email_key, subject, body, description) VALUES ('en_US', 'COPYEDIT_AUTHOR_ACK', 'Copyediting Review Acknowledgement', '{$authorName}:

Thank you for reviewing the copyediting of your manuscript, "{$articleTitle}," for {$journalName}. We look forward to publishing this work.

{$editorialContactSignature}', 'This email is sent by the Section Editor to a submission\'s Author to confirm completion of the Author\'s copyediting process and thank them for their contribution.');


INSERT INTO email_templates_default_data (locale, email_key, subject, body, description) VALUES ('en_US', 'COPYEDIT_FINAL_REQUEST', 'Copyediting Final Review', '{$copyeditorName}:

The author and editor have now completed their review of the copyediting of the manuscript, "{$articleTitle}," for {$journalName}. The final "clean copy" can now be prepared for Layout.

Manuscript URL: {$submissionCopyeditingUrl}
Username: {$copyeditorUsername}

Thank you on behalf of the journal,

{$editorialContactSignature}', 'This email from the Section Editor to the Copyeditor requests that they perform a final round of copyediting on a submission before it enters the layout process.');


INSERT INTO email_templates_default_data (locale, email_key, subject, body, description) VALUES ('en_US', 'COPYEDIT_FINAL_COMPLETE', 'Copyediting Final Review Completed', '{$editorialContactName}:

I have now prepared a clean, copyedited version of the manuscript, "{$articleTitle}," for {$journalName}. It is ready for Layout and the preparation of the galleys.

{$copyeditorName}', 'This email from the Copyeditor to the Section Editor notifies them that the final round of copyediting has been completed and that the layout process may now begin.');


INSERT INTO email_templates_default_data (locale, email_key, subject, body, description) VALUES ('en_US', 'COPYEDIT_FINAL_ACK', 'Copyediting Final Review Acknowledgement', '{$copyeditorName}:

Thank you for completing the copyediting of the manuscript, "{$articleTitle}," for {$journalName}. This preparation of a "clean copy" for Layout is an important step in the editorial process.

{$editorialContactSignature}', 'This email from the Section Editor to the Copyeditor acknowledges completion of the final round of copyediting and thanks them for their contribution.');


INSERT INTO email_templates_default_data (locale, email_key, subject, body, description) VALUES ('en_US', 'LAYOUT_REQUEST', 'Request Galleys', '{$layoutEditorName}:

I would ask that you prepare the galleys for the manuscript, "{$articleTitle}," for {$journalName}.

Manuscript URL: {$submissionLayoutUrl}
Username: {$layoutEditorUsername}

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 from the Section Editor to the Layout Editor notifies them that they have been assigned the task of performing layo
brine
 
Posts: 5
Joined: Thu Nov 23, 2006 5:59 am

stacktrace from manual install

Postby brine » Fri Nov 24, 2006 2:15 am

DB Error: Unknown database 'ojs'
Stack Trace:
File: /Library/WebServer/Documents/ojs2/classes/session/SessionDAO.inc.php line 36
Function: DAO->retrieve("SELECT * FROM sessions WHERE session_id = ?", "j2qjpc2ol87h8rl6dovmuq78n6")

File: /Library/WebServer/Documents/ojs2/classes/session/SessionManager.inc.php line 143
Function: SessionDAO->getSession("j2qjpc2ol87h8rl6dovmuq78n6")

File: (unknown) line (unknown)
Function: SessionManager->read("j2qjpc2ol87h8rl6dovmuq78n6")

File: /Library/WebServer/Documents/ojs2/classes/session/SessionManager.inc.php line 56
Function: session_start()

File: /Library/WebServer/Documents/ojs2/classes/session/SessionManager.inc.php line 105
Function: SessionManager->SessionManager(Object(SessionDAO))

File: /Library/WebServer/Documents/ojs2/classes/i18n/Locale.inc.php line 153
Function: SessionManager::getManager()

File: /Library/WebServer/Documents/ojs2/classes/i18n/Locale.inc.php line 103
Function: Locale::getLocale()

File: /Library/WebServer/Documents/ojs2/includes/driver.inc.php line 92
Function: Locale::initialize()

File: /Library/WebServer/Documents/ojs2/index.php line 55
Function: require("/Library/WebServer/Documents/ojs2/includes/driver.inc.php")
brine
 
Posts: 5
Joined: Thu Nov 23, 2006 5:59 am

stacktrace from automatic install (mysql schema was created)

Postby brine » Fri Nov 24, 2006 2:17 am

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))

File: /Library/WebServer/Documents/ojs2/classes/install/Install.inc.php line 230
Function: SiteDAO->insertSite(Object(Site))

File: (unknown) line (unknown)
Function: Install->createData()

File: /Library/WebServer/Documents/ojs2/classes/install/Installer.inc.php line 403
Function: call_user_func(Array(2))

File: /Library/WebServer/Documents/ojs2/classes/install/Installer.inc.php line 269
Function: Installer->executeAction(Array(3))

File: /Library/WebServer/Documents/ojs2/classes/install/Installer.inc.php line 191
Function: Installer->executeInstaller()

File: /Library/WebServer/Documents/ojs2/classes/install/form/InstallForm.inc.php line 182
Function: Installer->execute()

File: /Library/WebServer/Documents/ojs2/pages/install/InstallHandler.inc.php line 59
Function: InstallForm->execute()

File: (unknown) line (unknown)
Function: InstallHandler::install(Array(0))

File: /Library/WebServer/Documents/ojs2/index.php line 46
Function: call_user_func(Array(2), Array(0))

File: /Library/WebServer/Documents/ojs2/index.php line 57
Function: handleRequest()
brine
 
Posts: 5
Joined: Thu Nov 23, 2006 5:59 am

Thanks for your help

Postby brine » Fri Nov 24, 2006 2:19 am

I hope this is appropriate. If you need any other information please let me know.

Cheers,

John
brine
 
Posts: 5
Joined: Thu Nov 23, 2006 5:59 am

Postby asmecher » Fri Nov 24, 2006 7:59 am

Hi John,

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.

Regards,
Alec Smecher
Open Journal Systems Team
asmecher
 
Posts: 8860
Joined: Wed Aug 10, 2005 12:56 pm

Postby asmecher » Tue Nov 28, 2006 5:39 pm

Hi all,

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.

Regards,
Alec Smecher
Open Journal Systems Team
asmecher
 
Posts: 8860
Joined: Wed Aug 10, 2005 12:56 pm

CVS Download

Postby ramon » Thu Nov 30, 2006 1:30 pm

Alec,

I just downloaded the CVS from ojs2 and it is displaying this error message:
Code: Select all
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.
ramon
 
Posts: 931
Joined: Wed Oct 15, 2003 6:15 am
Location: Brasí­lia/DF - Brasil

Postby asmecher » Thu Nov 30, 2006 7:12 pm

Hi Ramon,

Delete the extra blank line at the very end of lib/adodb/adodb-xmlschema.inc.php; this has been committed to CVS.

Regards,
Alec
asmecher
 
Posts: 8860
Joined: Wed Aug 10, 2005 12:56 pm


Return to OJS Technical Support

Who is online

Users browsing this forum: No registered users and 4 guests