code cleanup
authorWolfram Schneider <wosch@indexdata.dk>
Wed, 9 Jul 2014 14:47:03 +0000 (14:47 +0000)
committerWolfram Schneider <wosch@indexdata.dk>
Wed, 9 Jul 2014 14:47:03 +0000 (14:47 +0000)
src/mkws-popup.js

index 4145652..4d03c52 100644 (file)
@@ -1,41 +1,26 @@
-/*! jQuery plugin for MKWS, the MasterKey Widget Set.
- *  Copyright (C) 2013-2014 Index Data
- *  See the file LICENSE for details
+/* generic function to open results in a popup window
+ *
  */
 
-"use strict";
+// "use strict";
 
+mkws.registerWidgetType('Popup', function() {
+  alert("running popup");
 
-/*
- * implement jQuery plugin $.pazpar2({})
- */
-function _mkws_jquery_plugin($) {
-  function debug(string) {
-    mkws.log("jQuery.pazpar2: " + string);
+  if (!mkws.$.ui) {
+      alert("Error: jquery-ui.js is missing, did you include it after jQuery core in the HTML file?");
+      return;
   }
 
-  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);
+  if (!this.config.popup_width) this.config.popup_width = "800";
+  if (!this.config.popup_height) this.config.popup_height = "600";
+  if (!this.config.auto_open) this.config.auto_open = "0";
 
-    // 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({
+  $(this).dialog({
       closeOnEscape: true,
-      autoOpen: false,
-      height: height,
-      width: width,
+      autoOpen: parseInt(this.config.auto_open) ? true : false,
+      height: parseInt(this.config.popup_height),
+      width: parseInt(this.config.popup_width),
       modal: true,
       resizable: true,
       buttons: {
@@ -44,106 +29,7 @@ function _mkws_jquery_plugin($) {
         }
       },
       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.$);
+});