<h2>MKWS Jasmine regression tests</h2>
+ <div class="mkwsSearch"></div>
+ <div class="mkwsPopup" popup_width="990" popup_height="760" popup_modal="0" popup_autoOpen="0" popup_button="input.mkwsButton">
<div class="mkwsSwitch"></div>
<div class="mkwsLang"></div>
<div class="mkwsProgress"></div>
- <div class="mkwsSearch"></div>
<div class="mkwsResults"></div>
<div class="mkwsTargets"></div>
<div class="mkwsStat"></div>
<div class="mkwsBuilder"></div>
+ </div>
<!-- include jquery again -->
<script type="text/javascript" src="//code.jquery.com/jquery-1.10.0.js"></script>
<script type="text/javascript" src="src/mkws-core.js"></script>
<script type="text/javascript" src="src/mkws-team.js"></script>
<script type="text/javascript" src="src/mkws-filter.js"></script>
+ <script type="text/javascript" src="src/mkws-popup.js"></script>
<script type="text/javascript" src="src/mkws-widget.js"></script>
<script type="text/javascript" src="src/mkws-widget-main.js"></script>
<script type="text/javascript" src="src/mkws-widget-termlists.js"></script>
<script type="text/javascript" src="src/mkws-widget-reference.js"></script>
<script type="text/javascript" src="src/mkws-widget-builder.js"></script>
- <script type="text/javascript" src="src/mkws-jquery.js"></script>
-
<link rel="shortcut icon" type="image/png" href="jasmine/lib/jasmine-1.3.1/jasmine_favicon.png">
<link rel="stylesheet" type="text/css" href="jasmine/lib/jasmine-1.3.1/jasmine.css">
<script type="text/javascript" src="jasmine/lib/jasmine-1.3.1/jasmine.js"></script>
show_record_url: true
};
- jQuery.pazpar2({
- "layout": "popup", /* "table" [default], "div", "popup" */
- "width": 990, /* popup width, should be at least 800 */
- "height": 760 /* popup height, should be at least 600 */
- });
</script>
<h2>MKWS Jasmine regression tests</h2>
-<p/>
+
+ <div class="mkwsSearch"></div>
+ <div class="mkwsPopup" popup_width="990" popup_height="760" popup_modal="0" popup_autoOpen="0" popup_button="input.mkwsButton">
+ <div class="mkwsSwitch"></div>
+ <div class="mkwsLang"></div>
+ <div class="mkwsResults"></div>
+ <div class="mkwsTargets"></div>
+ <div class="mkwsStat"></div>
+ </div>
</body>
</html>
<script type="text/javascript" src="src/mkws-core.js"></script>
<script type="text/javascript" src="src/mkws-team.js"></script>
<script type="text/javascript" src="src/mkws-filter.js"></script>
+ <script type="text/javascript" src="src/mkws-popup.js"></script>
<script type="text/javascript" src="src/mkws-widget.js"></script>
<script type="text/javascript" src="src/mkws-widget-main.js"></script>
<script type="text/javascript" src="src/mkws-widget-termlists.js"></script>
<script type="text/javascript" src="src/mkws-widget-reference.js"></script>
<script type="text/javascript" src="src/mkws-widget-builder.js"></script>
- <script type="text/javascript" src="src/mkws-jquery.js"></script>
-
<link rel="shortcut icon" type="image/png" href="jasmine/lib/jasmine-1.3.1/jasmine_favicon.png">
<link rel="stylesheet" type="text/css" href="jasmine/lib/jasmine-1.3.1/jasmine.css">
<script type="text/javascript" src="jasmine/lib/jasmine-1.3.1/jasmine.js"></script>
<script type="text/javascript" src="test/js/mkws-jasmine-run.js"></script>
<script type="text/javascript"> mkws_jasmine_init(500); </script>
- <!-- jquery null test
+ <!-- jquery null test
<script type="text/javascript">$ = undefined;</script>
-->
check_motd: false,
show_record_url: true
};
-
- jQuery.pazpar2({
- "layout": "popup", /* "table" [default], "div", "popup" */
- "width": 990, /* popup width, should be at least 800 */
- "height": 760 /* popup height, should be at least 600 */
- });
</script>
<h2>MKWS Jasmine regression tests</h2>
-<p/>
+ <div class="mkwsSearch"></div>
+ <div class="mkwsPopup" popup_width="990" popup_height="760" popup_modal="0" popup_autoOpen="0" popup_button="input.mkwsButton">
+ <div class="mkwsSwitch"></div>
+ <div class="mkwsLang"></div>
+ <div class="mkwsResults"></div>
+ <div class="mkwsTargets"></div>
+ <div class="mkwsStat"></div>
+ </div>
+
</body>
</html>
+++ /dev/null
-/*! jQuery plugin for MKWS, the MasterKey Widget Set.
- * Copyright (C) 2013-2014 Index Data
- * See the file LICENSE for details
- */
-
-"use strict";
-
-
-/*
- * implement jQuery plugin $.pazpar2({})
- */
-function _mkws_jquery_plugin($) {
- function debug(string) {
- mkws.log("jQuery.pazpar2: " + string);
- }
-
- function init_popup(obj) {
- var config = obj ? obj : {};
-
- var height = config.height || 760;
- var width = config.width || 880;
- var id_button = config.id_button || "input.mkwsButton";
- var id_popup = config.id_popup || ".mkwsPopup";
-
- debug("popup height: " + height + ", width: " + width);
-
- // make sure that jquery-ui was loaded afte jQuery core lib, e.g.:
- // <script src="http://code.jquery.com/ui/1.10.3/jquery-ui.min.js"></script>
- if (!$.ui) {
- debug("Error: jquery-ui.js is missing, did you include it after jQuery core in the HTML file?");
- return;
- }
-
- $(id_popup).dialog({
- closeOnEscape: true,
- autoOpen: false,
- height: height,
- width: width,
- modal: true,
- resizable: true,
- buttons: {
- Cancel: function() {
- $(this).dialog("close");
- }
- },
- close: function() { }
- });
-
- $(id_button)
- .button()
- .click(function() {
- $(id_popup).dialog("open");
- });
- };
-
- $.extend({
-
- // service-proxy or pazpar2
- pazpar2: function(config) {
- if (config == null || typeof config != 'object') {
- config = {};
- }
- var id_popup = config.id_popup || ".mkwsPopup";
- id_popup = id_popup.replace(/^[#\.]/, "");
-
- // simple layout
- var div = '\
-<div class="mkwsSwitch"></div>\
-<div class="mkwsLang"></div>\
-<div class="mkwsSearch"></div>\
-<div class="mkwsResults"></div>\
-<div class="mkwsTargets"></div>\
-<div class="mkwsStat"></div>';
-
- // new table layout
- var table = '\
-<style type="text/css">\
- .mkwsTermlists div.facet {\
- float:left;\
- width: 30%;\
- margin: 0.3em;\
- }\
- .mkwsStat {\
- text-align: right;\
- }\
-</style>\
- \
-<table width="100%" border="0">\
- <tr>\
- <td>\
- <div class="mkwsSwitch"></div>\
- <div class="mkwsLang"></div>\
- <div class="mkwsSearch"></div>\
- </td>\
- </tr>\
- <tr>\
- <td>\
- <div style="height:500px; overflow: auto">\
- <div class="mkwsPager"></div>\
- <div class="mkwsNavi"></div>\
- <div class="mkwsRecords"></div>\
- <div class="mkwsTargets"></div>\
- <div class="mkwsRanking"></div>\
- </div>\
- </td>\
- </tr>\
- <tr>\
- <td>\
- <div style="height:300px; overflow: hidden">\
- <div class="mkwsTermlists"></div>\
- </div>\
- </td>\
- </tr>\
- <tr>\
- <td>\
- <div class="mkwsStat"></div>\
- </td>\
- </tr>\
-</table>';
-
- var popup = '\
-<div class="mkwsSearch"></div>\
-<div class="' + id_popup + '">\
- <div class="mkwsSwitch"></div>\
- <div class="mkwsLang"></div>\
- <div class="mkwsResults"></div>\
- <div class="mkwsTargets"></div>\
- <div class="mkwsStat"></div>\
-</div>'
-
- if (config && config.layout == 'div') {
- debug("jquery plugin layout: div");
- document.write(div);
- } else if (config && config.layout == 'popup') {
- debug("jquery plugin layout: popup with id: " + id_popup);
- document.write(popup);
- $(document).ready(function() { init_popup(config); });
- } else {
- debug("jquery plugin layout: table");
- document.write(table);
- }
- }
- });
-};
-
-
-// XXX: enable before page load, so we could call it before mkws() runs
-_mkws_jquery_plugin(mkws.$);
-
*
*/
-"use strict";
-
+//"use strict";
// $(document).ready(function () {
mkws.registerWidgetType('Popup', function() {
var $ = mkws.$;
var debug = mkws.log;
debug("init popup window");
- if (!$.ui) {
- alert("Error: jquery-ui.js is missing, did you include it after jQuery core in the HTML file?");
- return;
- }
-
- var popup_window = $(this.node); // mkws.registerWidgetType('Popup',....)
+ var popup_window = $(this.node); // mkws.registerWidgetType('Popup',....)
// var popup_window = $(".mkwsPopup"); // $(document).ready()
-
if (!popup_window) {
- debug("no popup found, skip");
+ debug("no popup found, skip...");
return;
} else {
- debug("found popup windows: " + popup_window.length);
+ debug("number of popup windows found: " + popup_window.length);
+ }
+
+ if (!$.ui) {
+ alert("Error: jquery-ui.js is missing, did you include it after jQuery core in the HTML file?");
+ return;
}
// more than one widget on a page are possible
- popup_window.each(function (i) {
+ popup_window.each(function(i) {
var that = $(this);
+ // all atributes are strings, convert them to integers here
var width = parseInt(that.attr("popup_width") || "800");
var height = parseInt(that.attr("popup_height") || "600");
var autoOpen = parseInt(that.attr("popup_autoOpen") || "0");
modal: modal ? true : false,
resizable: true,
buttons: {
- Cancel: function () {
+ Cancel: function() {
that.dialog("close");
}
},
- close: function () {}
+ close: function() {}
});
- // open at search query submit
+ // open at search query submit: "input.mkwsButton"
var id_botton = that.attr("popup_button");
if (id_botton) {
- $(id_botton).button().click(function () {
+ $(id_botton).button().click(function() {
that.dialog("open");
});
}
all: mkws.min.js mkws-complete.min.js
-mkws-js mkws-complete.js: Makefile mkws.js ${SRC}/mkws-jquery.js ${HANDLEBARS_FILE} ${JQUERY_FILE} ${JQUERY_JSON_FILE} ${PP2_FILE}
+mkws-js mkws-complete.js: Makefile mkws.js ${HANDLEBARS_FILE} ${JQUERY_FILE} ${JQUERY_JSON_FILE} ${PP2_FILE}
( set -e; \
echo "/*! Copyright (c) 2013-2014 IndexData ApS. http://indexdata.com"; \
echo " Licence: GPL, http://www.indexdata.com/licences/gpl"; \
cat ${HANDLEBARS_FILE}; \
cat ${PP2_FILE}; \
cat mkws.js; \
- cat ${SRC}/mkws-jquery.js; \
) > mkws-complete.js.tmp
mv -f mkws-complete.js.tmp mkws-complete.js