// コンテンツブロック読み込み用ライブラリ

function cmsAddListener(elem, eventType, func, cap){
  if(elem.addEventListener){
    elem.addEventListener(eventType, func, cap);
  }else if(elem.attachEvent){
    elem.attachEvent('on' + eventType, func);
  }else{
    return false;
  }
}

//左メニュー利用対象を判断
function cmsGenerateRequestUseCheck() {
  var currentDomain = document.domain;
  var currentURL = document.URL;
  var str = currentURL.split('/');
  var currentURL2 = str[2] +'/'+ str[3];

  var leftblock_flg = true;
  if ( (currentURL2 == 'avatar.gungho.jp/avatar') ){
    leftblock_flg = false;
  }
  return leftblock_flg;
}

// 2007/03/02 残コイン表示(fw_disp_wallet追加)
function cmsSetListeners(e){
  var url = cmsGenerateRequestUrl();
  var gen = new cmsQueryStringGenerator();
  //必須 -------------------------------
  var divIdList = {
    "fw_bartop_block": {
      "evalScripts": true
    },
    "fw_banner_block": {
      "evalScripts": true
    },
    "fw_notice_block": {},
    "fw_emergencynotice_block": {}
  };
  var divIdCount = divIdList.length;
  for (var divId in divIdList) {
    if (divIdList.hasOwnProperty(divId)) {
      var elem = document.getElementById(divId);
      if (elem != null) {
        cmsGetContent(divId, url, gen.generate(divId), divIdList[divId]);
      }
    }
  }
  if(!cmsGenerateRequestUseCheck()){
  //左メニュー使用(なし）---------------
    divIdList = {
      "fw_avatar_button_block": {},
//      "fw_notice2_block_mente": {},
//      "fw_notice2_block_imp": {},
      "fw_disp_wallet": {},
      "fw_disp_point": {}
    };
    divIdCount = divIdList.length;
    for (var divId in divIdList) {
      if (divIdList.hasOwnProperty(divId)) {
        elem = document.getElementById(divId);
        if (elem != null) {
          cmsGetContent(divId, url, gen.generate(divId), divIdList[divId]);
        }
      }
    }
  }


}

function cmsGenerateRequestUrl() {
  var currentDomain = document.domain;
  var url = '';
  if ((currentDomain == 'gungho.jp') || 
      (currentDomain == 'www.gungho.jp') || 
      (currentDomain == 'api.gungho-test.jp') || 
      (currentDomain == 'sfw.gungho-test.jp')) {
    url = '/index.php';
  } else {
    url = '/contentblock.php';
  }
  return url;
}

function cmsQueryStringGenerator() {
}

cmsQueryStringGenerator.prototype.generate = function (divId) {
  return (this[('__qs_' + divId)]());
}

cmsQueryStringGenerator.prototype.__getDirname = 
function (type) {
  var dirnameHash = {
    "home"      : "home",
    "game"      : "game",
    "avatar"    : "avatar",
    "community" : "community",
    "entame"    : "entame",
    "mobile"    : "mobile",
    "shop"      : "shop",
    "default"   : "home"
  };
  var dirname = dirnameHash[type];
  if (! dirname) {
    dirname = dirnameHash['default'];
  }
  return dirname;
}

cmsQueryStringGenerator.prototype.__qs_fw_bartop_block = 
function () {
  var dirname = this.__getDirname(GHMSFW_CATEGORY_TYPE);
  return ('module=Block&action=BarTop&dirname=' + dirname);
}

cmsQueryStringGenerator.prototype.__qs_fw_banner_block = 
function () {
  var dirname = this.__getDirname(GHMSFW_CATEGORY_TYPE);
  return ('module=Block&action=Banner&dirname=' + dirname);
}

cmsQueryStringGenerator.prototype.__qs_fw_avatarareablock = 
function () {
  var dirname = this.__getDirname(GHMSFW_CATEGORY_TYPE);
  return ('module=Block&action=AvatarArea&dirname=' + dirname);
}

cmsQueryStringGenerator.prototype.__qs_fw_avatar_button_block = 
function () {
  var dirname = this.__getDirname(GHMSFW_CATEGORY_TYPE);
  return ('module=Block&action=AvatarButton&dirname=' + dirname);
}

// 2007/03/02 残コイン表示
cmsQueryStringGenerator.prototype.__qs_fw_disp_wallet = 
function () {
  var dirname = this.__getDirname(GHMSFW_CATEGORY_TYPE);
  return ('module=Block&action=GetWalletInfo');
}
// 2007/08/21 残ポイント表示
cmsQueryStringGenerator.prototype.__qs_fw_disp_point = 
function () {
  var dirname = this.__getDirname(GHMSFW_CATEGORY_TYPE);
  return ('module=Block&action=GetPointInfo');
}

cmsQueryStringGenerator.prototype.__qs_fw_notice_block = 
function () {
  var disp_flagHash = {
    "home"      : 1,
    "game"      : 2,
    "community" : 3,
    "avatar"    : 4,
    "entame"    : 5,
    "mobile"    : 6,
    "shop"      : 12,
    "default"   : 1
  };
  var disp_flag = disp_flagHash[(GHMSFW_CATEGORY_TYPE)];
  if (! disp_flag) {
    disp_flag = disp_flagHash['default'];
  }
  return 'module=Block&action=Notice&disp_flg=' + disp_flag;
}
//追加 メンテ
cmsQueryStringGenerator.prototype.__qs_fw_notice2_block_mente = 
function () {
  var disp_flagHash = {
    "home"      : 1,
    "game"      : 2,
    "community" : 3,
    "avatar"    : 4,
    "entame"    : 5,
    "mobile"    : 6,
    "shop"      : 12,
    "default"   : 1
  };
  var disp_flag = disp_flagHash[(GHMSFW_CATEGORY_TYPE)];
  if (! disp_flag) {
    disp_flag = disp_flagHash['default'];
  }
  dsp_max = 4;	//最大表示件数
  return 'module=Block&action=NoticeAllSC2&notice_type_id='+disp_flag+'&notice_type_id2=9&check_flg=2&disp_max='+dsp_max+'&disp_page=1&temp=Notice2_mente';
}
//追加 重要なお知らせ
cmsQueryStringGenerator.prototype.__qs_fw_notice2_block_imp = 
function () {
  var disp_flagHash = {
    "home"      : 1,
    "game"      : 2,
    "community" : 3,
    "avatar"    : 4,
    "entame"    : 5,
    "mobile"    : 6,
    "shop"      : 12,
    "default"   : 1
  };
  var disp_flag = disp_flagHash[(GHMSFW_CATEGORY_TYPE)];
  if (! disp_flag) {
    disp_flag = disp_flagHash['default'];
  }
  dsp_max = 4;	//最大表示件数
  return 'module=Block&action=NoticeAllSC2&notice_type_id='+disp_flag+'&notice_type_id2=10&check_flg=2&disp_max='+dsp_max+'&disp_page=1&temp=Notice2_imp';
}
cmsQueryStringGenerator.prototype.__qs_fw_emergencynotice_block = 
function () {
  var dirname = this.__getDirname(GHMSFW_CATEGORY_TYPE);
  return ('module=Block&action=EmergencyNotice&dirname=' + dirname);
}
//add start 2007/10/10
//左メニュー通常
cmsQueryStringGenerator.prototype.__qs_LeftBlockNormal = 
function () {

  var disp_flagHash = {
    "home"      : 1,
    "game"      : 2,
    "community" : 3,
    "avatar"    : 4,
    "entame"    : 5,
    "mobile"    : 6,
    "shop"      : 12,
    "default"   : 1
  };
  var disp_flag = disp_flagHash[(GHMSFW_CATEGORY_TYPE)];
  if (! disp_flag) {
    disp_flag = disp_flagHash['default'];
  }

  var dirname = this.__getDirname(GHMSFW_CATEGORY_TYPE);

  var url="";

  //ログインURL
  if (document.location.href.indexOf('http://www.gungho.jp/selfytown/nologin.html') == -1) {
    url += '&loginurl=' + encodeURIComponent(document.location.href);
  } else {
    url += '&loginurl=' + encodeURIComponent('http://www.gungho.jp/selfytown/' + location.search.substr(0));
  }

  return('module=Block&action=LeftBlock'+ url);
}
//左メニュートップ
//（アバター、LV1ボタン、ポイント、ガンホーコイン、お知らせ（メンテ）、お知らせ（重要））
cmsQueryStringGenerator.prototype.__qs_LeftBlockTop = 
function () {

  var disp_flagHash = {
    "home"      : 1,
    "game"      : 2,
    "community" : 3,
    "avatar"    : 4,
    "entame"    : 5,
    "mobile"    : 6,
    "shop"      : 12,
    "default"   : 1
  };
  var disp_flag = disp_flagHash[(GHMSFW_CATEGORY_TYPE)];
  if (! disp_flag) {
    disp_flag = disp_flagHash['default'];
  }

  var dirname = this.__getDirname(GHMSFW_CATEGORY_TYPE);

  var url="";

  return('module=Block&action=LeftBlock'+ url);
}
//左メニューHOMEトップ
//（アバター、ポイント、ガンホーコイン、お知らせ（メンテ）、お知らせ（重要））
cmsQueryStringGenerator.prototype.__qs_LeftBlockHomeTop = 
function () {

  var disp_flagHash = {
    "home"      : 1,
    "game"      : 2,
    "community" : 3,
    "avatar"    : 4,
    "entame"    : 5,
    "mobile"    : 6,
    "shop"      : 12,
    "default"   : 1
  };
  var disp_flag = disp_flagHash[(GHMSFW_CATEGORY_TYPE)];
  if (! disp_flag) {
    disp_flag = disp_flagHash['default'];
  }

  var dirname = this.__getDirname(GHMSFW_CATEGORY_TYPE);

  var url="";

  return('module=Block&action=LeftBlock'+ url);
}
//add end 2007/10/10
cmsAddListener(window, 'load', cmsSetListeners, false);


