
jQuery(document).ready(function() {
  
	jQuery('a.subscribeButton').click(function(e) {
		jQuery('#subscribeBox').modal({
      focus: false,
      zIndex: 200000,
      containerCss: {
        backgroundColor: '#fff',
        borderColor: '#fff',
        padding: 0,
        height: 190,
        width: 412
      },
      overlayClose: true
    });
		return false;
	});
	
	jQuery('a.cTypeA').each(function() {
    jQuery(this).textTruncate(100 , " ...");
  });
	
	// 訂閱電子報
	jQuery("#pNewsletterSubscribe").click(function(){	
		newsletterSubscription('pNewsletterEmail');
	});
	// 電子報退訂
	jQuery("#pNewsletterCancel").click(function(){	
		newsletterCancel('pNewsletterEmail');
	});
	
	jQuery('form[name="searchForm"]').submit(function() {
    var keywords = jQuery('input[name="keywords"]', this).val();
    if(jQuery.trim(keywords) == '') {
      alert('請輸入您想查詢的文章關鍵字');
      return false;
    }
    else {
      return true;
    }
  });
	
	// PNG 在 IE5.5 IE6 透明及滑鼠改變圖像
  jQuery("img[src$=_out.png], input[src$=_out.png]")
    .ifixpng()
    .css({cursor: 'pointer'})
    .hover(
      function () {
        jQuery(this).iunfixpng();
        var img_src = this.src;
        if (img_src != '_out.png') {
          var over_src = img_src.substring(0, img_src.lastIndexOf('_out.png')) + '_over.png';
          if (over_src != '_over.png') {
            jQuery(this).attr('src', over_src).ifixpng();
          }
        }
      },
      function () {
        jQuery(this).iunfixpng();
        var img_src = this.src;
        if (img_src != '_over.png') {
          var out_src = img_src.substring(0, img_src.lastIndexOf('_over.png')) + '_out.png';
          if (out_src != '_out.png') {
            jQuery(this).attr('src', out_src).ifixpng();
          }
        }
      }
    );

  // 全部 PNG 在 IE5.5 IE6 透明
  jQuery('img[src$=.png], input[src$=_out.png], .png').ifixpng().iunfixpng().ifixpng();

  // GIF 滑鼠改變圖像
  jQuery("img[src$=_out.gif], input[src$=_out.gif]")
    .css({cursor: 'pointer'})
    .hover(
      function () {
        var img_src = this.src;
        if (img_src != '_out.gif') {
          var over_src = img_src.substring(0, img_src.lastIndexOf('_out.gif')) + '_over.gif';
          if (over_src != '_over.gif') {
            jQuery(this).attr('src', over_src);
          }
        }
      },
      function () {
        var img_src = this.src;
        if (img_src != '_over.gif') {
          var out_src = img_src.substring(0, img_src.lastIndexOf('_over.gif')) + '_out.gif';
          if (out_src != '_out.gif') {
            jQuery(this).attr('src', out_src);
          }
        }
      }
    );

  // JPG 滑鼠改變圖像
  jQuery("img[src$=_out.jpg], input[src$=_out.jpg]")
    .css({cursor: 'pointer'})
    .hover(
      function () {
        var img_src = this.src;
        if (img_src != '_out.jpg') {
          var over_src = img_src.substring(0, img_src.lastIndexOf('_out.jpg')) + '_over.jpg';
          if (over_src != '_over.jpg') {
            jQuery(this).attr('src', over_src);
          }
        }
      },
      function () {
        var img_src = this.src;
        if (img_src != '_over.jpg') {
          var out_src = img_src.substring(0, img_src.lastIndexOf('_over.jpg')) + '_out.jpg';
          if (out_src != '_out.jpg') {
            jQuery(this).attr('src', out_src);
          }
        }
      }
    );
	
	swfobject.embedSWF($templateDir + 'images/togo.swf', 'iBanner', '100%', '600', '9', $expressInstall, {}, {menu: false, wmode: 'transparent'}, {});
});

/* *
 * 顯示載入信息
 */
function showLoader() {
  jQuery('#pLoader').show();
}

/* *
 * 隱藏載入信息
 */
function hideLoader() {
  jQuery('#pLoader').hide();
}

function ajaxBeforeSend(XMLHttpRequest) {
  jQuery.blockUI({ message: '<div id="load-div"><img src="' + $templateDir + 'images/loader.gif" width="16" height="16" alt="正在處理您的請求..." align="absmiddle" /> 正在處理您的請求...</div>' ,css: {backgroundColor: '#fff', color: '#000',  padding: '10px 0px'}});
  showLoader();
}

function ajaxComplete(XMLHttpRequest, textStatus) {
  hideLoader();
}

function ajaxError(XMLHttpRequest, textStatus, errorThrown) {
  jQuery.unblockUI({
    onUnblock: function() {
      alert('服務器沒有返回數據，可能服務器忙，請重試');
    }
  });
}

function newsletterSubscription(objName) {
	var eMailVal = jQuery.trim(jQuery('input[name="' + objName + '"]').val());
	var msg = '';
	if(eMailVal == '') {
		msg += '請輸入您所要訂閱電子信箱!' + '\n';
	}
	else {
		REstr = /([\w-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([\w-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)/;
		if (!REstr.test(eMailVal)) {
				msg += '您所輸入訂閱電子信箱的格式不正確!' + '\n';
		}
	}	
	if (msg.length > 0) {
		alert(msg);
	}
	else {
		jQuery.ajax({
			type: 'GET',
			url: 'common.php?act=email_list',
			cache: false,
			data: 'job=add&email=' + eMailVal,
			beforeSend: function(XMLHttpRequest) {
				hideLoader();
			},
			complete: ajaxComplete,
			error: function(XMLHttpRequest, textStatus, errorThrown) {
				alert('服務器沒有返回數據，可能服務器忙，請重試');
			},
			success: function (data, textStatus){	
				jQuery('input[name="' + objName + '"]').val('');
				jQuery.modal.close();
				alert(data);
			}
		});
	}		
}

function newsletterCancel(objName) {
	var eMailVal = jQuery.trim(jQuery('input[name="' + objName + '"]').val());
	var msg = '';
	if(eMailVal == '') {
		msg += '請輸入您所要取消訂閱的電子信箱!' + '\n';
	}
	else {
		REstr = /([\w-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([\w-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)/;
		if (!REstr.test(eMailVal)) {
				msg += '您所輸入取消訂閱電子信箱的格式不正確!' + '\n';
		}
	}	
	if (msg.length > 0) {
		alert(msg);
	}
	else {
		jQuery.ajax({
      type: 'GET',
      url: 'common.php?act=email_list',
      cache: false,
      data: 'job=del&email=' + eMailVal,
      beforeSend: function(XMLHttpRequest) {
				hideLoader();
			},
			complete: ajaxComplete,
			error: function(XMLHttpRequest, textStatus, errorThrown) {
				alert('服務器沒有返回數據，可能服務器忙，請重試');
			},
      success: function (data, textStatus){
				jQuery('input[name="' + objName + '"]').val('');
				jQuery.modal.close();
				alert(data);
      }
    });
	}	
}

function initYMDControls(yearId, monthId, dayId) {
  var yearObj = jQuery('select[name="' + yearId + '"]')[0];
  var monthObj = jQuery('select[name="' + monthId + '"]')[0];
  var dayObj = jQuery('select[name="' + dayId + '"]')[0];
  jQuery('select[name="' + yearId + '"], select[name="' + monthId + '"], select[name="' + dayId + '"]').change(function() {
    var noOfDays = [31, (parseInt(yearObj.value) % 4 == 0) ? 29 : 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31][monthObj.selectedIndex];
    dayObj.selectedIndex = Math.min(noOfDays - 1, dayObj.selectedIndex);
    for (var i = dayObj.options.length; i < noOfDays; ++i)
      dayObj.options[i] = new Option(i + 1, i + 1);
    for (var j = dayObj.options.length; j > noOfDays; --j)
      dayObj.remove(j - 1);
  });
}
