Forum Replies Created
-
AuthorPosts
-
James Proctor
ParticipantThanks, Chris; I can do it this way. No worries on exceeding max number of KML files.
Regards,
Jim
James Proctor
ParticipantPS, I’ve seen your documentation re. “Creating POIs From KML Files,” but this would I assume refer to a single map, not a (shortcode-based) mashup map, correct? I don’t see in the current version any shortcode support for this.
Thanks,
Jim P.
James Proctor
ParticipantCan you please verify that this .svg solution works well on all non-IE browsers? I’d potentially need to use .svg icons as well.
Jim P.
James Proctor
ParticipantChris, thanks. The WPEngine folks claim they’ve scoured the Apache/PHP logs. The theme/plugin incompatibility possibility is one we haven’t yet systematically explored as we have lot. And, since the problem is intermittent, the sequence of steps is nothing special: we just bring up the page and sometimes the mashup shows, at other times it says “Loading…” and never loads.
Oh well, I’ll keep in touch if further clues.
Regards,
Jim P.
James Proctor
ParticipantChris, long Firefox console output below…does this provide any clues? The WPEngine folks have given up on it. Thanks…Jim P.
Below is the debugger readout for: admin-bar.min.js "undefined"!=typeof jQuery?("undefined"==typeof jQuery.fn.hoverIntent&&!function(a){a.fn.hoverIntent=function(b,c,d){var e={interval:100,sensitivity:7,timeout:0};e="object"==typeof b?a.extend(e,b):a.isFunction(c)?a.extend(e,{over:b,out:c,selector:d}):a.extend(e,{over:b,out:b,selector:c});var f,g,h,i,j=function(a){f=a.pageX,g=a.pageY},k=function(b,c){return c.hoverIntent_t=clearTimeout(c.hoverIntent_t),Math.abs(h-f)+Math.abs(i-g)<e.sensitivity?(a(c).off("mousemove.hoverIntent",j),c.hoverIntent_s=1,e.over.apply(c,[b])):(h=f,i=g,c.hoverIntent_t=setTimeout(function(){k(b,c)},e.interval),void 0)},l=function(a,b){return b.hoverIntent_t=clearTimeout(b.hoverIntent_t),b.hoverIntent_s=0,e.out.apply(b,[a])},m=function(b){var c=jQuery.extend({},b),d=this;d.hoverIntent_t&&(d.hoverIntent_t=clearTimeout(d.hoverIntent_t)),"mouseenter"==b.type?(h=c.pageX,i=c.pageY,a(d).on("mousemove.hoverIntent",j),1!=d.hoverIntent_s&&(d.hoverIntent_t=setTimeout(function(){k(c,d)},e.interval))):(a(d).off("mousemove.hoverIntent",j),1==d.hoverIntent_s&&(d.hoverIntent_t=setTimeout(function(){l(c,d)},e.timeout)))};return this.on({"mouseenter.hoverIntent":m,"mouseleave.hoverIntent":m},e.selector)}}(jQuery),jQuery(document).ready(function(a){var b,c,d,e=a("#wpadminbar"),f=!1;b=function(b,c){var d=a(c),e=d.attr("tabindex");e&&d.attr("tabindex","0").attr("tabindex",e)},c=function(b){e.find("li.menupop").on("click.wp-mobile-hover",function(c){var d=a(this);d.parent().is("#wp-admin-bar-root-default")&&!d.hasClass("hover")?(c.preventDefault(),e.find("li.menupop.hover").removeClass("hover"),d.addClass("hover")):d.hasClass("hover")||(c.stopPropagation(),c.preventDefault(),d.addClass("hover")),b&&(a("li.menupop").off("click.wp-mobile-hover"),f=!1)})},d=function(){var b=/Mobile\/.+Safari/.test(navigator.userAgent)?"touchstart":"click";a(document.body).on(b+".wp-mobile-hover",function(b){a(b.target).closest("#wpadminbar").length||e.find("li.menupop.hover").removeClass("hover")})},e.removeClass("nojq").removeClass("nojs"),"ontouchstart"in window?(e.on("touchstart",function(){c(!0),f=!0}),d()):/IEMobile\/[1-9]/.test(navigator.userAgent)&&(c(),d()),e.find("li.menupop").hoverIntent({over:function(){f||a(this).addClass("hover")},out:function(){f||a(this).removeClass("hover")},timeout:180,sensitivity:7,interval:100}),window.location.hash&&window.scrollBy(0,-32),a("#wp-admin-bar-get-shortlink").click(function(b){b.preventDefault(),a(this).addClass("selected").children(".shortlink-input").blur(function(){a(this).parents("#wp-admin-bar-get-shortlink").removeClass("selected")}).focus().select()}),a("#wpadminbar li.menupop > .ab-item").bind("keydown.adminbar",function(c){if(13==c.which){var d=a(c.target),e=d.closest("ab-sub-wrapper");c.stopPropagation(),c.preventDefault(),e.length||(e=a("#wpadminbar .quicklinks")),e.find(".menupop").removeClass("hover"),d.parent().toggleClass("hover"),d.siblings(".ab-sub-wrapper").find(".ab-item").each(b)}}).each(b),a("#wpadminbar .ab-item").bind("keydown.adminbar",function(c){if(27==c.which){var d=a(c.target);c.stopPropagation(),c.preventDefault(),d.closest(".hover").removeClass("hover").children(".ab-item").focus(),d.siblings(".ab-sub-wrapper").find(".ab-item").each(b)}}),a("#wpadminbar").click(function(b){("wpadminbar"==b.target.id||"wp-admin-bar-top-secondary"==b.target.id)&&(b.preventDefault(),a("html, body").animate({scrollTop:0},"fast"))}),a(".screen-reader-shortcut").keydown(function(b){var c,d;13==b.which&&(c=a(this).attr("href"),d=navigator.userAgent.toLowerCase(),-1!=d.indexOf("applewebkit")&&c&&"#"==c.charAt(0)&&setTimeout(function(){a(c).focus()},100))}),"sessionStorage"in window&&a("#wp-admin-bar-logout a").click(function(){try{for(var a in sessionStorage)-1!=a.indexOf("wp-autosave-")&&sessionStorage.removeItem(a)}catch(b){}}),navigator.userAgent&&-1===document.body.className.indexOf("no-font-face")&&/Android (1.0|1.1|1.5|1.6|2.0|2.1)|Nokia|Opera Mini|w(eb)?OSBrowser|webOS|UCWEB|Windows Phone OS 7|XBLWP7|ZuneWP7|MSIE 7/.test(navigator.userAgent)&&(document.body.className+=" no-font-face")})):!function(a,b){var c,d=function(a,b,c){a.addEventListener?a.addEventListener(b,c,!1):a.attachEvent&&a.attachEvent("on"+b,function(){return c.call(a,window.event)})},e=new RegExp("\\bhover\\b","g"),f=[],g=new RegExp("\\bselected\\b","g"),h=function(a){for(var b=f.length;b--;)if(f[b]&&a==f[b][1])return f[b][0];return!1},i=function(b){for(var d,i,j,k,l,m,n=[],o=0;b&&b!=c&&b!=a;)"LI"==b.nodeName.toUpperCase()&&(n[n.length]=b,i=h(b),i&&clearTimeout(i),b.className=b.className?b.className.replace(e,"")+" hover":"hover",k=b),b=b.parentNode;if(k&&k.parentNode&&(l=k.parentNode,l&&"UL"==l.nodeName.toUpperCase()))for(d=l.childNodes.length;d--;)m=l.childNodes[d],m!=k&&(m.className=m.className?m.className.replace(g,""):"");for(d=f.length;d--;){for(j=!1,o=n.length;o--;)n[o]==f[d][1]&&(j=!0);j||(f[d][1].className=f[d][1].className?f[d][1].className.replace(e,""):"")}},j=function(b){for(;b&&b!=c&&b!=a;)"LI"==b.nodeName.toUpperCase()&&!function(a){var b=setTimeout(function(){a.className=a.className?a.className.replace(e,""):""},500);f[f.length]=[b,a]}(b),b=b.parentNode},k=function(b){for(var d,e,f,h=b.target||b.srcElement;;){if(!h||h==a||h==c)return;if(h.id&&"wp-admin-bar-get-shortlink"==h.id)break;h=h.parentNode}for(b.preventDefault&&b.preventDefault(),b.returnValue=!1,-1==h.className.indexOf("selected")&&(h.className+=" selected"),d=0,e=h.childNodes.length;e>d;d++)if(f=h.childNodes[d],f.className&&-1!=f.className.indexOf("shortlink-input")){f.focus(),f.select(),f.onblur=function(){h.className=h.className?h.className.replace(g,""):""};break}return!1},l=function(a){var b,c,d,e,f,g;if(!("wpadminbar"!=a.id&&"wp-admin-bar-top-secondary"!=a.id||(b=window.pageYOffset||document.documentElement.scrollTop||document.body.scrollTop||0,1>b)))for(g=b>800?130:100,c=Math.min(12,Math.round(b/g)),d=Math.round(b>800?b/30:b/20),e=[],f=0;b;)b-=d,0>b&&(b=0),e.push(b),setTimeout(function(){window.scrollTo(0,e.shift())},f*c),f++};d(b,"load",function(){c=a.getElementById("wpadminbar"),a.body&&c&&(a.body.appendChild(c),c.className&&(c.className=c.className.replace(/nojs/,"")),d(c,"mouseover",function(a){i(a.target||a.srcElement)}),d(c,"mouseout",function(a){j(a.target||a.srcElement)}),d(c,"click",k),d(c,"click",function(a){l(a.target||a.srcElement)}),d(document.getElementById("wp-admin-bar-logout"),"click",function(){if("sessionStorage"in window)try{for(var a in sessionStorage)-1!=a.indexOf("wp-autosave-")&&sessionStorage.removeItem(a)}catch(b){}})),b.location.hash&&b.scrollBy(0,-32),navigator.userAgent&&-1===document.body.className.indexOf("no-font-face")&&/Android (1.0|1.1|1.5|1.6|2.0|2.1)|Nokia|Opera Mini|w(eb)?OSBrowser|webOS|UCWEB|Windows Phone OS 7|XBLWP7|ZuneWP7|MSIE 7/.test(navigator.userAgent)&&(document.body.className+=" no-font-face")})}(document,window);
James Proctor
ParticipantThanks. No, these are tiny mashups, with about a half-dozen geotagged posts. I’ll forward your response to the WPEngine folks.
Jim
James Proctor
ParticipantHere is an update from a WPEngine engineer; any clues on your end? I doubt the below is the exact scenario, but you may have some ideas. Thanks…Jim P.
According to the HTTP Status code index, a 408 response means “server timed out waiting for the request”. That means that the browser took too long to send the data, and the server gave up waiting for it.
I’m not familiar enough with the plugin to know exactly what is happening, but is it possible that the plugin is attempting to send a very large amount of data to the server, and so the timeout is reached before the browser can send it?
James Proctor
ParticipantLet’s hold off on doing anything more until the support staff get back to me: yesterday I observed several more loading errors with your updated version of the plugin, and the logging may’ve given them additional clues. I’ll be in touch once I hear from them.
Sure appreciate your continued support! I’m pretty sure that it has to do with a setting on WPEngine, but given they are a huge WP provider it’s worth figuring it out for everyone involved.
Jim P.
James Proctor
ParticipantAnother request from the developer…thanks for your continued support…Jim P.
Let me know if the plugin’s developer can set up the buffered output functionality from the non-debug plugin to be run along with an incoming request and send its output to the error log, so we can see if the issue that was affecting the previous plugin may still be present, and get some ideas on how it can be replicated.
(below in response to my query for clarification of above)
I’m referring to the current version of the plugin that’s installed. Assuming that the previous implementation of buffered output was the issue with the previous version of the plugin, then the issue should be resolved.
Since we haven’t confirmed the source of the issue yet, it may be a good idea to (if possible) have the same functionality that was in the previous plugin, where the output was being cached before the POST variables were read, running alongside the current functionality, and send that output to the error log. This should help to identify when their buffered output didn’t include the needed map name, while ensuring that the site itself still displays properly.
James Proctor
ParticipantOkay, I’ve just resent via your contact form…thanks, Jim
James Proctor
ParticipantI’m assuming you received my request a few days ago via contact form for the debugging version of the plugin; do let me know if issues, and thanks again for your assistance.
James Proctor
ParticipantOkay, many thanks; will forward to support folks and may ask you for that modified plugin if they need it…Cheers, Jim
James Proctor
ParticipantJames Proctor
ParticipantOkay, here’s more info (and there are two related files I can send you separately as needed). The support staff just sent me the following:
I’ve taken a look at the output for the requests that go to /wp-admin/admin-ajax.php and it appears that there’s a difference in what we receive when the site’s working, compared to when it’s broken. I’ve attached a couple of text files with old (broken) and new (working) responses, with line breaks at each opening curled bracket.
If you put the two files in a diff tool, you’ll see that there are a handful of lines that differ, due to references such as “mapp0.getPoi(4).zoomIn()” being truncated to “.getPoi(4).zoomIn()”.
Let me know if this helps the developer track down where the issue may lie.
James Proctor
ParticipantOkay, problem has continued with my host but intermittent. The support staff with my host report the following; could you please clarify? Sure appreciate..Jim P.
I’m seeing that there are two requests for admin-ajax when both pages with maps are pulled up. The first request contains query arguments and completes successfully, sending up the data enclosed within lclark_adminajax_request.txt. The site returns the information included in the text file attached called lclark_adminajax_response.txt. This information is also available through your browser’s Developer Console when looking into the admin-ajax requests.
The second admin-ajax request contains no query arguments, and gets back the “0” response that you’ve received. Going by the resource requests that the site makes at this time, this second admin-ajax request should be returning the map data.
As this appears to be happening sporadically, we would need to find out what is normally included in that second request when the page is working as desired, or get in touch with the developer to have them investigate and see what their functionality requires from the original admin-ajax request that it might not be getting.
…
Please do contact the developer to see what light can be shed on this issue. At this time, knowing what input or information the mapping functionality should be getting from that second request to admin-ajax will help to see whether the issue is with our platform, the code from the plugin or an external service that it’s reaching out to.
-
AuthorPosts