Use HTML entity © since the crappy old pandoc version on caliban
[mkws-moved-to-github.git] / tools / htdocs / README.markdown
index 6dc22c2..6701ab7 100644 (file)
@@ -3,6 +3,9 @@
 % 10 July 2013
 
 
 % 10 July 2013
 
 
+Introduction
+------------
+
 This directory contains an embryonic MasterKey Widget Set. The initial
 version was based on the "jsdemo" application distributed with
 pazpar2, but it is now far removed from those beginnnings.
 This directory contains an embryonic MasterKey Widget Set. The initial
 version was based on the "jsdemo" application distributed with
 pazpar2, but it is now far removed from those beginnnings.
@@ -11,24 +14,19 @@ pazpar2, but it is now far removed from those beginnnings.
 How this works
 --------------
 
 How this works
 --------------
 
-The goal is to make it that as much of the searching functionality as
-possible is hosted on
+As much of the searching functionality as possible is hosted on
        <http://mkws.indexdata.com/>
 so that very simple websites such as
        <http://example.indexdata.com/>
 can have MasterKey searching with minimal effort.
 
        <http://mkws.indexdata.com/>
 so that very simple websites such as
        <http://example.indexdata.com/>
 can have MasterKey searching with minimal effort.
 
-The following files are hosted on mkws.indexdata.com:
+The following files are hosted on `mkws.indexdata.com`:
 
 
+* `mkws.css`
 * `mkws.js`
 * `mkws.js`
-* `mkwsStyle.css`
-* `/libjs-pz2/pz2api.1.js`
-
-The following files make up an application:
-
-* `index.html`
-* `favicon.ico` [_optional_]
-* `robots.txt` [_optional_]
+* `/pazpar2/js/pz2.js`
+* `mkws-complete.js` -- a single file consisting of `mkws.js`,
+  jQuery (which it uses), Handlebars (ditto) and `pz2.js`
 
 
 Configuring a client
 
 
 Configuring a client
@@ -40,7 +38,7 @@ whatever makes up the application itself:
 Prerequisites:
 
 ~~~
 Prerequisites:
 
 ~~~
-       <link rel="stylesheet" href="http://mkws.indexdata.com/mkwsStyle.css" />
+       <link rel="stylesheet" href="http://mkws.indexdata.com/mkws.css" />
        <script type="text/javascript" src="http://mkws.indexdata.com/mkws-complete.js"></script>
 ~~~
 
        <script type="text/javascript" src="http://mkws.indexdata.com/mkws-complete.js"></script>
 ~~~
 
@@ -66,23 +64,22 @@ possible options:
        <script type="text/javascript">
            var mkws_config = {
                use_service_proxy: true,    /* true, flase: use service proxy instead pazpar2 */
        <script type="text/javascript">
            var mkws_config = {
                use_service_proxy: true,    /* true, flase: use service proxy instead pazpar2 */
-               switch_menu: true,          /* true, false: show/hide Records|Targets menu */
-               lang_menu: true,            /* true, false: show/hide language menu */
-               sort_menu: true,            /* true, false: show/hide sort menu */
-               perpage_menu: true,         /* true, false: show/hide perpage menu */
-               lang_display: ["en", "de", "da"], /* display languages links for given
+               show_lang: true,            /* true, false: show/hide language menu */
+               show_sort: true,            /* true, false: show/hide sort menu */
+               show_perpage: true,         /* true, false: show/hide perpage menu */
+               lang_options: ["en", "de", "da"], /* display languages links for given
                                                     languages, [] for all */
                facets: ["sources", "subjects", "authors"], /* display facets, in this order, [] for none */
                sort_default: "relevance",  /* "relevance", "title:1", "date:0", "date:1" */
                query_width: 50,            /* 5..50 */
                perpage_default: 20,        /* 10, 20, 30, 50 */
                lang: "en",                 /* "en", "de", "da" */
                                                     languages, [] for all */
                facets: ["sources", "subjects", "authors"], /* display facets, in this order, [] for none */
                sort_default: "relevance",  /* "relevance", "title:1", "date:0", "date:1" */
                query_width: 50,            /* 5..50 */
                perpage_default: 20,        /* 10, 20, 30, 50 */
                lang: "en",                 /* "en", "de", "da" */
-               debug: 0,                   /* debug level for development: 0..2 */
+               debug_level: 0,         /* debug level for development: 0..2 */
 
 
-               responsive_design: false    /* true, false: resize for smaller mobile devices */
-               pazpar2_url: "/pazpar2/search.pz2",        /* URL */
-               service_proxy_url: "/service-proxy/",      /* URL */
+               responsive_design_wodth: 600,    /* page reflows for devices < 600 pixels wide */
+               pazpar2_url: "/service-proxy/",            /* URL */
                service_proxy_auth: "/service-proxy-auth", /* URL */
                service_proxy_auth: "/service-proxy-auth", /* URL */
+               // TODO: language_*, perpage_options, sort_options
            };
        </script>
 ~~~
            };
        </script>
 ~~~
@@ -104,7 +101,7 @@ Here is an example of all possible options
        jQuery.pazpar2({
            "layout": "popup",               /* "table" [default], "div", "popup" */
            "id_button": "input#mkwsButton", /* submit button id in search field */
        jQuery.pazpar2({
            "layout": "popup",               /* "table" [default], "div", "popup" */
            "id_button": "input#mkwsButton", /* submit button id in search field */
-           "id_popup": "#mkwsPopup",        /* interal id of popup window */
+           "id_popup": "#mkwsPopup",        /* internal id of popup window */
            "width": 880,                    /* popup width, should be at least 800 */ 
            "height": 760                    /* popup height, should be at least 600 */
        });
            "width": 880,                    /* popup width, should be at least 800 */ 
            "height": 760                    /* popup height, should be at least 600 */
        });
@@ -130,20 +127,36 @@ Not supported: IE6, IE7
 New Features since jsdemo
 --------------------------
 
 New Features since jsdemo
 --------------------------
 
-- Multilinguality: English (default), Danish, German
-- Depends on the new pazpar2 JS library libjs-pz2/pz2api.1.js
-  which will make the development of pazpar2 plugins faster and
-  easier to share code between projects
 - Supports basic pazpar2 and service-proxy requests
 - Simplified HTML
 - The search page is fully configurable by a JSON object
 
 
 - Supports basic pazpar2 and service-proxy requests
 - Simplified HTML
 - The search page is fully configurable by a JSON object
 
 
+Checklist before doing a release
+---------------------------------
+- open the site, e.g. http://mkws-dev.indexdata.com/index-mike.html
+- open the debug/error console in your browser (alt-cmd-J, shift-cmd-J)
+- check the language links ("de", "da", "en")
+- run a search with few, but not to few results, e.g.: freebsd
+- check "Targets" | "Records" links
+- check "Next" and "Prev" links
+- click on the first hit and display details, click on an "URL" to jump to
+  the local catalog or full text
+- limit search to a "Source"
+- limit search to an "Author"
+- sort results by "Title" and "newest"
+- what else?
+
+
+
 What next?
 ----------
 
 Main areas of work:
 What next?
 ----------
 
 Main areas of work:
+
 * Make MKWS robust to missing widgets
 * Clean up the code
 
 * Make MKWS robust to missing widgets
 * Clean up the code
 
+- - -
 
 
+Copyright &copy; 2013 IndexData ApS. <http://www.indexdata.com>