//=============================================================================
//
// Copyright (c) 2007 RuanYu
//
// FileName     :utility.js
//
// Description  :utility
//
// Author       :RuanYu
//
// Date         :2007-10-24
//
//=============================================================================

RuanYu.Utility = {
	
	// allow file's extended 
	
	allow_file_extended : function(path, allowExtValue)
	{
		var result = false;
		
	    var ext = path.substr(path.lastIndexOf('.'),path.length-path.lastIndexOf('.'));
	    
		//default extended
		
		var defaultAllowExt= "jpg,gif,jpeg,png,bmp,psd,sit,tif,tiff,eps,png,ai,qxd,pdf,cdr,zip,rar";
		
		var extValue = ((allowExtValue) ? allowExtValue : defaultAllowExt);
			
		ext = ext.replace(".",""); 
		
		if(extValue.indexOf(',')!=-1)
		{
			var list = extValue.split(',');
			
			for(i=0;i<list.length;i++)
			{
				if(ext.toLowerCase()==list[i])
				{
					result = true;
					break;
				}
			}
		}
		else
		{
			if(ext.toLowerCase()==extValue)
			{
				result = true;
			}
		}
		
		return result;
	},

	numberRound2 : function(value)
	{
	    var text = '' + Math.round(value * 100) / 100;
	    
	    var index = text.indexOf('.')  
	    
	    if(index < 0) 
	        return text + '.00'  
	    
	    var text = text.substring(0, index + 1) +  text.substring(index + 1, index + 3)  
	    
	    if( index + 2 == text.length) 
	        text += '0' ; 
	
	    return  text;  
	},
	
	//=========================================================================
	//
	// check only number | date:2007.07.27
	//
	//========================================================================

	only_number : function(obj)
	{
		// number : ^\d\.
		obj.value=obj.value.replace(/[^\d\.]/g,'');
	},
	
	onlyNumber : this.only_Number,
	
	//========================================================================
	//
	// check only telephone | Update: 2006.7.20
	//
	//========================================================================

	only_telephone : function(obj)
	{
		// telephone : ^\d\. | - 
		obj.value=obj.value.replace(/[^\d\.|-]/g,'');
	},
	
	only_usa_telephone : function(e,obj)
	{
		// -*- restult ###-###-### -*-
	    // onkeyup="RuanYu.Utility.check_USATelephone(event,this);"
	    
		obj.maxLength = 11;
	        
		// telephone : ^\d\. | - 
		obj.value = obj.value.replace(/[^\d\.|-]/g,'');
		
		if(e.keyCode != 8)
		{
		    var temp = "";
		    
		    obj.value = obj.value.replace(/[^\d]/g,'');
		    
		    for(var i=0; i< obj.value.length; i++)
		    {
		        temp += (i == 2 || i == 5) ? obj.value[i] + "-" : obj.value[i];
		    }
		    
		    obj.value = temp;
		}
	},
		
	//=============================================================================
	//
	// RuanYu.Utility.clear_select_items | add_select_item | date: 2007.07.27
	//
	//=============================================================================
	
	Select : {
		clear : function(selectName)
		{
			var select = $(selectName);
			
			var selectItemLength = select.options.length;
				
			// delete items
			
			try
			{   
			    // IE
				while(selectItemLength!=0)
				{  
					selectItemLength = select.options.length;
					
				 	for(var i=0; i<selectItemLength; i++)
				 	{
		             	select.options.remove(i);
					}
					
					selectItemLength = select.options.length;
				}
			}
			catch(e)
			{
				// Firefox
				select.innerHTML = "";
			}
		},
	
		add : function(selectName,text,value)
		{
			var select = $(selectName);
			var option = document.createElement("option");
			
			option.value = value;	
			option.innerHTML = text;
			
			select.appendChild(option);
		},
	
		convert : function(selectName,items)
		{	
		    // clear items
		    
			this.clear(selectName);
				
			// add items
		    
		  	for(var i=0;i<items.length;i++)
			{
				this.add(selectName,items[i].text,items[i].value); 
			}
			
			if(items.lenght == 1)
			    $(selectName).disabled = false;
		}
	},
	
	//=========================================================================
	//
	// Flash | date: 2007.10.24
	//
	//=========================================================================

	Flash : function(container,urlValue,widthValue,heightValue)
	{
    	var outString = '';
    
    	urlValue = RuanYu.hostName + urlValue ;
    
    	outString += "<object classid=\"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000\" codebase=\"http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,19,0\" width=\"" + widthValue + "\" height=\"" + heightValue + "\" title=\"Flash Object\">" ;
    	outString += "<param name=\"movie\" value=\"" + urlValue +"\" />";
    	outString += "<param name=\"quality\" value=\"high\" />";
    	outString += "<embed src=\""+strURL+"\" quality=\"high\" pluginspage=\"http://www.macromedia.com/go/getflashplayer\" type=\"application/x-shockwave-flash\" width=\"" + widthValue + "\" height=\"" + heightValue + "\"></embed>";
    	outString += "</object>";

    	container.innerHTML = outString;
	},
	
	//=========================================================================
	//
	// Flash | date: 2007.10.24
	//
	//=========================================================================
	
	QQ : function(container,value,website)
	{
		var outString = '';
		
		
		if (value == '' || value == '0')
		{
			outString += '<a target="_blank" href="tencent://message/?uin=' ;
			outString += value + '&Site=' + ((website)? website : 'website:www.kanf.cn') ;
			outString += '&Menu=yes" alt="QQ:' + value + '" >' + value + "</a>" ;
		}
		
		container.innerHTML = outString;
	}	
}
RuanYu.Utility.add_select_item = function(selectName,text,value)
{
	var select = document.getElementById(selectName);
	   
	var op = document.createElement("option");
	
	select.name=selectName
	op.value = value;	
	op.innerHTML = text;
	
	select.appendChild(op);
	
}

//gene yang add
RuanYu.Utility.add_select_item_selected = function(selectName,text,value,selected)
{
	var select = document.getElementById(selectName);
	var op = document.createElement("option");
	
	op.value = value;
	if(selected!=null && selected!='')
	{	
	op.selected =true;	
	}
	op.innerHTML = text;
	
	select.appendChild(op);
	
}

RuanYu.Utility.convert_select_items = function(selectName,items)
{	
    // clear items
	RuanYu.Utility.clear_select_items(selectName);
		
	// add items
    
  	for(var i=0;i<items.length;i++)
	{
		RuanYu.Utility.add_select_item(selectName,items[i].text,items[i].value); 
	}
	
	if(items.lenght == 1)
	    $get(selectName).disabled = "disabled";
	else
	    $get(selectName).disabled = "";
}

RuanYu.Utility.checkNumber = function(obj)
{
	//只允许输入数字... 
	obj.value=obj.value.replace(/[^\d\.]/g,'');
}
//去除字符串首尾空格
RuanYu.Utility.trim=function(sourcestr)   {  
  sourcestr=sourcestr.replace(/^\s*/,"");  
  return   sourcestr.replace(/\s*$/,"");  
  }
  
RuanYu.Utility.create_USAState = function(key , className)
{
    var outString = "";
    
    outString += '<select id="' + key + '" class="' + className + '"> ';
    outString += '<option value="AL">AL</option>';
    outString += '<option value="AK">AK</option>';
    outString += '<option value="AZ">AZ</option>';
    outString += '<option value="AR">AR</option>';
    outString += '<option value="CA">CA</option>';
    outString += '<option value="CO">CO</option>';
    outString += '<option value="CT">CT</option>';
    outString += '<option value="DE">DE</option>';
    outString += '<option value="DC">DC</option>';
    outString += '<option value="FL">FL</option>';
    outString += '<option value="GA">GA</option>';
    outString += '<option value="GU">GU</option>';
    outString += '<option value="HI">HI</option>';
    outString += '<option value="ID">ID</option>';
    outString += '<option value="IL">IL</option>';
    outString += '<option value="IN">IN</option>';
    outString += '<option value="IA">IA</option>';
    outString += '<option value="KS">KS</option>';
    outString += '<option value="KY">KY</option>';
    outString += '<option value="LA">LA</option>';
    outString += '<option value="ME">ME</option>';
    outString += '<option value="MD">MD</option>';
    outString += '<option value="MA">MA</option>';
    outString += '<option value="MH">MH</option>';
    outString += '<option value="MI">MI</option>';
    outString += '<option value="MN">MN</option>';
    outString += '<option value="MS">MS</option>';
    outString += '<option value="MO">MO</option>';
    outString += '<option value="MT">MT</option>';
    outString += '<option value="NE">NE</option>';
    outString += '<option value="NV">NV</option>';
    outString += '<option value="NH">NH</option>';
    outString += '<option value="NJ">NJ</option>';
    outString += '<option value="NM">NM</option>';
    outString += '<option value="NY">NY</option>';
    outString += '<option value="NC">NC</option>';
    outString += '<option value="ND">ND</option>';
    outString += '<option value="OH">OH</option>';
    outString += '<option value="OK">OK</option>';
    outString += '<option value="OR">OR</option>';
    outString += '<option value="PA">PA</option>';
    outString += '<option value="PR">PR</option>';
    outString += '<option value="RI">RI</option>';
    outString += '<option value="SC">SC</option>';
    outString += '<option value="SD">SD</option>';
    outString += '<option value="TN">TN</option>';
    outString += '<option value="TX">TX</option>';
    outString += '<option value="UT">UT</option>';
    outString += '<option value="VA">VA</option>';
    outString += '<option value="VI">VI</option>';
    outString += '<option value="VT">VT</option>';
    outString += '<option value="WA">WA</option>';
    outString += '<option value="WV">WV</option>';
    outString += '<option value="WI">WI</option>';
    outString += '<option value="WY">WY</option>';
    outString += '</select>';
    
    return outString;
}


RuanYu.Utility.create_Industry = function(key , className)
{
    var outString = "";
    
    outString += '<select id="' + key + '" class="' + className + '"> ';
    outString += '<option value="" selected="">Pick One...</option>';
    outString += '<option value="Advertising/Marketing/PR">Advertising/Marketing/PR</option>';
    outString += '<option value="Arts/Entertainment/Media/Promotion">Arts/Entertainment/Media/Promotion</option>';
    outString += '<option value="Graphic Design">Graphic Design</option>';
    outString += '<option value="Healthcare">Healthcare</option>';
    outString += '<option value="Non-profit">Non-profit</option>';
    outString += '<option value="Real Estate">Real Estate</option>';
    outString += '<option value="Retail">Retail</option>';
    outString += '<option value="Technology">Technology</option>';
    outString += '<option value="Other">Other</option>';
    outString += '</select>';
    
    return outString;
}

RuanYu.Utility.create_Role = function(key , className)
{
    var outString = "";
    
    outString += '<select id="' + key + '" class="' + className + '"> ';
    outString += '<option value="" selected="">Pick One...</option>';
    outString += '<option value="Business (General)">Business (General)</option>';
    outString += '<option value="Designer">Designer</option>';
    outString += '<option value="Manager/Director">Manager/Director</option>';
    outString += '<option value="Marketer">Marketer</option>';
    outString += '<option value="Owner">Owner</option>';
    outString += '<option value="Promoter">Promoter</option>';
    outString += '<option value="Other">Other</option>';
    outString += '</select>';
    
    return outString;
}
////////
RuanYu.Utility.reCreate_Industry = function(key , className,str_select)
{
   var a=new Array(9);
  a[0]= "Advertising/Marketing/PR";
  a[1]=  "Arts/Entertainment/Media/Promotion";
  a[2]=  "Graphic Design";
  a[3]=  "Healthcare";
  a[4]=  "Non-profit";
  a[5]=  "Real Estate";
  a[6]=  "Retail";
  a[7]=  "Technology";
  a[8]=  "Other";
   
    var outString = "";
    
    outString += '<select id="' + key + '" class="' + className + '"> ';
    outString += '<option value="" selected="">Pick One...</option>';
    for(var i=0;i<9;i++)
    {
      if(a[i]==str_select)
      {
       outString += '<option value="'+a[i]+'" selected="selected">'+a[i]+'</option>';
      }
       else
       {
       outString += '<option value="'+a[i]+'" >'+a[i]+'</option>';
       }
    }
    outString += '</select>';

    
    return outString;
}

RuanYu.Utility.reCreate_Role = function(key , className,str_select)
{
   var a=new Array(7)
        a[0]= "Business (General)";
        a[1]= "Designer";
        a[2]=  "Manager/Director";
        a[3]=  "Marketer";
        a[4]= "Owner";
        a[5]=  "Promoter";
        a[6]= "Other";
   
    var outString = "";
    
   outString += '<select id="' + key + '" class="' + className + '"> ';
   outString += '<option value="">Pick One...</option>';
    for(var i=0;i<7;i++)
    {
      if(a[i]==str_select)
      {
       outString += '<option value="'+a[i]+'" selected="selected">'+a[i]+'</option>';
      }
       else
       {
       outString += '<option value="'+a[i]+'" >'+a[i]+'</option>';
       }
    }
    outString += '</select>';

    
    return outString;
    
    return outString;
}


RuanYu.Utility.reCreate_USAState = function(key , className,str_select)
{
   var deafultOption="";
   var a=new Array(
     "AL",
     "AK",
     "AZ",
     "AR",
     "CA",
     "CO",
     "CT",
     "DE",
     "DC",
     "FL",
     "GA",
     "GU",
     "HI",
     "ID",
     "IL",
     "IN",
     "IA",
     "KS",
     "KY",
     "LA",
     "ME",
     "MD",
     "MA",
     "MH",
     "MI",
     "MN",
     "MS",
     "MO",
     "MT",
     "NE",
     "NV",
     "NH",
     "NJ",
     "NM",
     "NY",
     "NC",
     "ND",
     "OH",
     "OK",
     "OR",
     "PA",
     "PR",
     "RI",
     "SC",
     "SD",
     "TN",
     "TX",
     "UT",
     "VA",
     "VI",
     "VT",
     "WA",
     "WV",
     "WI",
     "WY"
   )
    var outString = "";
    
    outString += '<select id="' + key + '"  name="' + key + '" class="' + className + '"> ';
   if(deafultOption==str_select)
    {
      outString += '<option value="" >--</option>';
      for(var i=0;i<a.length;i++)
        {
          outString += '<option value="'+a[i]+'" >'+a[i]+'</option>';
        }
    }
    else
    {
       for(var i=0;i<a.length;i++)
        {

          if(a[i]==str_select)
          {
           outString += '<option value="'+a[i]+'" selected="selected">'+a[i]+'</option>';
          }
          else
          {
           outString += '<option value="'+a[i]+'" >'+a[i]+'</option>';
          }
       }
    }
    outString += '</select>';
    
    return outString;
}
////////
RuanYu.Utility.check_extended = function(path)
{
    var ext = path.substr(path.lastIndexOf('.'),path.length-path.lastIndexOf('.'));
    
	//这里设置允许的扩展名
	var AllowExt="jpg,gif,jpeg,png,bmp,psd,sit,tif,tiff,eps,png,ai,qxd,pdf,cdr,zip,rar";
	
	var ExtOK=false;
	
	var ArrayExt;
	
	ext = ext.replace(".",""); 
	
	if(AllowExt.indexOf(',')!=-1)
	{
		ArrayExt=AllowExt.split(',');
		for(i=0;i<ArrayExt.length;i++)
		{
			if(ext.toLowerCase()==ArrayExt[i])
			{
				ExtOK=true;
				break;
			}
		}
	}
	else
	{
		ArrayExt = AllowExt;
		if(ext.toLowerCase()==ArrayExt)
		{
			ExtOK=true;
		}
	}
	
	return ExtOK;
}