I. Initial Author/files handoff from EJP to DJS (Form name: EJPTODJS)
Delete this text and replace it with your own content.
|
|
|
|
|
|
|
|
|
S.no |
Description |
Name |
ID |
Type |
COC field type |
Value |
Examples |
Form structure example |
1 |
Form Type |
form_type |
form_type |
Varchar(255) |
|
always "coc_start" |
"coc_start" |
<input type="hidden" name="form_type" id="form_type" value="coc_start"> |
2 |
Manuscript Tracking Number |
ms_nm |
ms_nm |
Varchar(255) |
Varchar(16) |
2008-0023444 |
2012-00013 2012-00013R1 2012-00013R2
This is used for Author reference (this what we show in the our screen)
|
<input type="hidden" name="ms_nm" id="ms_nm" value="2008-0023444">
|
3 |
Manuscript Article Type |
ms_type |
ms_type |
Varchar(255) |
Enum |
Direct Submission |
Direct submission Feature Article PNAS Plus Letter to the Editor
|
<input type="hidden" name="ms_type" id="ms_type" value="Direct Submission">
|
4 |
Author First Name |
first_nm |
first_nm |
Varchar(100) |
Varchar(128) |
John |
|
<input type="hidden" name="first_nm" id="first_nm" value="John">
|
5 |
Author Last Name |
last_nm |
last_nm |
Varchar(100) |
Varchar(128) |
Smith |
|
<input type="hidden" name="last_nm" id="last_nm" value="Smith">
|
6 |
Corresponding Author email |
corr_email |
corr_email |
Varchar(100) |
Varchar(255) |
antony.g@sheridan.com |
|
<input type="hidden" name="corr_email" id="corr_email" value="antony.g@sheridan.com">
|
9 |
Journal ID – j_id (internal eJP Journal ID) |
j_id |
j_id |
Int/number |
Int |
23 |
|
<input type="hidden" name="j_id" id="j_id" value="23">
|
10 |
Manuscript ID ( internal eJP manuscript ID) |
ms_id |
ms_id |
Int/number |
Int |
3255 |
|
<input type="hidden" name="ms_id" id="ms_id" value="3255">
|
11 |
Manuscript Revision Number |
ms_rev_no |
ms_rev_no |
Int/number |
Int |
0 |
0 1 2 |
<input type="hidden" name="ms_rev_no" id="ms_rev_no" value="0">
|
12 |
Security time |
Mtime |
Mtime |
Int/number |
BigInt |
Time() |
|
<input type="hidden" name="mtime" id="mtime" value="1332298399">
|
13 |
Security Hash |
hash |
Hash |
Varchar(255) |
Text(65535) |
MD5 value obtained using Journal ID, Manuscript ID, Revision number, Date/time and the security string (coc). The time is the moment when the request is passed on from eJPress to COC.
#!usr/bin/perl
use strict;
use Digest::HMAC_MD5; # $time=time(); my($j_id, $ms_id, $ms_rev_no, $time) = ("23","3255","0","1332768606");
my $input = join("-",$j_id,$ms_id, $ms_rev_no, $time);
print getSecretToken($input,'coc')."\n";
sub getSecretToken() { my $input = shift; my $secret_code = shift; return Digest::HMAC_MD5::hmac_md5_hex($input, $secret_code); } |
|
<input type="hidden" name="hash" id="hash" value="5e0f5f4161ae3f9485c31caf59b4d4ad">
|
14 |
Return URL |
return_url |
return_url |
Varchar(500) |
Varchar(500) |
This URL will be different for alpha, UAT & Live http://www.pnascentral.org/cgi-bin/main.plex |
|
<input type="hidden" name="return_url" id="return_url" value="http://www.pnascentral.org/cgi-bin/main.plex"> |
15 |
Number of source files(input files) |
source_file_qty |
source_file_qty |
Int/number |
Int |
3 |
|
<input type="hidden" name="source_file_qty" id="source_file_qty" value="3">
|
16 |
Source files list |
files |
|
Varchar/tex |
mediumtext |
json object which is basically an array of hash.
Figure, Table, Article and Supplemental data are grouped under files
Object_id is the primary key for each elements (can be used for deletion and modification) |
|
<input type='hidden' name='files' value='{ list: [ { "location": "sftp://ftp.pnascentral.org/files/24/23/232342/fig_2324234_2234.doc", "modifiedtime": "03-20-2012 20:28:30", "order": "1", "title":"Article 1", "type": "Article", "object_id": "23433" },{ "location": "sftp://ftp.pnascentral.org/files/24/23/232342/fig_2324234_2235.tif", "modifiedtime": "03-20-2012 20:30:35", "order": "2", "title": "Table 1", "type": "table", "object_id": "23436", }, { "location": "sftp://ftp.pnascentral.org/files/24/23/232342/fig_2324234_2235.tif", "modifiedtime": "03-20-2012 20:30:35", "order": "3", "title": "Figure 1", "type": "Figure", "object_id": "23434", }, { "location": "sftp://ftp.pnascentral.org/files/24/23/232342/fig_2324234_2235.tif", "modifiedtime": "03-20-2012 20:30:35", "order": "4", "title": "Figure 2", "type": "Figure", "object_id": "23431", } ]}'> |
17 |
Manuscript Title |
ms_title |
ms_title |
text - 2GB |
Text(65535) |
Common genetic variants in the PSCA gene influence gene expression and bladder cancer risk |
|
<input type="hidden" name="ms_title" id="ms_title" value="Common genetic variants in the PSCA gene influence gene expression and bladder cancer risk">
|
18 |
Manuscript Abstract |
abstract |
abstract |
text – 2GB |
Text(65535) |
Abstract text texttexttext |
|
<input type="hidden" name="abstract" id="abstract" value="Abstract text texttext text">
|
19 |
Keywords |
keyword |
keyword |
Varchar(100) PER WORD |
Text(65535) |
aortic root dilatation,congestive heart failure,endothelium |
Comma separated values |
<input type="hidden" name="keyword" id="keyword" value=" aortic root dilatation,congestive heart failure,endothelium">
|
On:
- Delete
- New file
- Replace
Array comparison needs to be done. (We can use the combination of location and modified time to identify them)
EJP will create web url where we can pass the parameter of like j_id, ms_id, ms_rev_no and get back the form values (can be used for testing)
GETURL string:
Question:
- If the securityhash doesn’t match or any necessary fields are missing/empty – What should COCneed to do?
- o there will be no entry in the cocdatabase (so status check url returns not found message)
- o Should COC popup an error page to user that some message check eJP team or redirect to eJP URL (whatshould be the message? – error message if any)
- There is any limitation or restriction on the size of value we receive or we return? Example: ms_nm maximum value size is 12
- P_id (eJP internal author ID) do we need p_id for any process?
Answers:
- If the security hash does not validate, I would suggest that you treat this as an unauthorized attempt to access the system. I recommend you post a message like:
“You do not have permission to access this function, or you have entered an invalid URL. Please contact the editorial office for b) additional assistance.” - Length – see redlines above
- DJS probably does not need p_id (removed now)