﻿////////////////////////////////////////////////////////////
//
//    Google AJAX Feed API with XSLT Transformation Ver1.0
//    by takeshi mazda
//
////////////////////////////////////////////////////////////

function transform(feedpath, xsltpath, divid) {
  var xml, xslt, newDoc;

  // IEとfirefoxで処理を分ける
  // 演習ではfirefoxのみ考慮すれば良い
  if (document.all) {
    // IE
    xml = new ActiveXObject("Microsoft.XMLDOM");
    xslt = new ActiveXObject("Microsoft.XMLDOM");
  } else {
    // firefox
    xml = document.implementation.createDocument("", "", null);
    xslt = document.implementation.createDocument("", "", null);
  }

  xml.async = false;
  xslt.async = false;
  xml.load(feedpath);
  xslt.load(xsltpath);

  if (document.all) {
    // IE
    document.getElementById(divid).innerHTML = xml.transformNode(xslt);
  } else {
    // firefox
    var xsltp = new XSLTProcessor();
    xsltp.importStylesheet(xslt);
    newDoc = xsltp.transformToFragment(xml, window.document);
    // 文書のid="XML"になっている要素に変換結果を加える
    document.getElementById(divid).innerHTML = "";
    document.getElementById(divid).appendChild(newDoc);
  }
}
