//http://ablog.seesaa.net/article/20987336.html
//を使っています。
function $(id){return document.getElementById(id)}
   var url1 ="";
   var url2 ="";
var str = "";
var user1 = "";
var user2 = "";
var limit=10;
function getRequest(){
  if(location.search.length > 1) {
    var get = new Object();
    var ret = location.search.substr(1).split("&");
    for(var i = 0; i < ret.length; i++) {
      var r = ret[i].split("=");
      get[r[0]] = r[1];
    }
    return get;
  } else {
    return false;
  }
}
if(getRequest().limit != null) {
  limit = getRequest().limit;
  window.onload = function(){$("posl").innerHTML = limit;$("posl").style.fontSize=24;$("posl").style.fontWeight="bold";$("posl").style.color="Red";};
}
function unit_go(){
   url1 ="http://twitter.com/statuses/user_timeline/"+$("tid1").value+".json?callback=tlcb1&count="+limit;
   url2 ="http://twitter.com/statuses/user_timeline/"+$("tid2").value+".json?callback=tlcb2&count="+limit;
  if(user1 == $("tid1").value){
  if(user2 == $("tid2").value){
    generator();
  }else{
  str="";
  user1 = $("tid1").value;
  user2 = $("tid2").value;
  var script = document.createElement('script');
  script.type = "text/javascript"; 
  script.src = url1;
  document.body.appendChild(script);
  }
  }else{
  str="";
  user1 = $("tid1").value;
  user2 = $("tid2").value;

  var script = document.createElement('script');
  script.type = "text/javascript"; 
  script.src = url1;
  document.body.appendChild(script);
  }
}
var MAX = 300;
var post1 = "";
var post2 = "";
var postc = 0;
function tlcb1(n) {
  for(var i in n) {
 str += n[i].text.replace(/@.*/,"").replace(/$/,"。\n");
  }
 postc += 1;
  var script2 = document.createElement('script');
  script2.type = "text/javascript"; 
  script2.src = url2;
  document.body.appendChild(script2); 
}
function tlcb2(n) {
  for(var i in n) {
  str += n[i].text.replace(/@.*/,"").replace(/$/,"。");
  }
    generator();
}

function generator() {
  // 辞書
  var dic = {};
 
  if (str) {
    var s = str.split("。");
    for (var i = 0; i < s.length; i++) {
      if (s[i]) morph(s[i] + "。", dic);
    }
    var resArea = $("unit_result");
    if (resArea.firstChild) {resArea.removeChild(resArea.firstChild)};
    resArea.appendChild(document.createTextNode(morkov(dic)));
    
  } else {
    return false;
  }
}
/* 簡易形態素解析の正規表現 */
var re = new RegExp;
re.compile("[一-龠]+|[ぁ-ん]+|[ァ-ヴー]+|[a-zA-Z0-9]+|[ａ-ｚＡ-Ｚ０-９]+|[、。！!？?]+", 'g');
function morph(text, dic) {
  var token = text.match(re);
  token.unshift('_START_');
  token.push('_END_');
  while (token[1]) {
    if (dic[token[0]]) {
      dic[token[0]].push(token[1]);
    } else {
      dic[token[0]] = [token[1]];
    }
    token.shift();
  }
}

function morkov(dic) {
  var w1 = dic['_START_'][Math.floor(Math.random() * dic['_START_'].length)];
  var w2 = '';
  var sentence = w1;
  for (var i = 0; i <= MAX; i++) {
    w2 = dic[w1][Math.floor(Math.random() * dic[w1].length)];
    if (w2 == '_END_') {break}
    sentence += w2;
    var w3 = w1;
    w1 = w2;
    w2 = w3;
  }
  return sentence;
}


