X-Git-Url: http://lists.indexdata.dk/cgi-bin?a=blobdiff_plain;f=tools%2Fhtdocs%2Fmkws.js;h=1292b5f675f8fac8760b9199794739ccd632a034;hb=098b75175b5a1e665a3c11f8e09b49169a8ddeb5;hp=bcd33db3b454aafd7951dd13d599ccd389419754;hpb=6085e5b0540822d0901ed3378582f2f80df5127c;p=mkws-moved-to-github.git diff --git a/tools/htdocs/mkws.js b/tools/htdocs/mkws.js index bcd33db..1292b5f 100644 --- a/tools/htdocs/mkws.js +++ b/tools/htdocs/mkws.js @@ -917,16 +917,13 @@ function team($, teamName) { mkws_html_lang(); debug("HTML search form"); - // ### There is only one match here by design: fix not to bother looping - $('.mkwsSearch.mkwsTeam_' + m_teamName).each(function (i, obj) { - var node = this; - mkws.handle_node_with_team(this, function(tname) { - $(node).html('\ + mkws.handle_node_with_team($('.mkwsSearch.mkwsTeam_' + m_teamName), + function(tname) { + this.html('\
'); - }); }); debug("HTML records"); @@ -987,15 +984,10 @@ function team($, teamName) { $(document).ready(function() { mkws.resize_page() }); } - $('.mkwsSearchForm.mkwsTeam_' + m_teamName).each(function (i, obj) { - debug("adding search-forms for team '" + m_teamName + "'"); - var node = this; - mkws.handle_node_with_team(this, function(tname) { - debug("adding search-form '" + tname + "' for team '" + m_teamName + "'"); - $(node).submit(onFormSubmitEventHandler); - }); - }); - + var node; + node = $('.mkwsSearchForm.mkwsTeam_' + m_teamName); + if (node.length) + node.submit(onFormSubmitEventHandler); node = $('.mkwsSort.mkwsTeam_' + m_teamName); if (node.length) node.change(onSelectDdChange); @@ -1006,7 +998,7 @@ function team($, teamName) { // on first page, hide the termlist $(document).ready(function() { $(".mkwsTermlists.mkwsTeam_" + m_teamName).hide(); }); var motd = $(".mkwsMOTD.mkwsTeam_" + m_teamName); - var container = $(".mkwsMOTDContainer.mkwsTeam_" + m_teamName); + var container = $(".mkwsMOTDContainer.mkwsTeam_" + m_teamName); if (motd.length && container.length) { // Move the MOTD from the provided element down into the container motd.appendTo(container); @@ -1240,19 +1232,28 @@ function team($, teamName) { mkws.handle_node_with_team = function(node, callback) { - var classes = node.className; + // First branch for DOM objects; second branch for jQuery objects + var classes = node.className || node.attr('class'); + if (!classes) { + // For some reason, if we try to proceed when classes is + // undefined, we don't get an error message, but this + // function and its callers, up several stack level, + // silently return. What a crock. + mkws.debug("handle_node_with_team() called on node with no classes"); + return; + } var list = classes.split(/\s+/) - var tname, type; + var teamName, type; for (var i = 0; i < list.length; i++) { var cname = list[i]; if (cname.match(/^mkwsTeam_/)) { - tname = cname.replace(/^mkwsTeam_/, ''); + teamName = cname.replace(/^mkwsTeam_/, ''); } else if (cname.match(/^mkws/)) { type = cname.replace(/^mkws/, ''); } } - callback.call(this, tname, type); + callback.call(node, teamName, type); } @@ -1423,7 +1424,7 @@ function team($, teamName) { // elements that have the old magic IDs. var ids = [ "Switch", "Lang", "Search", "Pager", "Navi", "Results", "Records", "Targets", "Ranking", - "Termlists", "Stat" ]; + "Termlists", "Stat", "MOTD" ]; for (var i = 0; i < ids.length; i++) { var id = 'mkws' + ids[i]; var node = $('#' + id);