A new review came in -- quite straightforward, now marked up and ready for proofing.
526 new images (in three different sizes) have been added to the collection. These cover the Entrybooks of Correspondence for BC, 1858-1861. They are currently being linked into the transcription documents.
Added bios and abstracts to the Lectures page for the first three lectures (although we're still missing an abstract for the first one).
The website is located at: http://francotoile.uvic.ca
... which is a virtual host that points to: http://pear.hcmc.uvic.ca:8081/francotoile/francotoile/index.xql
the FrancoToile app lives in the webapps-dev directory on Pear. All of the non-essential web interfaces (the admin interface, eXide, the help docs, etc.) have been erased from the app to limit the possibility of unauthorized access.
To connect to the database: see the ODT file for connection information.
The eXist version of the site uses much of the same HTML/CSS from the PHP version, as done by Pat Szpak.
State of the Website
The site is complete aside from the odd tweak and language-related fix that Catherine sends in. All of the features work, the code is documented, and everything is running smoothly.
The Bookmarking System
(taken from: http://hcmc.uvic.ca/blogs/index.php?blog=12&p=8271&more=1&c=1&tb=1&pb=1 )
Adding a Bookmark
When a user adds a bookmark, an AJAX request with the video ID, the timestamp, and any optional comments is sent to plugins/bookmarks/ajax/add.xql. This XQuery script returns a JSON object with the ID (i.e. bookmark/@n) of the new bookmark, the timestamp, and the comments if applicable. The add.xql script actually returns XML that is passed through the eXist JSON serializer:
declare option exist:serialize "method=json media-type=text/javascript";
If the bookmark can't be added, which happens if the video ID is invalid, then a 500 error is returned.
Upon successful addition, the JSON response object is parsed by the calling Javascript, which adds a list element to the ordered list of bookmarks.
Deleting a Bookmark
Deleting a bookmark (clicking on the 'X' image next to the bookmark in the ordered list) simply removes the bookmark from the DOM. Bookmark data files are never actually deleted from the server.
Saving Bookmarks
Saving a bookmark list requires no AJAX interaction with the server. Rather, all of the bookmark IDs are gathered from the ordered list of bookmarks (each of which has an ID of bookmark-## where ## corresponds to bookmark/@n in the XML data) and then simply appended to the URL of the video page. This URL is given to the user, who can add it to their bookmark collection for later use. The ids are added as comma-separated values of a "bm" GET parameter. For example: player.xql?id=fraq1&bm=54,55,56
Loading Saved Bookmarks
When a user visits a video with a bm query string (see 'Saving Bookmarks' above), an AJAX call is sent to plugins/bookmarks/ajax/load.xql for each bookmark ID in the query string. Upon successful load of the bookmark - success means that the ID corresponds to bookmark/@n and the current video corresponds to bookmark/@videoId - a JSON-serialized XML node is returned (see 'Adding a Bookmark' above), which is then used to populate the unordered list of bookmarks.
Future Data
As stated on the blog ( http://hcmc.uvic.ca/blogs/index.php?blog=12&p=8288&more=1&c=1&tb=1&pb=1 ), the XML data files on Pomme have been moved to an inaccessible location, in the interests of maintaining a single set of up-to-date files (i.e. the ones on Pear). When Catherine is ready to start working on the site again, Pomme should be updated with the latest version of the files from the Pear eXist DB.
Thanks to GN's work and correspondence with the systems guys, http://vihistory.ca is now live with the latest version of the site.
This is actually the development version of the site: it's being run from the 'vihdev' user and the 'vihdev' PostgreSQL database. The eventual goal is to migrate the code to taprhist and the DB to viHistory, but that's a fairly low priority at the moment.
Leaving early.
EDIT by MDH 2011-12-22: I believe this task has been obviated by the proposed (and partially-implemented) change from using <argument> to using <label>. Setting this task to Completed.
Note to self: I thought I had made substantial amendments to the schema that would permit us to use <argument> inside e.g. <p>, because that's where our marginal arguments most often show up. However, in the Le Blanc text, that seems to be failing, so I need to revisit it. The text has been marked up in such a way that open ps and divs are being closed before and argument and opened again afterwards, and when I try to refactor appropriately, the code turns out not to be valid. Either the validation process is failing somehow, or the schema is not the most recent, or perhaps my modifications didn't go far enough.
I've spent quite a while this morning fixing page sizing and margin issues with the Le Blanc; this arises out of the fact that (as far as I can tell) the original page dimensions were measured from the PDF page width rather than the width of the page-image sitting inside the PDF. I think I have that problem basically solved (I had to recalculate about 400 margin-right settings).
However, we have another transformational nesting issue which is exemplified 45 times in Le Blanc, but also shows up in three other texts in the collection: <cit>/<quote> elements cross page boundaries, and therefore contain <fw> and <pb>, but in this context, <quote type="italic"> was converted into an XHTML <i> tag. Initially, I thought this was another case where we needed to split out the contents before the main transformation, but I began to re-think, because there's such a range of related phenomena, including the use of <blockquote>.
I've decided to go for even more divs and spans, eschewing more specialized XHTML elements, because it's easier to get valid structures in highly complicated documents this way; I can then control the display with CSS, making <div>s inline and <span>s block where required. This makes for valid documents (most of them validate now), which ensures that the rest of the CSS gets applied correctly.
CD brought down a visitor who's a potential PhD student for a look at the HCMC.
LCC left a detailed list of issues to address in the Le Blanc text, and I've started on the first one, which involves the markup and rendering of the title page. Some fixes will be required in XSLT, and also the markup needs a bit of reconfiguring. <titlePart> elements do not seem to be processed as expected; instead of getting <h2> and <h3> tags, they're getting block-display <span>s, and I can't yet figure out how that's happening. It means their rend attributes are not being passed through.