var mwsoftContent = function() {

  /** public項目 */
  var global = {};

  /** private項目 */
  var local  = {};

  /**
   * ヘッダの出力
   */
  global.writeHeader = function() {
    document.write('\
      <div id=\"header\">\
        <div id="pankuzu">&nbsp;</div>\
        <img src="/img/line_basic.gif" alt="" style="vertical-align:bottom;" />\
        <img src="/img/logo.jpg" alt="mwSoft" style="vertical-align:top;" />\
      </div>\
    ');
  };

  /**
   * フッタの出力
   */
  global.writeFooter = function() {
    document.write('\
      <div id=\"footer\">\
        <div id=\"last_modified\" style=\"text-align:right; margin-bottom:5px;\">lastModified - ' + document.lastModified + '</div>\
        <img src="/img/logo_r.jpg" alt="mwSoft" style="vertical-align:bottom:" />\
        <img src="/img/line_basic.gif" alt="" style="vertical-align:top;" />\
      </div>\
    ');
  };

  global.setPankuzu = function() {
    if(window.addEventListener) {
      window.addEventListener('load', local.setPankuzu, false);
    }
    else if(window.attachEvent) {
      window.attachEvent('onload', local.setPankuzu);
    }
    else {
      var prevOnload = window.onload;
      if(prevOnload) {
        window.onload = function() {
          prevOnload();
          setPankuzu();
        }
      }
    }
  };

  /**
   * パンくず生成用設定
   */
  var documentTitles = new Object();
  if( location.protocol != "https:" ) {
    documentTitles['programming'] = '<a href="/programming/">プログラミング・サンプル集</a>';
    documentTitles['webtools']    = '<a href="/programming/webtools/">WEBツールたち</a>';
    documentTitles['javascript']  = '<a href="/programming/javascript/">JavaScriptサンプル</a>';
    documentTitles['firefox3_5']  = '<a href="/programming/firefox3_5/">Firefox3.5サンプル</a>';
    documentTitles['java']        = '<a href="/programming/java/">Java・Commonsサンプル</a>';
    documentTitles['googlemap']   = '<a href="/programming/googlemap/">GoogleMapAPIサンプル</a>';
    documentTitles['ie6_no_more'] = '<a href="/programming/ie6_no_more/">no more ie6</a>';
    documentTitles['munou'] = '<a href="/programming/munou/">人工無脳</a>';
    documentTitles['hadoop'] = '<a href="/programming/munou/">Hadoop</a>';
    documentTitles['python'] = '<a href="/programming/python/">Python関連</a>';
    documentTitles['novel'] = '<a href="/programming/novel/">プログラマ文学</a>';
    documentTitles['webdic'] = '<a href="/programming/webdic/">Web辞書</a>';
  }

  /**
   * パンくずの生成
   */
  local.setPankuzu = function() {
    var domain = "http://" + document.domain + "/";
    var path = document.URL.replace(domain, "");
    
    // TOPの場合はパンくずを出力しない
    if(path == "/" || path == "" || path == "index.html" || path == "index.html")
      return;

    // スラッシュでsplitする。最終要素は無視
    var splittedPath = path.split("/");
    if(!splittedPath || splittedPath.length < 1)
      return;

    // ファイル名がindexの場合は2階層、それ以外の場合は1階層削る
    var fileName = splittedPath[splittedPath.length - 1];
    if(splittedPath.length > 1 && (fileName == "" || fileName == "index.html"))
      delete splittedPath[splittedPath.length - 2];
    delete splittedPath[splittedPath.length - 1];

    // パンくずに文字列を付け加えていく
    var pankuzu = '<a href="/">TOP</a>';
    if( location.protocol == "https:" )
      pankuzu = '<a href="http://www.mwsoft.jp/">TOP</a>';
    var splitter = "&nbsp;&nbsp;&gt;&nbsp;&nbsp;";
    for(var i = 0; i < splittedPath.length; i++) {
      if(splittedPath[i] && documentTitles[splittedPath[i]])
        pankuzu = pankuzu + splitter + documentTitles[splittedPath[i]];
    }

    // この文書のタイトルを付け加える
    if(document.getElementById('title') && document.getElementById('title').innerHTML)
      pankuzu = pankuzu + splitter + document.getElementById('title').innerHTML;
    else if(document.title != "")
      pankuzu = pankuzu + splitter + document.title;
    else
      pankuzu = pankuzu + splitter + 'この文書';

    if(pankuzu)
      document.getElementById('pankuzu').innerHTML = pankuzu;
  }

  return global

}();
mwsoftContent.setPankuzu();
