root/main/trunk/model-cols-dev/peijones/etc/collectionConfig.bak @ 24821

Revision 24821, 19.6 KB (checked in by papitha, 8 years ago)

UserTest? changes made to Annotator and PhotoNote?

  • Property svn:executable set to *
Line 
1<?xml version="1.0" encoding="UTF-8"?>
2<CollectionConfig xmlns:gsf="http://www.greenstone.org/greenstone3/schema/ConfigFormat" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
3    <metadataList>
4        <metadata lang="en" name="creator"/>
5        <metadata lang="en" name="maintainer"/>
6        <metadata lang="en" name="public">true</metadata>
7    </metadataList>
8    <displayItemList>
9        <displayItem assigned="true" lang="en" name="name">Pei-Jones-Flat</displayItem>
10    </displayItemList>
11    <search type="mgpp">
12        <level name="document">
13            <displayItem lang="en" name="name">document</displayItem>
14        </level>
15        <level name="section">
16            <displayItem lang="en" name="name">section</displayItem>
17        </level>
18        <defaultLevel name="section"/>
19        <index name="text">
20            <displayItem lang="en" name="name">text</displayItem>
21        </index>
22        <index name="Title">
23            <displayItem lang="en" name="name">titles</displayItem>
24        </index>
25        <index name="Source">
26            <displayItem lang="en" name="name">filenames</displayItem>
27        </index>
28        <index name="Plugin"/>
29        <defaultIndex name="text"/>
30        <indexOption>
31            <option name="accentfold"/>
32            <option name="casefold"/>
33            <option name="stem"/>
34        </indexOption>
35        <searchType name="plain"/>
36        <searchType name="simpleform"/>
37        <searchType name="advancedform"/>
38        <format><gsf:template match="documentNode"><td valign="top"><gsf:link type="document"><gsf:icon type="document"/></gsf:link></td><td><gsf:switch><gsf:metadata name="Title" select="ancestors" separator=": "/><gsf:when test="exists"><gsf:metadata name="Title" select="ancestors" separator=": "/>:</gsf:when></gsf:switch><gsf:link type="document"><gsf:metadata name="Title"/></gsf:link></td></gsf:template> </format>
39    </search>
40    <infodb type="gdbm"/>
41    <import>
42        <pluginList>
43            <plugin name="ZIPPlugin"/>
44            <plugin name="GreenstoneXMLPlugin"/>
45            <plugin name="TextPlugin"/>
46            <plugin name="HTMLPlugin"/>
47            <plugin name="EmailPlugin"/>
48            <plugin name="PDFPlugin"/>
49            <plugin name="RTFPlugin"/>
50            <plugin name="WordPlugin"/>
51            <plugin name="PostScriptPlugin"/>
52            <plugin name="PowerPointPlugin"/>
53            <plugin name="ExcelPlugin"/>
54            <plugin name="ImagePlugin"/>
55            <plugin name="ISISPlugin"/>
56            <plugin name="NulPlugin"/>
57            <plugin name="OAIPlugin"/>
58            <plugin name="HTMLImagePlugin"/>
59            <plugin name="MetadataXMLPlugin"/>
60            <plugin name="ArchivesInfPlugin"/>
61            <plugin name="DirectoryPlugin"/>
62        </pluginList>
63    </import>
64    <browse>
65        <classifier name="List">
66            <option name="-metadata" value="dc.Title;Title"/>
67            <option name="-partition_type_within_level" value="approximate_size"/>
68            <option name="-bookshelf_type" value="never"/>
69        </classifier>
70        <classifier name="AZCompactList">
71            <option name="-metadata" value="Source"/>
72            <option name="-removesuffix" value="(?i)\\..*"/>
73            <option name="-buttonname" value="Source"/>
74        </classifier>
75        <format><gsf:template match="documentNode">     <td valign="top">      <gsf:link type="document">       <gsf:icon type="document"/>      </gsf:link>     </td>     <td valign="top">      <gsf:link type="source">       <gsf:choose-metadata>        <gsf:metadata name="thumbicon"/>        <gsf:metadata name="srcicon"/>       </gsf:choose-metadata>      </gsf:link>     </td>     <td valign="top">      <gsf:choose-metadata>       <gsf:metadata name="dc.Title"/>       <gsf:metadata name="exp.Title"/>       <gsf:metadata name="Title"/>       <gsf:default>Untitled</gsf:default>      </gsf:choose-metadata>      <gsf:switch>       <gsf:metadata name="Source"/>       <gsf:when test="exists">        <br/><i>(<gsf:metadata name="Source"/>)</i>       </gsf:when>      </gsf:switch>     </td>    </gsf:template>        <gsf:template match="classifierNode">     <td valign="top">      <gsf:link type="classifier">       <gsf:icon type="classifier"/>      </gsf:link>     </td>     <td valign="top">      <gsf:metadata name="srclink"/>      <gsf:choose-metadata>       <gsf:metadata name="thumbicon"/>       <gsf:metadata name="srcicon"/>      </gsf:choose-metadata>      <gsf:metadata name="/srclink"/>     </td>     <td valign="top">      <gsf:choose-metadata>       <gsf:metadata name="dc.Title"/>       <gsf:metadata name="exp.Title"/>       <gsf:metadata name="Title"/>       <gsf:default>Untitled</gsf:default>      </gsf:choose-metadata>      <gsf:switch>       <gsf:metadata name="Source"/>       <gsf:when test="exists">        <br/><i>(<gsf:metadata name="Source"/>)</i>       </gsf:when>      </gsf:switch>     </td>    </gsf:template>        <gsf:template match="classifierNode" mode="horizontal">     <gsf:link type="horizontal">      <gsf:metadata name="Title"/>     </gsf:link>    </gsf:template>   </format>
76    </browse>
77    <display>
78        <format><gsf:option name="sideBar" value="false"/>    <xsl:template name="additionalHeaderContent">     <#comment/>     <script src="sites/localsite/collect/peijones/js/annotator/lib/vendor/jquery.js"><xsl:text> </xsl:text></script>      <#comment/>     <script src="sites/localsite/collect/peijones/js/annotator/lib/vendor/json2.js"><xsl:text> </xsl:text></script>      <script src="sites/localsite/collect/peijones/js/annotator/pkg/annotator-full.min.js"><xsl:text> </xsl:text></script>     <#comment/>     <#comment/>      <#comment/>     <link href="sites/localsite/collect/peijones/js/annotator/pkg/annotator.min.css" rel="stylesheet" type="text/css"/>      <#comment/>      <#comment/>     <#comment/>      <#comment/>     <#comment/>     <#comment/>     <#comment/>      <#comment/>     <#comment/>      <#comment/>     <#comment/>     <#comment/>           <#comment/>     <script src="sites/localsite/collect/peijones/js/documentmaker/BrowserDetect.js" type="text/javascript"><xsl:text> </xsl:text></script>     <script src="sites/localsite/collect/peijones/js/documentmaker/PhotoNotes-1.5.js" type="text/javascript"><xsl:text> </xsl:text></script>     <link href="sites/localsite/collect/peijones/style/PhotoNotes-1.5.css" rel="stylesheet" type="text/css"/>          <#comment/>     <#comment/>     <script src="sites/localsite/collect/peijones/js/documentmaker/zoomer.jquery.js" type="text/javascript"><xsl:text> </xsl:text></script>    <link href="sites/localsite/collect/peijones/style/style.css" rel="stylesheet" type="text/css"/>     <script type="text/javascript">      <xsl:text disable-output-escaping="yes">       _zoomEnabled = true;       function readyImagesForZoom()             {         var noZoom = document.getElementById("noZoom");        var wrap = document.getElementById("wrap");        if(!noZoom || !wrap)        {         return;        }        var smallImageDiv = document.getElementById("small");        var smallImage = smallImageDiv.getElementsByTagName("img")[0];        smallImageDiv.style.width = smallImageWidth + "px";         smallImageDiv.style.height = smallImageHeight + "px";        var multiplier = largeImageHeight / smallImageHeight;        $("#wrap").anythingZoomer({                 expansionSize:50,           speedMultiplier:multiplier           });             noZoom.onclick = function(){addZoom();}        document.getElementById("overlay").onclick = function(){removeZoom();}                       removeZoom();       }                   function addZoom()         {        if(!_zoomEnabled)        {         return;        }                var wrapper = document.getElementById("wrap");          var noZoom = document.getElementById("noZoom");                 if(!noZoom || !wrapper)        {         return;        }                noZoom.style.display = "none";          wrapper.style.display = "block";         var option = document.getElementById("zoomOption");        if(option)        {         option.setAttribute("onclick", "removeZoom();");          }       }                  function removeZoom()       {        if(!_zoomEnabled)        {         return;        }               var wrapper = document.getElementById("wrap");        var noZoom = document.getElementById("noZoom");                if(!noZoom || !wrapper)        {         return;        }                wrapper.style.display = "none";        noZoom.style.display = "block";        var option = document.getElementById("zoomOption");        if(option)        {         option.setAttribute("onclick", "addZoom();");        }       }          </xsl:text>         </script>     <script text="text/javascript">      <xsl:text disable-output-escaping="yes">              var _posCount = 0;       var _notes;       function initNotes()       {        /* create the Photo Note Container */        _notes = new PhotoNoteContainer(document.getElementById("noZoom"));        getNotes();       }              function deleteFunction(note)       {        var callback =        {         success: function(response)         {          var updateURL = gs.siteMetadata.siteURL.replace("8080","9090") + gs.xsltParams.library_name + "?a=s&sa=c";                   var updateCallback =           {           success: function(response){},           failed: function(){alert("Failed in deleteFunction() to update Greenstone server with: " + updateURL);}          };                        YAHOO.util.Connect.asyncRequest("GET", updateURL, updateCallback);         },         failed: function(){ alert("Failed in deleteFunction() with note id: " + note.id)},        };                var status = true;                if (note && note.id && note.id > 0) {         var metaposStr =  note.id - 1;                 var url = gs.siteMetadata.siteURL.replace("8080","9090") + "cgi-bin/metadata-server.pl?a=remove-metadata&site=localsite&c=" + gs.cgiParams.c + "&d=" + gs.cgiParams.d + "&metaname=gsimg.photoNote&metapos=" + metaposStr;         YAHOO.util.Connect.asyncRequest("GET", url, callback);        }        else {         alert("Failed to find valid note data to delete");         status = false;        }                return status;       }              function saveFunction(note)       {        var callback =         {         success: function(response)         {          var updateURL = gs.siteMetadata.siteURL.replace("8080","9090") + gs.xsltParams.library_name + "?a=s&sa=c";                   var updateCallback =           {           success: function(response){},           failed: function(reponse){ alert("Failed in saveFunction() to update Greenstone server with: " + updateURL);}          };                              YAHOO.util.Connect.asyncRequest("GET", updateURL, updateCallback);         },         failed: function(reponse){ alert("Failed in saveFunction() with note id: " + note.id)},        };                var jsonVal = '{"caption":"' + note.text + '", "area":{"x":' + note.rect.left + ', "y":' + note.rect.top + ', "width":' + note.rect.width + ', "height":' + note.rect.height + '}}';        var metaposStr = (note && note.id && note.id > 0) ? note.id - 1 : _posCount;                var saveURL = gs.siteMetadata.siteURL.replace("8080","9090") + "cgi-bin/metadata-server.pl?a=set-metadata&site=localsite&c=" + gs.cgiParams.c + "&d=" + gs.cgiParams.d + "&metaname=gsimg.photoNote&metavalue=" + jsonVal + "&metapos=" + metaposStr;        YAHOO.util.Connect.asyncRequest("GET", saveURL, callback);                return 1;       }                  function getNotes()       {        if(gs.variables.photoNotes == null || gs.variables.photoNotes == undefined)        {         console.log("No photo notes");         return;        }                for(var i = 0; i < gs.variables.photoNotes.length; i++)        {         var note = gs.variables.photoNotes[i];         if(!note)         {          continue;         }         var newNote = new PhotoNote(note.caption, i+1, new PhotoNoteRect(note.area.x,note.area.y,note.area.width,note.area.height));         newNote.onsave = saveFunction;         newNote.ondelete = deleteFunction;         _notes.AddNote(newNote);         _posCount++;        }                addNoteOverAndOutHandlers();       }              function AddNote()       {        var newNote = new PhotoNote('Add note text here...',_posCount+1,new PhotoNoteRect(10,10,50,50));        newNote.onsave = saveFunction;        newNote.ondelete = deleteFunction;        _notes.AddNote(newNote);        _posCount++;                addNoteOverAndOutHandlers();        newNote.Select();       }              function addNoteOverAndOutHandlers()       {        var divs = document.getElementsByTagName("DIV");        for(var i = 0; i < divs.length; i++)        {         if(divs[i].getAttribute("class") && divs[i].getAttribute("class").search("fn-area") != -1)         {          divs[i].onmouseover = function(){_zoomEnabled = false;}          divs[i].onmouseout = function(){_zoomEnabled = true;}         }        }       }              window.onload = function(){initNotes(); readyImagesForZoom(); initAnnotator();};      </xsl:text>     </script>          <script text="text/javascript">      <xsl:text disable-output-escaping="yes">       function initAnnotator()       {          jQuery(function ($) {         if (typeof $.fn.annotator !== 'function') {          alert("Ooops! it looks like you haven't built the Annotator concatenation file. " + "Either download a tagged release from GitHub, or modify the Cakefile to point " + "at your copy of the YUI compressor and run `cake package`.");         } else {           /*          jQuery('#gs-document-text').annotator()          .annotator('addPlugin', 'Store', {           prefix: 'http://annotateit.org/api',           annotationData: {'uri':document.URL}          })          .annotator('addPlugin', 'Auth', {           userId: 'papitha',          // Your AnnotateIt username           consumerKey: '39fc339cf058bd22176771b3e33c5dac',           // Your Account Key           authToken: '852b7fc25396d2aedf9aeb44dd58518faa679dbf027892164bfb81900bd09741' // Your Auth Token          });          */            jQuery(function ($) {           // Include AnnotateIt credentials to load the store plugin.           $('#gs-document-text').annotator().annotator('setupPlugins', {            userId:    'papitha',            userName:  'Papitha',            accountId: '39fc339cf058bd22176771b3e33c5dac',            authToken: '852b7fc25396d2aedf9aeb44dd58518faa679dbf027892164bfb81900bd09741',            }, {            //Store: {annotationData: {'uri':document.URL}}           });          });         }        });       }      </xsl:text>     </script>    </xsl:template>        <xsl:template name="documentImage">     <#comment/>     <gsf:variable-struct name="photoNotes">      <gsf:metadata multiple="true" name="gsimg.photoNote" separator=", "/>     </gsf:variable-struct>          <#comment/>     <h3>         <gsf:choose-metadata>       <gsf:metadata name="dc.Title"/>       <gsf:metadata name="ex.Title"/>      </gsf:choose-metadata>     </h3>     <xsl:variable name="imageWidth">      <gsf:choose-metadata>       <gsf:metadata name="ImageWidth"/>        <gsf:default>-1</gsf:default>              </gsf:choose-metadata>     </xsl:variable>     <xsl:variable name="imageHeight">      <gsf:choose-metadata>       <gsf:metadata name="ImageHeight"/>        <gsf:default>-1</gsf:default>              </gsf:choose-metadata>     </xsl:variable>     <xsl:variable name="screenImageWidth">      <gsf:choose-metadata>       <gsf:metadata name="ScreenWidth"/>        <gsf:default>-1</gsf:default>              </gsf:choose-metadata>     </xsl:variable>     <xsl:variable name="screenImageHeight">      <gsf:choose-metadata>       <gsf:metadata name="ScreenHeight"/>        <gsf:default>-1</gsf:default>              </gsf:choose-metadata>     </xsl:variable>     <script type="text/javascript">      <xsl:text>largeImageHeight =</xsl:text><xsl:value-of select="$imageHeight"/><xsl:text>;</xsl:text>      <xsl:text>largeImageWidth =</xsl:text><xsl:value-of select="$imageWidth"/><xsl:text>;</xsl:text>      <xsl:text>smallImageHeight =</xsl:text><xsl:value-of select="$screenImageHeight"/><xsl:text>;</xsl:text>      <xsl:text>smallImageWidth =</xsl:text><xsl:value-of select="$screenImageWidth"/><xsl:text>;</xsl:text>     </script>     <div id="noZoom" style="display:block;">      <gsf:metadata name="screenicon"/>     </div>     <#comment/>      <div id="wrap" style="display:none; width: {$screenImageWidth}; height: {$screenImageHeight};">       <div id="small" style="width: {$screenImageWidth}; height: {$screenImageHeight};"><gsf:metadata name="screenicon"/></div>       <div id="mover">        <div id="overlay"><xsl:text> </xsl:text></div>        <div id="large">         <img style="width: {$imageWidth}; height: {$imageHeight};">          <xsl:attribute name="src">           <xsl:value-of disable-output-escaping="yes" select="/page/pageResponse/collection/metadataList/metadata[@name='httpPath']"/>/index/assoc/<gsf:metadata name="assocfilepath"/>/<gsf:metadata name="srclinkFile"/>          </xsl:attribute>         </img>        </div>       </div>      </div>      <input onclick="AddNote();" style="margin-left:30px;" type="button" value="Tag Photo!"/>     <#comment/>    </xsl:template>       </format>
79    </display>
80    <replaceListRef id="gs2-standard"/>
81    <replaceListRef id="gs2-image"/>
82    <serviceRackList>
83        <!-- comment out the following serviceRack if you want to disable OAI for this collection -->
84        <serviceRack name="OAIPMH">
85            <ListMetadataFormats>
86                <!--What metadata sets to support is collection specific. To support other metadata schema, simply add a metadataFormat element here.
87    The support of unqualified Dublin Core metadata set is mandatory in the oai specification.
88    -->
89                <metadataFormat metadataPrefix="oai_dc">
90                    <metadataPrefix>oai_dc</metadataPrefix>
91                    <schema>http://www.openarchives.org/OAI/2.0/oai_dc.xsd</schema>
92                    <metadataNamespace>http://www.openarchives.org/OAI/2.0/oai_dc/</metadataNamespace>
93                    <!--<metadataElements>dc.Title,dc.Creator,dc.Subject,dc.Description,dc.Publisher,dc.Contributor,dc.Date,dc.Type,dc.Format,dc.Identifier,dc.Source,dc.Language,dc.Relation,dc.Coverage,dc.Rights</metadataElements>             
94      -->
95                    <mappingList>
96                        <!--
97        The mapping is in the form: <publicly supported metadata name>,<mapped metadata name>, short as <A>,<B>
98        The first metadata name is medatory; if there is no mapped name followed, then the first name must be used by the records and
99        searchable in the database, otherwise it is the mapped name stored in the database. The number of mapping elements matches the
100        number of external metadata of the records. If only one name is present, the returned metadata will use this name plus the retrieved value;
101        if both <A>,<B> are present, the returned metadata will use <A>'s name plus <B>'s value retrieved from database.
102       
103        **Bear in mind: if this mapping list is not present, the standard dc. metadata names (15 in total) will be used to retrieve metadata in the database.
104       
105        **The only case when this mapping is not present is that: 1. this metadata format is oai_dc; 2. the metadata is also stored in the database by Dublin Core's names.
106        -->
107                        <mapping>dc.Title,Title</mapping>
108                        <!-- This mapping example means that the dc.Title is requested and the value of the metadata Title, which is used in this repository, is returned as response. -->
109                    </mappingList>
110                </metadataFormat>
111            </ListMetadataFormats>
112        </serviceRack>
113    </serviceRackList>
114</CollectionConfig>
Note: See TracBrowser for help on using the browser.