// JavaScript Document
/**
  * news.js
  * by Gabriel Wang
  */
 
/**
  * 每个js文件都有自己的namespace，命名规则为
  * iWaihui.[app名称].[页面名称]
  *
  */
Ext.namespace('XinWaiHui.news.news_list');


	
function getFilterPara()
	{
		var para = '';
		para = 'fundamental='+document.getElementById("fundamental").checked;
		para += '&express='+document.getElementById("express").checked;
		para += '&indicator='+document.getElementById("indicator").checked;
		para += '&technical='+document.getElementById("technical").checked;
		para += '&special='+document.getElementById("special").checked;
		para += '&market='+document.getElementById("market").checked;
		para += '&prof='+document.getElementById("prof").checked;
		para += '&keywords='+document.getElementById("keywords").value;
		var symbols = '';
		var s = ['EURUSD','USDCHF'  , 'USDJPY' , 'GBPUSD','USDCAD','AUDUSD','EURGBP','EURCHF','EURJPY','GBPJPY','GBPCHF','EURAUD','CHFJPY','XAUUSD','XAGUSD'];
			
		for (var i = 0 ; i < s.length ; i++){
			if (document.getElementById(s[i]).checked){
				if (symbols == ''){
					symbols += s[i]
				}
				else{
					symbols += '|' + s[i]
				}
			}
		}
		para += '&symbols=' + symbols;
		return para
	}

function get_instant_news_cnt()
		{
			
			
			var para = getFilterPara();
			para += '&exp_snatch_time=' + exp_snatch_time;
			$.ajax({
			   type: "GET",
			   url: "/news/instant_news_cnt/?" + para,
			   data: "",
			   success: function(msg){
			   	 var myObject = eval('(' + msg + ')');
			   	 if(myObject['cnt'] == 0)
			   	 {//hide the reminder
			   	 	$("#instant_news_reminder_div").attr('style' , 'display:none');
			   	 	$("#instant_news_reminder_input").html('');
			   	 	return;
			   	 }
			   	 else
			   	 {//show the reminder
				   	 $("#instant_news_reminder_div").removeAttr( 'style' )
					 $("#instant_news_reminder_input").html('发现' + myObject['cnt'] + '条新闻!' );
			   	 }
			   }
			 });
		}
function set_instant_timer()
{
	get_instant_news_cnt();
	setTimeout("set_instant_timer()",10000);
}


// create application
XinWaiHui.news.news_list.app = function() {
	/**
	  * 在此处定义私有变量和私有函数
	  * 此时DOM还没有读全, 所以不能做DOM操作
	  */
	  
    // private variables
 	var s = ['EURUSD','USDCHF'  , 'USDJPY' , 'GBPUSD','USDCAD','AUDUSD','EURGBP','EURCHF','EURJPY','GBPJPY','GBPCHF','EURAUD','CHFJPY','XAUUSD','XAGUSD'];
    // private functions
	
    // public space
    return {
		// 公共变量或者方法,希望在外部通过限定名访问的
		
		
		// 在OnReady中调用的函数
        init: function() {
			// 每个页面都要调用的刷新时间函数
           	refresh();
           	set_instant_timer();
		},
		onSelectAllSymbol:function(){
			for (var i = 0 ; i < s.length ; i++){
				document.getElementById(s[i]).checked = true;
			}
		},
		onUnSelectAllSymbol:function(){
			for (var i = 0 ; i < s.length ; i++){
				document.getElementById(s[i]).checked = false;
			}
		},
		onSelectAllCategoty:function(){
			document.getElementById("fundamental").checked = true;
			document.getElementById("express").checked = true;
			document.getElementById("indicator").checked = true;
			document.getElementById("technical").checked = true;
			document.getElementById("special").checked = true;
			document.getElementById("market").checked = true;
			document.getElementById("prof").checked = true;
			
		},
		onUnSelectAllCategoty:function(){
			document.getElementById("fundamental").checked = false;
			document.getElementById("express").checked = false;
			document.getElementById("indicator").checked = false;
			document.getElementById("technical").checked = false;
			document.getElementById("special").checked = false;
			document.getElementById("market").checked = false;
			document.getElementById("prof").checked = false;
		},
		onFilterClick:function (){
			var para = '';
			para = 'fundamental='+document.getElementById("fundamental").checked;
			para += '&express='+document.getElementById("express").checked;
			para += '&indicator='+document.getElementById("indicator").checked;
			para += '&technical='+document.getElementById("technical").checked;
			para += '&special='+document.getElementById("special").checked;
			para += '&market='+document.getElementById("market").checked;
			para += '&prof='+document.getElementById("prof").checked;
			para += '&keywords='+document.getElementById("keywords").value;
			
			var symbols = '';
			//var s = ['EURUSD','USDCHF'  , 'USDJPY' , 'GBPUSD','USDCAD','AUDUSD','EURGBP','EURCHF','EURJPY','GBPJPY','GBPCHF','EURAUD','CHFJPY','XAUUSD','XAGUSD'];
			
			for (var i = 0 ; i < s.length ; i++){
				if (document.getElementById(s[i]).checked){
					if (symbols == ''){
						symbols += s[i]
					}
					else{
						symbols += '|' + s[i]
					}
				}
			}
			if (symbols == '')
				symbols = 'none';
			para += '&symbols=' + symbols;
			para += '&set_custom=false';
			//alert(para)
			window.location = '/news/news_list/?'+para;
		},
    	
		
		onSetCustomClick:function ()
		{
			
			var para = '';
			para = 'fundamental='+document.getElementById("fundamental").checked;
			para += '&express='+document.getElementById("express").checked;
			para += '&indicator='+document.getElementById("indicator").checked;
			para += '&technical='+document.getElementById("technical").checked;
			para += '&special='+document.getElementById("special").checked;
			para += '&market='+document.getElementById("market").checked;
			para += '&prof='+document.getElementById("prof").checked;
			para += '&keywords='+document.getElementById("keywords").value;
			var symbols = '';
			//var s = ['EURUSD','USDCHF'  , 'USDJPY' , 'GBPUSD','USDCAD','AUDUSD','EURGBP','EURCHF','EURJPY','GBPJPY','GBPCHF','EURAUD','CHFJPY'];
			
			for (var i = 0 ; i < s.length ; i++){
				if (document.getElementById(s[i]).checked){
					if (symbols == ''){
						symbols += s[i]
					}
					else{
						symbols += '|' + s[i]
					}
				}
			}
			para += '&symbols=' + symbols;
			para += '&set_custom=true';
			//alert(para)
			window.location = '/news/news_list/?'+para;
		},
    	
		retrieve_instant_news:function()
		{
			var para = getFilterPara();
			para += '&exp_snatch_time=' + exp_snatch_time;
			
			$.ajax({
			   type: "GET",
			   url: "/news/instant_news/?" + para,
			   data: "",
			   success: function(msg){
			   	 
			   	 var myObject = eval('(' + msg + ')');
			   	 if(myObject['cnt'] == 0)
			   	 {
			   	 	$("#instant_news_reminder_div").attr('stlye' , 'display:none');
			   	 	$("#instant_news_reminder_input").html('' );
			   	 	return;
			   	 }
			   	 else
			   	 {
			   	 	 instant_news_div_num++;
				   	 $("#news_items").prepend( '<div id="instant_news_' + instant_news_div_num + '">' + myObject['news_list'] + '</div>');
					 //blinklink(100 , 10 , 'instant_news_' + instant_news_div_num );
					 exp_snatch_time=myObject['exp_snatch_time'];
					 
					 while ($(".news_item").length > max_news_per_page)
					 {
					 	$(".news_item:last").remove();
					 }
					 $("#instant_news_reminder_div").attr('style' , 'display:none');
			   	 	 $("#instant_news_reminder_input").html('' );
			   	 }
			   }
			 });
		},
		
		get_instant_news_cnt:get_instant_news_cnt
		
		
		
		
    };
}(); // end of app
 
// end of file