2012-01-11 14:55:43 +01:00
|
|
|
var inputComentUrl = document.getElementById("serendipity_commentform_url");
|
|
|
|
var inputComentText = document.getElementById("serendipity_commentform_comment");
|
2012-01-21 16:10:06 +01:00
|
|
|
var lastUrlChecked = null;
|
2012-01-11 14:55:43 +01:00
|
|
|
|
|
|
|
function fetch_rss() {
|
|
|
|
var url = inputComentUrl.value;
|
|
|
|
if(!url.match(/^http/)) return;
|
2012-01-21 16:10:06 +01:00
|
|
|
if (url == lastUrlChecked) return;
|
2012-01-11 14:55:43 +01:00
|
|
|
var divSelectRss = document.getElementById("serendipity_commentspice_rss");
|
2012-01-21 16:10:06 +01:00
|
|
|
//if (divSelectRss.style.display!='none') return; // allready done
|
2012-01-11 14:55:43 +01:00
|
|
|
|
|
|
|
if (window.XMLHttpRequest) { // Mozilla, Safari, Opera, IE7
|
|
|
|
httpRequest = new XMLHttpRequest();
|
|
|
|
} else if (window.ActiveXObject) { // IE6, IE5
|
|
|
|
httpRequest = new ActiveXObject("Microsoft.XMLHTTP");
|
|
|
|
}
|
|
|
|
httpRequest.onreadystatechange = function() {
|
|
|
|
fetch_rss_ready(httpRequest);
|
|
|
|
}
|
|
|
|
// Method, url, Async = true / Sync = false
|
|
|
|
httpRequest.open('POST', comentspice_fetchrss, true); // comentspice_fetchrss was set earlier.
|
|
|
|
httpRequest.setRequestHeader('content-Type', 'application/x-www-form-urlencoded; charset='+s9yCharset);
|
|
|
|
httpRequest.send('coment_url='+url); // Start request
|
|
|
|
}
|
|
|
|
|
|
|
|
function fetch_rss_ready(httpRequest){
|
|
|
|
if (httpRequest.readyState == 4 && httpRequest.status == 200) {
|
|
|
|
var response = httpRequest.responseText;
|
|
|
|
//alert("response: " + response);
|
|
|
|
var jsonResponse = eval('(' + response + ')');
|
|
|
|
var divSelectRss = document.getElementById("serendipity_commentspice_rss");
|
|
|
|
var selectRss = document.getElementById("serendipity_commentform_rss");
|
2012-01-21 16:10:06 +01:00
|
|
|
var articles = jsonResponse.articles;
|
|
|
|
selectRss.options.length = 0;
|
|
|
|
for (idx in articles) {
|
|
|
|
var article = articles[idx];
|
2012-01-11 14:55:43 +01:00
|
|
|
var option = document.createElement('option');
|
|
|
|
option.text = article.title;
|
|
|
|
option.value = article.url;
|
|
|
|
try {
|
|
|
|
selectRss.add(option, null); // standards compliant; doesn't work in IE
|
|
|
|
}
|
|
|
|
catch(ex) {
|
|
|
|
selectRss.add(option); // IE only
|
|
|
|
}
|
|
|
|
}
|
|
|
|
divSelectRss.style.display='';
|
2012-01-21 16:10:06 +01:00
|
|
|
lastUrlChecked = jsonResponse.url;
|
2012-01-11 14:55:43 +01:00
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
// Intialisation
|
|
|
|
inputComentUrl.onblur = fetch_rss;
|
|
|
|
inputComentText.onfocus = fetch_rss;
|