+function X_URL_objToParam( data ){\r
+ var result = [], k, n = -1;\r
+ for( k in data ){\r
+ if( n !== -1 ) result[ ++n ] = '&';\r
+ result[ ++n ] = k;\r
+ result[ ++n ] = '=';\r
+ result[ ++n ] = encodeURIComponent( data[ k ] );\r
+ }\r
+ return result.join( '' );\r
+};\r
+\r
+function X_URL_ParamToObj( str ){\r
+ var parts = str.split( '&' ),\r
+ i = 0,\r
+ l = parts.length,\r
+ obj = {},\r
+ pair, p;\r
+\r
+ if( !str ) return obj;\r
+ \r
+ for( ; i < l; ++i ){\r
+ pair = parts[ i ];\r
+ p = pair.indexOf( '=' );\r
+ if( p === -1 ){\r
+ obj[ decodeURIComponent( pair ) ] = true;\r
+ } else {\r
+ obj[ decodeURIComponent( pair.substr( 0, p ) ) ] = X_String_parse( decodeURIComponent( pair.substr( p + 1 ) ) );\r
+ };\r
+ };\r
+\r
+ return obj; \r
+};\r