Page Menu
Home
c4science
Search
Configure Global Search
Log In
Files
F91497842
Is_Referee.py
No One
Temporary
Actions
Download File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Award Token
Subscribers
None
File Metadata
Details
File Info
Storage
Attached
Created
Mon, Nov 11, 16:43
Size
2 KB
Mime Type
text/x-python
Expires
Wed, Nov 13, 16:43 (1 d, 23 h)
Engine
blob
Format
Raw Data
Handle
22272459
Attached To
R3600 invenio-infoscience
Is_Referee.py
View Options
## $Id$
## This file is part of CDS Invenio.
## Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007, 2008 CERN.
##
## CDS Invenio is free software; you can redistribute it and/or
## modify it under the terms of the GNU General Public License as
## published by the Free Software Foundation; either version 2 of the
## License, or (at your option) any later version.
##
## CDS Invenio is distributed in the hope that it will be useful, but
## WITHOUT ANY WARRANTY; without even the implied warranty of
## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
## General Public License for more details.
##
## You should have received a copy of the GNU General Public License
## along with CDS Invenio; if not, write to the Free Software Foundation, Inc.,
## 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
__revision__
=
"$Id$"
from
invenio.config
import
CFG_SITE_SUPPORT_EMAIL
from
invenio.dbquery
import
run_sql
from
invenio.access_control_engine
import
acc_authorize_action
from
invenio.websubmit_config
import
InvenioWebSubmitFunctionStop
def
Is_Referee
(
parameters
,
curdir
,
form
,
user_info
=
None
):
global
uid_email
,
sysno
,
rn
,
uid
doctype
=
form
[
'doctype'
]
# Get document category
res
=
run_sql
(
"SELECT categ FROM sbmAPPROVAL WHERE rn=
%s
"
,
(
rn
,))
if
len
(
res
)
>
0
:
categ
=
res
[
0
][
0
]
if
categ
==
"unknown"
:
## FIXME: This was necessary for document types without categories,
## such as DEMOBOO:
categ
=
"*"
else
:
categ
=
""
# Try to retrieve the referee's email from the referee's database
(
auth_code
,
auth_message
)
=
acc_authorize_action
(
user_info
,
"referee"
,
doctype
=
doctype
,
categ
=
categ
)
if
auth_code
!=
0
:
raise
InvenioWebSubmitFunctionStop
(
"""
<SCRIPT>
document.forms[0].action="/submit";
document.forms[0].curpage.value = 1;
document.forms[0].step.value = 0;
document.forms[0].submit();
alert('Sorry you (%s) have not been recognized as a referee for this type of document.\\nIf you think this is an error, please contact %s');
</SCRIPT>"""
%
(
uid_email
,
CFG_SITE_SUPPORT_EMAIL
))
return
""
Event Timeline
Log In to Comment