/**
 * memberset.js
 * by Brian Swartzfager
 */

//Variable to hold list of current set members
setmembers= '';

 function toggleJoinSet(id) {
	
	//Get list of set_members
	set_obj= document.getElementById('set_members');
	set_list= set_obj.value;
	set_array= set_list.split(",");
	
	//Get set div
	set_div= document.getElementById('set_column');
	
	//Determine if id is in the list of set_members
	in_list= 'no';
	for (j= 0; j < set_array.length; j++)
		{
			if (set_array[j]== id)
				{
					in_list= 'yes';
					//remove from list
					set_array[j]= '';
				}
		}
		
	if (in_list== 'yes')
		{
			//Rebuild list without that id
			new_set= '';
			for (var k= 0; k < set_array.length; k++)
				{
					 if (set_array[k] != '')
					 	{
							new_set= new_set + set_array[k] + ",";
						}
				}
				
			
			//Change the classes of the member object
			m_id= 'm_' + id;
			jsChangeNodeClass(m_id,'member_out');
			
			//Delete the set object
			s_id= 's_' + id;
			setmember_obj= document.getElementById(s_id);
			set_div.removeChild(setmember_obj);
			
		}
	else
		{
			//Rebuild set and include that id	
			new_set= '';
			for (var k= 0; k < set_array.length; k++)
				{
					 if (set_array[k] != '')
					 	{
							new_set= new_set + set_array[k] + ",";
						}
				}
			//Add new id
			new_set= new_set + id;
			
			//Change the classes of the member object
			m_id= 'm_' + id;
			jsChangeNodeClass(m_id,'member_in');
			
			//Get member object and change its class and traits
			memberobj= document.getElementById(m_id);
			//Create new object
			setmemberobj= new Object();
			//Copy old object to new object
			setmemberobj= memberobj.cloneNode(true);
			s_id= 's_' + id;
			setmemberobj.setAttribute("id",s_id);
			setmemberobj.setAttribute("class","member_joined");
			
			//Add object to set
			set_div.appendChild(setmemberobj);
			
		}
	
	//Write new_set to set_members object
	set_obj.value= new_set;
	
} //end of function

function moveAll(choice) {
	//Get set div
	set_div= document.getElementById('set_column');
	
	if (choice=='members')
		{
			all_obj= document.getElementById('all_members');	
			set_obj= document.getElementById('set_members');
			all_value= all_obj.value;
			all_array= all_value.split(",");
			set_value= set_obj.value;
			set_array= set_value.split(",");
			
			new_set= set_value;
			for (a= 0; a< all_array.length; a++)
				{
					id= all_array[a];
					//Determine if id is in the list of set_members
					in_list= 'no';
					for (j= 0; j < set_array.length; j++)
						{
							if (set_array[j]== id)
								{
									in_list= 'yes';
								}
						}

					if (in_list== 'no')
						{
							//Rebuild set and include that id	
							/*new_set= '';
							for (var b= 0; k < set_array.length; b++)
								{
									if (set_array[b] != '')
										 {
											new_set= new_set + set_array[b] + ",";
										}
								}
							*/
							
							//Add new id
							if (new_set== '')
								{
									new_set= id;
								}
							else
								{
									new_set=  new_set + "," + id;
								}
								
							//Change the classes of the member object
							m_id= 'm_' + id;
							jsChangeNodeClass(m_id,'member_in');
								
							//Get member object and change its class and traits
							memberobj= document.getElementById(m_id);
							//Create new object
							setmemberobj= new Object();
							//Copy old object to new object
							setmemberobj= memberobj.cloneNode(true);
							s_id= 's_' + id;
							setmemberobj.setAttribute("id",s_id);
							setmemberobj.setAttribute("class","member_joined");
								
							//Add object to set
							set_div.appendChild(setmemberobj);
			
							//Write new_set to set_members object
							set_obj.value= new_set;
						
						}
				}				
		}
	else if(choice=='set')
		{
			set_obj= document.getElementById('set_members');
			set_value= set_obj.value;
			set_array= set_value.split(",");
			for (a= 0; a < set_array.length; a++)
				{
					id= set_array[a];
					if (id != '')
						{
							//Change the classes of the member object
							m_id= 'm_' + id;
							jsChangeNodeClass(m_id,'member_out');
							
							//Delete the set object
							s_id= 's_' + id;
							setmember_obj= document.getElementById(s_id);
							set_div.removeChild(setmember_obj);
						}
				}
			//Erase list of set members
			set_obj.value= '';
		}
	
} //end of function

function rewriteList() {
	alert("updateMemberList started");
	set_obj= document.getElementById('set_members');
	set_value= set_obj.value;
	set_array= set_value.split(",");
	alert("for loop about to start");
	for (m= 0; m < set_array.length; m++)
		{
			//Change the classes of the member object
			m_id= 'm_' + set_array[m];
			jsChangeNodeClass(m_id,'member_in');
		}
} //end of function


