CVS Commit Overview for 2008-03-09
==================================
2008-03-09 Nicholas Robinson <[email protected]>
* modules/websubmit/lib/functions/Update_Approval_DB.py: Fixed a
variable-name error.
2008-03-09 Nicholas Robinson <[email protected]>
* modules/miscutil/sql/tabfill.sql: + Added "decision_file"
parameter to functions "Update_Approval_DB", "Send_APP_Mail" and
"Print_Success_APP". + Added "comments_file" parameter to function
"Send_APP_Mail".
2008-03-09 Nicholas Robinson <[email protected]>
* modules/miscutil/demo/democfgdata.sql: Added the configuration
information for two new demo submissions: + "Demo Textual
Document Submission" (DEMOTXT); + "Demo Book Submission
(Refereed)" (DEMOBOO);
2008-03-09 Nicholas Robinson <[email protected]>
* modules/websubmit/lib/functions/Send_APP_Mail.py: + Corrected a
bug encountered when using a regexp to search in the report-
number for category. (If <CATEG> wasn't in the string, i.e. there
is no category in the report number, a non-existent match-group
was referenced.) + Added two new parameters: - decision_file
The name of the file in which the referee's decision is stored.
Previously, it looked for the hard-coded filename
"decision", which meant that the form element for the
referee's decision had to be called 'decision'. Not nice -
now the admin can call it whatever (s)he wants, e.g.
"DEMOBOO_DESCN" in the ATLANTIS Demo Book submission. For
backward-compatibility reasons, if no value is provided for
the "decision_file" parameter, the function will look for
"decision". - comments_file The name of the file in
which the referee's comments are stored. Previously, it
looked for the hard-coded filename "COM", which meant that
the form element for the referee's comments had to be called
"COM". Not nice - now the admin can call it whatever (s)he wants,
e.g. "DEMOBOO_COMNT" in the ATLANTIS Demo Book submission.
For backward-compatibility reasons, if no value is provided
for the "comments_file" parameter, the function will look
for "COM".
2008-03-09 Nicholas Robinson <[email protected]>
* modules/websubmit/lib/functions/Print_Success_APP.py: Wanted to
add a new parameter "decision_file", because the function
previously looked for the hard-coded filename "decision", which
meant that any referee's decision field on the form had to be
called "decision". Anyway, because the function was so short, and
a mess, I decided to rewrite it. Sadly, it's still not perfect
because it needs to make use of the global variable "rn" in the
message. Although it now has some exception-registering, it still
needs work in the situation where it wasn't possible to read from
the referee's decision file at all, yet should still return a
message to be deisplayed in the user's browser (I'd have liked to
have raised an InvenioWebSubmitFunctionWarning there, but that
would prevent the return of a string for the user. So, this needs
to be touched-up at some point . . . )
2008-03-09 Nicholas Robinson <[email protected]>
* modules/websubmit/etc/Makefile.am: Added the bibconvert
configuration templates for record-creation in the new DEMOTXT and
DEMOBOO submissions.
2008-03-09 Nicholas Robinson <[email protected]>
* modules/websubmit/etc/DEMOTHE.tpl: Corrected the definition of
the "day" field of the "DEMOTHE_DATE" element.
2008-03-09 Nicholas Robinson <[email protected]>
* modules/websubmit/etc/DEMOBOO.tpl,
modules/websubmit/etc/DEMOTXT.tpl,
modules/websubmit/etc/DEMOTXTcreate.tpl,
modules/websubmit/etc/DEMOTXTmodify.tpl,
modules/websubmit/etc/DEMOBOOcreate.tpl,
modules/websubmit/etc/DEMOBOOmodify.tpl: First versions of the
bibconvert configuration templates for the new "DEMOTXT" and
"DEMOBOO" submissions.
2008-03-09 Nicholas Robinson <[email protected]>
* modules/websubmit/web/publiline.py: Deprecated the following 3
functions: + getInfo + getInPending + getInAlice
They basically search for details of an item that has at some point
been submitted for referee-approval. getInPending looks for those
details in the WebSubmit pending dir, whereas getInAlice looks for
the details in the CDS Invenio repository. getInfo was some glue
that first called getInPending, then getInAlice if that failed to
find anything.
The way they were used was like this:
try: (authors,title,sysno,newrn) = getInfo(doctype,categ,RN)
except TypeError: return _("Unable to display document.")
It's ugly because the function(s) either returns a 4-element tuple
or integer 0, catching a type-error to realise that it found
nothing.
Another problem (the major motivation for these changes) was that
"getInPending" searches in the pending directory for the following
hard-coded filenames: + TI + TIF + AU + SN This basically
means that the Invenio admin isn't free to call her form fields for
title, etc as she likes, which isn't very nice. To get around this,
I added 3 new functions: + get_pending_item_details (replaces
getInfo) + get_brief_doc_details_from_pending (replaces
getInPending) + get_brief_doc_details_from_repository (replaces
getInAlice)
The idea is that in the "submit" stage of the item, a WebSubmit
function "Make_Dummy_MARC_XML_Record" should be called. This will
create a MARC XML record containing the metadata. This record can
then be parsed here, and fields like title, authors, etc extracted
from it.
For backward compatibility reasons, "get_pending_item_details"
fails to find anything, the old "getInfo" is called. This should
probably be removed though.
--
CDS Invenio Developers <[email protected]>