/*
	Author: Sergei Tolmachyov
			Fuse8 Online

			Version: 1.2
*/

var ss1 = "string t ";
var	ss2 = "string test test test";

function separ(s1, s2){
	var c = Math.min(s1.length,s2.length);
	var r = 0;
	for (var i =0; i < c; i++)
	{
		if ( s1[i] < s2[i] )
		{
			r =  s1 + '\n' + s2;
			break;
		}
		if ( s1[i] > s2[i] )
		{
			r = s2 + '\n' + s1;
			break;
		}
		//if (i-1 = c) r = 
	}
	
	return r
}
separ(ss1, ss2);




(function($){
	$.fn.separateList = function(options){
		if ($(this).hasClass('sl-changed') == false)
		{
			var defaults = {
				sort: 'false',
				separate: 'true',
				specialClass: 'separate-list',
				listsCount: 2,
				showNumbers: 'false'
			}

			$(this).addClass('sl-changed').each(function(){
				var List = $(this);
				var ListItems = List.find('>li');
				List.options = $.extend( {}, defaults, options || {} );

				if (List.options.sort.toLowerCase() != 'false')
				{
					var mas = [];
					for (var i = 0; i < ListItems.length; i++)
					{
						mas.push( [ $( ListItems.get(i) ).text().toUpperCase() ] );
						mas[i].index = i
					}
					mas.sort();
					if (List.options.sort.toLowerCase() == 'desc') mas.reverse();
	
					var ul = $('<ul></ul>').addClass(List.get(0).className);
					List.before(ul);
					for (var i = 0; i < ListItems.length; i++) ul.append( ListItems[ mas[i].index ] );
					List.remove();
	
					List = ul;
					ListItems = List.find('>li');
					List.options = $.extend( {}, defaults, options || {} )
				}

				if (List.options.showNumbers.toLowerCase() == 'true')
				for (var j = 0; j < ListItems.length; j++)
				{
					var li = ListItems.get(j);
					li.innerHTML = '<span class="sl-number">' + (j + 1) + '. </span>' + li.innerHTML
				}

				if (List.options.separate.toLowerCase() == 'true')
				{
					if (List.options.listsCount > ListItems.length) List.options.listsCount = ListItems.length;

					var countInLI = Math.floor( ListItems.length / List.options.listsCount );
					var addItemsCount = ListItems.length - countInLI * List.options.listsCount,
						addItem = 0,
						numberItem = 0;

					for (var i = 0; i < List.options.listsCount; i++)
					{
						var ul = $('<ul></ul>').addClass(List.get(0).className).addClass(List.options.specialClass + '-' + (i + 1) );
						List.before(ul);

						addItem = (addItemsCount > 0) ? 1 : 0;
						addItemsCount--;

						for (var j = 0; j < countInLI + addItem; j++) ul.append( ListItems.get(j + numberItem) );
						numberItem += countInLI + addItem
					}
					List.remove()
				}
			})
		}
	}
})(jQuery);
