// JavaScript Document
function sort_by_value_length(original_array){
	max_length = 0;
	sorted_array = new Array();
	for(i=0;i<original_array.length;i++){ //find the longest sting in the array
		if(max_length < original_array[i].length) max_length=original_array[i].length;
	}
	//now we need to create an array based on the maximum length.
	for(i=max_length;i>0;i--){
		for(j=0;j<original_array.length;j++){
			if(original_array[j].length == i) sorted_array[sorted_array.length] = original_array[j];
		}
	}
	return sorted_array;	
}

function MakePlaceHolder(string,backref1,backref2){
	text_id = original_text.length
	original_text[original_text.length] = backref1;
	return ('placeholder_'+current_search_place_holder+'_original_text_id_'+text_id);
}

function replace_linked_text(string){
	search_regexp = new RegExp('<a [^>]*?>.*?</a>', "gi");
	string = string.replace(search_regexp, MakeHrefPlaceHolder);
	return string;
}

function replace_code_placeholder(string){
	search_regexp = new RegExp('<[^>]*?>', "gi");
	string = string.replace(search_regexp, MakeCodePlaceHolder);
	return string;
}

function MakeHrefPlaceHolder(string){
	href_id = linked_text.length
	linked_text[linked_text.length] = string;
	return ('HrefPlaceholder_id_'+href_id);
}

function MakeCodePlaceHolder(string){
	code_id = code_placeholder.length
	code_placeholder[code_placeholder.length] = string;
	return ('CodePlaceholder_id_'+code_id);
}

function swap_code_placeholder(string,backref1){
	return (code_placeholder[backref1]);
}

function swap_link_placeholder(string,backref1){
	return (linked_text[backref1]);
}