/*
	Copyright (c) 2004-2009, The Dojo Foundation All Rights Reserved.
	Available via Academic Free License >= 2.1 OR the modified BSD license.
	see: http://dojotoolkit.org/license for details
*/


if(!dojo._hasResource["dojo.data.util.sorter"]){dojo._hasResource["dojo.data.util.sorter"]=true;dojo.provide("dojo.data.util.sorter");dojo.data.util.sorter.basicComparator=function(a,b){var r=-1;if(a===null){a=undefined;}if(b===null){b=undefined;}if(a==b){r=0;}else{if(a>b||a==null){r=1;}}return r;};dojo.data.util.sorter.createSortFunction=function(_1,_2){var _3=[];function _4(_5,_6,_7,s){return function(_8,_9){var a=s.getValue(_8,_5);var b=s.getValue(_9,_5);return _6*_7(a,b);};};var _a;var _b=_2.comparatorMap;var bc=dojo.data.util.sorter.basicComparator;for(var i=0;i<_1.length;i++){_a=_1[i];var _c=_a.attribute;if(_c){var _d=(_a.descending)?-1:1;var _e=bc;if(_b){if(typeof _c!=="string"&&("toString" in _c)){_c=_c.toString();}_e=_b[_c]||bc;}_3.push(_4(_c,_d,_e,_2));}}return function(_f,_10){var i=0;while(i<_3.length){var ret=_3[i++](_f,_10);if(ret!==0){return ret;}}return 0;};};}