Trying to get MOL project XML to a point where it's possible to write the search and other remaining features effectively, without having to keep working around all the issues with markup. Time is pressing.
One feature of the existing site is a page which shows all the literary reference fragments (nested text elements from documents inside the /data/litref
subcollection) which reference a particular location. This should be straightforward to do. We could catch URLs like this:
litref_BLAH.htm
and redirect them to litref.xql
, passing the second component of the URL as a parameter. The XQuery would then construct a simple page showing the references concerned.
In addition, the main page-rendering index.xql
would have to check, for any given data page, whether its id is linked from any of the litref documents; if so, a Literary References link would be added to its More Info box.
JS came by to help me work out how to create an image rotator for the History site. We have two images so far from T, and we created one with those images. The main points:
- New / UVic Blocks / Media Rotator
- Choose Body rather than Banner (banner is only used on e.g. faculty home pages).
- Add your images (they should be the same size).
- Ignore the navigation stuff.
There's one gotcha: each image has to be a link to somewhere. The only way we could make it work, since we didn't want our images to link anywhere in particular, was to put in a complete hard link to the eventual page location of the site home page (where the rotator would be housed), so it would reload its own page. No idea why you can't have an image rotator that simply shows images.
We also worked out a couple of other things, including how to put an events calendar harvester into the additional content area on the right.
I've fixed and simplified many thousands of ref and name tags which were either in the old style, had now-unnecessary attributes, or were simply wrong.
There are nearly 200 remaining ref tags which appear to be possibly malformed. This is the list, including some which are obviously OK, retrieved using the XQuery below in the db admin client.
xquery version "1.0"; declare default element namespace "http://www.tei-c.org/ns/1.0"; for $r in //ref[not(contains(@target, ':')) and not(contains(@target, '../docs'))] return (concat($r/ancestor::TEI/@xml:id, ': '), $r)
ONE1: <ref target="docs/de%20Certeau,%20Practice%20of%20Everyday%20Life.pdf">.pdf</ref> ONE1: <ref target="../admin">Administrative Functions</ref> QMPS1: <ref target="TOWE5">Tower</ref> STOW35: <ref target="../index_locations.php?type=ward">Wardes</ref> STOW35: <ref target="../index_locations.php?type=ward">wardes</ref> IYKN2: <ref target="ROYA1">Burſe</ref> IYKN2: <ref target="INNE1">Inner Temple</ref> IYKN2: <ref target="LOMB1">Lumber-ſtreet</ref> CHUR3: <ref target="../guidelines_contributors.php">Guidelines for Contributors</ref> GALL2: <ref target="../guidelines_contributors.php">Guidelines for Contributors</ref> STMA20: <ref target="../guidelines_contributors.php">Guidelines for Contributors</ref> LITT2: <ref target="../render_page.php?id=LOND2&title=London Stone">London Stone</ref> LITT2: <ref target="../guidelines_contributors.php">Guidelines for Contributors</ref> HART4: <ref target="../guidelines_contributors.php">Guidelines for Contributors</ref> PUDD1: <ref target="section.php?id=C6&location=Pudding Lane">C6</ref> THAM1: <ref target="../guidelines_contributors.php">Guidelines for Contributors</ref> ELEA1: <ref target="ELEA1">Cross</ref> ELEA1: <ref target="ELEA1">Cross</ref> ELEA1: <ref target="ELEA1">Cross</ref> ELEA1: <ref target="ELEA1">Croſs</ref> ELEA1: <ref target="ELEA1">Cross</ref> ELEA1: <ref target="ELEA1">Cross</ref> ELEA1: <ref target="ELEA1">Cross</ref> ELEA1: <ref target="ELEA1">Cross</ref> ELEA1: <ref target="TAYL4" type="bibl"><hi rend="font-style: italic;">A full and compleat Anſwer</hi> Sig. A4v</ref> ELEA1: <ref target="BREN1" type="bibl">Brenner 450</ref> ELEA1: <ref target="DOWN2"><hi rend="font-style: italic;">The Down-falle of Dagon</hi> Sig. A4r</ref> ELEA1: <ref target="ELEA1">Cross</ref> ELEA1: <ref target="HARL1">Robert Harlow</ref> ELEA1: <ref target="ANDR3" type="bibl">Andrews 144-45</ref> ELEA1: <ref target="WING1">Wing</ref> ELEA1: <ref target="WING1">Wing</ref> ALDG4: <ref target="../guidelines_contributors.php">Guidelines for Contributors</ref> HOLB3: <ref target="../guidelines_contributors.php">Guidelines for Contributors</ref> LOND2: <ref target=".../render_page.php?id=ASST1">“A straunge ſighted Traueller”</ref> WCHE1: <ref target="/guidelines_contributors.php">Guidelines for Contributors</ref> KNIG1: <ref type="bibl">Kent 249</ref> KNIG1: <ref type="bibl">Thornbury 281-93</ref> LOVE1: <ref target="section.php?id=C7&location=Love Lane, Thames Street">C7</ref> GRAC1: <ref type="special" target="QMPS1">royal processional route</ref> CHEA2: <ref target="WEIN1" type="bibl">Weinreb 148</ref> CHEA2: <ref target="STOW1" type="bibl">Stow 1:324</ref> CHEA2: <ref target="STOW1" type="bibl">Stow 1:35-36</ref> CHEA2: <ref target="BEBB1" type="bibl">Bebbington 82</ref> CHEA2: <ref target="BEBB1" type="bibl">Bebbington 82</ref> CHEA2: <ref target="STOW1" type="bibl">Stow 1:265</ref> CHEA2: <ref target="BEBB1" type="bibl">Bebbington 82</ref> CHEA2: <ref target="WEIN1" type="bibl">Weinreb 148</ref> CHEA2: <ref target="STOW1" type="bibl">Stow 1:266-67</ref> CHEA2: <ref target="WEIN1" type="bibl">Weinreb 148</ref> CHEA2: <ref target="STOW1" type="bibl">Stow 1:296, 1:345-46</ref> CHEA2: <ref target="WEIN1" type="bibl">Weinreb 148</ref> BASI3: <ref target="../guidelines_contributors.php">Guidelines for Contributors</ref> SUGA1: <ref target="../guidelines_contributors.php">Guidelines for Contributors</ref> TRIN1: <ref target="../guidelines_contributors.php">Guidelines for Contributors</ref> CHEA1: <ref target="STOW1" type="bibl">John Stow, A Survey of London, 2nd ed. (London, 1603; STC #23343)</ref> QUAY1: <ref target="../section.php?id=D7">D7</ref> STOW9: <ref target="MERR2" type="bibl">Merritt, “Strype’s <hi rend="font-style: italic;">Survey</hi>”</ref> STOW9: <ref target="ARCH3" type="bibl">Archer 21</ref> THIR1: <ref target="STON2" type="bibl">“Social Mobility” 23-24</ref> THIR1: <ref target="STON2" type="bibl">24</ref> THIR1: <ref target="SHAR1" type="bibl">322</ref> BIBL1: <ref target="MANN1">PM</ref> BIBL1: <ref target="#WEIN2">3rd edition</ref> ALDG3: <ref target="../guidelines_contributors.php">Guidelines for Contributors</ref> BENB1: <ref target="../guidelines_contributors.php">Guidelines for Contributors</ref> GREE2: <ref target="../guidelines_contributors.php">Guidelines for Contributors</ref> LIME2: <ref target="../guidelines_contributors.php">Guidelines for Contributors</ref> TRAN1: <ref target="../index_locations.php?type=church">Pariſhes</ref> TRAN1: <ref target="../index_locations.php?type=church">Pariſhes</ref> WRES1: <ref target="../guidelines_contributors.php">Guidelines for Contributors</ref> guidelines_contributors: <ref target="#suggestedSources">bibliography below</ref> guidelines_contributors: <ref target="#suggestedSources">bibliography below</ref> guidelines_contributors: <ref target="#citationGuide">Citation Guide</ref> guidelines_contributors: <ref target="#citationGuide">MoEML Citation Guide</ref> guidelines_contributors: <ref target="#citationGuide">MoEML Citation Guide</ref> guidelines_contributors: <ref target="#citationGuide">MoEML Citation Guide</ref> guidelines_contributors: <ref target="#citationGuide">MoEML Citation Guide</ref> class_520_1: <ref target="docs/Kagan_Urbs_and_Civitas.pdf">.pdf</ref> class_520_1: <ref target="docs/de_Certeau_Practice_of_Everyday_Life.pdf">.pdf</ref> class_520_1: <ref target="../admin">Administrative Functions</ref> index_moeml: <ref target="street_index.htm">Streets</ref> index_moeml: <ref target="site_index.htm">Sites</ref> index_moeml: <ref target="church_index.htm">Churches</ref> index_moeml: <ref target="topography_index.htm">Topographical Features</ref> index_moeml: <ref target="ward_index.htm">Wards</ref> index_moeml: <ref target="people_index.htm">People</ref> index_moeml: <ref target="litref_index.htm">Dramatic References</ref> index_moeml: <ref target="companies_index.htm">Livery Companies</ref> index_moeml: <ref target="neighbourhood_index.htm">Neighbourhoods</ref> pedagogical: <ref target="render_page.php?id=QMPS1"><title level="m">The Quenes Majesties Progress</title></ref> pedagogical: <ref target="citing.php">cite it appropriately</ref> links: <ref target="../index_companies.php">Livery Companies</ref> teaching: <ref target="docs/Jenstad_London_Grad_Course_2005.pdf">Syllabus (.pdf file)</ref> teaching: <ref target="docs/Clark_London_Theatre_Syllabus_2008.doc">Syllabus (.doc file).</ref> teaching: <ref target="docs/Early_Texts_Assignment.doc">.doc file</ref> teaching: <ref target="jenstad.php">Janelle Jenstad</ref>
I'm just posting two snippets of XInclude code that keep being expanded when I'm not looking, either by oXygen when doing search-and-replace operations or by eXist over WebDAV. They're here so I can copy/paste them back into place if it happens again.
From /data/info/sources.xml:
<!-- This XInclude tag causes the main bibliography document, BIBL1.xml, to be imported into this file, where it will be processed during output. --> <listBibl xml:id="fullBibliography"> <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="/db/data/BIBL1.xml" xpointer="xpointer(//bibl)"> <xi:fallback><p>Unable to find bibliography elements in the BIBL1.xml file.</p></xi:fallback> </xi:include> </listBibl>
From /data/info/credits.xml:
<listPerson type="contributorList"> <!-- This XInclude tag causes a set of <person type="cont"> elements from the file PERS1.xml, to be imported into this file, where they will be processed during output. --> <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="/db/data/PERS1.xml" xpointer="xpointer(//person[persName[@type='cont']])"> <xi:fallback><p>Unable to find people in the PERS1.xml file.</p></xi:fallback> </xi:include> </listPerson>
Courses page - Spring courses:
Received request from SA (RS) to change instructor's name for Spring course RS200B.
Change completed; sent SA email confirming change made
To render a structure like this :
<fieldset id="search-poem">
<legend>Poem</legend>
<div class="input text">
<label for="poem-title">Title</label>
<input type="text" name="poem-title" value="" />
</div>
<div class="input text">
<label for="poem-translator">Translator</label>
<input type="text" name="poem-translator" value="" />
</div>
</fieldset>
so the left side of the input elements are aligned. You need something like this (the inline-block is the critical item, the min-width needs to be adjusted depending on the size of the texts in the labels)
fieldset label {
min-width:9em;
display:inline-block;
text-align:right;
margin-right:0.5em;
}
Pretty conventional, I'm just posting it to save me some looking next time I need it.
JN added the code to generate the form, and a page with an invocation for an advanced search function in the Victorian Poetry Network site. I added a few bits of CSS to tweak the appearance:
- In wp-content/plugins/vpn-search/vpn-search.css I created four selectors "fieldset", "fieldset div.text", "fieldset label" and "fieldset input[type='submit']"); the last two are the two that really matter.
- In wp-content/plugins/vpn-search/form_advanced.php I added a fieldset around the submit button just for visual consistency
I then added a crude link to the advanced search page (advanced search) in the form.php file which generates the simple search form. I'm not super familiar with Jamie's code and more significantly with the implications of working in the WordPress context, so I'm looking into how to write a more elegant link (e.g. one that preserves the state of the fields in the advanced search form) and whether that's done manually or through the CMS.
<g>
tags that are not in context of an abbreviation.
EDIT by MDH: This has been fixed.On late duty.